Вопрос C++ Как поменять местами элементы?

Регистрация
20 Апр 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
Даны 3 числа. Поменять местами большее и меньшее из этих чисел

Что-то я знатно торможу, думаю всю на самом деле куда проще))
Заранее спасибо

#include
#include
int main(int argc, char *argv[])
{ float x,y1,y2,t,l,b,a,k,min,max;
printf("Input x,y1,y2"); scanf("%f%f%f",&x,&y1,&y2);
min=x; t=1;
max=x; l=1;
if (y1<min) {min=y1; t=2;}
if (y2max) {max=y1; l=2;}
if (y2>max) {max=y2; l=3;}

if (t==1) a=x;
if (t==2) a=y1;
if (t==3) a=y2;

if (l==1) b=x;
if (l==2) b=y1;
if (l==3) b=y2;

k=b;
b=a;
a=k;

printf("b=%8.0f a=%8.0f ",a,b);
system("PAUSE");
return EXIT_SUCCESS;
}
 
А если больших два 1 2 2 ? При равенстве то все проще 2 2 2 А так запоминать надо или позицию переменной в массиве или если у тебя отдельные переменные то указатель на мин и макс элемент, потом менять у них значение.
 
Назад
Сверху