If16. Даны три переменные вещественного типа: $$A$$, $$B$$, $$C$$. Если их значения упорядочены по возрастанию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное. Вывести новые значения переменных $$A$$, $$B$$, $$C$$.
Решение:
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 |
#include <stdio.h> int main(void) { float a, b, c; printf("A:"); scanf ("%f", &a); printf("B:"); scanf ("%f", &b); printf("C:"); scanf ("%f", &c); if ((a<=b) & (b<=c)){ a=a*2; b=b*2; c=c*2; } else { a=a*(-1); b=b*(-1); c=c*(-1); } printf("A: %f\nB: %f\nC: %f\n",a,b,c); return 0; } |
Другие задачи из раздела If можно посмотреть здесь.
Прошу меня извинить, условие неверно (строки 7, 8).
Если B окажется больше либо равным C, тогда значения переменных A B C выведутся неизменными.
угу.. и решение очень будет похоже на то что в шапке… а извинятся не стоит… люди ошибаются… с этим надо смириться.)
Ну и решение очень похоже на то, что в шапке.. только вместо and в условии использовано два if.
Подскажите, почему в решении на странице используются побитовые операторы в условиях? Как это работает?