Другие языки программирования и технологии

Решение задачи на языке С (процедуры)

Описать процедуру Minmax(X, Y), записывающую в переменную X минимальное из значений X и Y, а в переменную Y — максимальное из этих значений (X и Y — вещественные параметры, являющиеся одновре­менно входными и выходными). Используя четыре вызова этой процеду­ры, найти минимальное и максимальное из данных чисел A, B, C, D.
void MinMax( double & X, double & Y) {
  if (Y < X) { double t = X; X = Y; Y = t; }
  }

//...
MinMax(A,B);
MinMax(C,D);
MinMax(A,C); // в А - минимальное из чисел
MinMax(B,D); // в D - максимальное из чисел
Майсал Жоробаев
Майсал Жоробаев
52 848
Лучший ответ
А нафига Minmax если в файле math.h есть макросы?
и min и max им пофигу какого типа параметры
#define min(a < b)?( a ): ( b)
что за ересь main всегда должна возвращать значение типа int читайте стандарт C99
Иван Федюк
Иван Федюк
11 081
void Minmax(int &x, int &y){
if(x > y){
x += y;
y = x - y;
x -= y;
}
}
Adrianitto Unicorn
Adrianitto Unicorn
1 039
void Main()
{
int Max, Min;
int A, B, C, D;

Max = Min = A;
MinMax(A, B);
MinMax(Max, C);
MinMax(Max, D);
}

void MinMax(int X, int Y)
{
if (X < Y )
{
Max = Y;
if ( X < Min )
Min = X;
}
if (Y < X )
{
Max = X;
if ( Y < Min )
Min = Y;
}
}

Получилось даже в 3
Arseniy Sobolev
Arseniy Sobolev
1 025
void Main()
{
int Max, Min;
int A, B, C, D;

Max = Min = A;
MinMax(A, B);
MinMax(Max, C);
MinMax(Max, D);
}

void MinMax(int X, int Y)
{
if (X < Y )
{
Max = Y;
if ( X < Min )
Min = X;
}
if (Y < X )
{
Max = X;
if ( Y < Min )
Min = Y;