Proc11. Описать процедуру Minmax($$X$$, $$Y$$), записывающую в переменную $$X$$ минимальное из значений $$X$$ и $$Y$$, а в переменную $$Y$$ — максимальное из этих значений ($$X$$ и $$Y$$ — вещественные параметры, являющиеся одновременно входными и выходными). Используя четыре вызова этой процедуры, найти минимальное и максимальное из данных чисел $$A$$, $$B$$, $$C$$, $$D$$.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#include <stdio.h> void minmax(float *x, float *y){ if (*x>*y){ *x+=*y; *y=*x-*y; *x-=*y; } } int main(void) { float a,b,c,d; printf("A:"); scanf("%f", &a); printf("B:"); scanf("%f", &b); printf("C:"); scanf("%f", &c); printf("D:"); scanf("%f", &d); minmax(&a,&b); minmax(&c,&d); minmax(&a,&c); minmax(&b,&d); printf("min:%f; max:%f\n",a,d); return 0; } |
Другие задачи из раздела Proc можно посмотреть здесь.
Комментарии: