Составьте блок-схему алгоритма и программу расположения четырех чисел в порядке возрастания.( только с использованием if / then/else) - C#
Формулировка задачи:
Составьте блок-схему алгоритма и программу расположения четырех чисел в порядке возрастания.( только с использованием if / then/else).
Решение задачи: «Составьте блок-схему алгоритма и программу расположения четырех чисел в порядке возрастания.( только с использованием if / then/else)»
textual
Листинг программы
private static void Sort4(int[] s)
{
Debug.Assert(s.Length == 4);
Sort4(ref s[0], ref s[1], ref s[2], ref s[3]);
}
private static void Sort4(ref int a, ref int b, ref int c, ref int d)
{
Med3(ref a, ref b, ref c);
if (CompareSwap(ref c, ref d) && CompareSwap(ref b, ref c))
CompareSwap(ref a, ref b);
}
private static void Med3(ref int a, ref int b, ref int c)
{
CompareSwap(ref a, ref b);
if(CompareSwap(ref b, ref c))
CompareSwap(ref a, ref b);
}
private static void Swap(ref int a, ref int b)
{
int t = a; a = b; b = t;
}
private static bool CompareSwap(ref int a, ref int b)
{
if (a > b)
{
Swap(ref a, ref b);
return true;
}
return false;
}