Упорядочены ли по возрастанию три вещественные переменные? - C (СИ)
Формулировка задачи:
Надо решить задачу. У меня при решении выводит те же числа что и вводил не могу понять где напортачил.
Даны три переменные вещественного типа: A, B, C. Если их значения упорядочены по возрастанию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное. Вывести новые значения переменных A, B, C.
#include <conio.h> #include <stdio.h> #include <math.h> #include <stdlib.h> main() { double a, b, c ; printf("BBeDite 3 checla a b c\n") ; scanf("%d%d%d", &a, &b, &c); if (((a>b)&&(b>c))) {a=(a*2); b=(b*2); c=(c*2);} else {a=(-a); b=(-b); c=(-c);} printf("a= %d\n", a); printf("b= %d\n", b); printf("c= %d\n", c) ; getch() ; }
Решение задачи: «Упорядочены ли по возрастанию три вещественные переменные?»
textual
Листинг программы
if(b - a >= 0 && c - b >= 0) /* не строго упорядочены */ if(b - a > 0 && c - b > 0) /* строго упорядочены */
Объяснение кода листинга программы
- В условии первого блока if проверяется, что разница между переменной b и a больше или равна нулю, а разница между переменной c и b больше или равна нулю. Это означает, что переменные могут быть упорядочены, но не обязательно строго.
- Во втором блоке if проверяется, что разница между переменной b и a больше нуля, а разница между переменной c и b также больше нуля. Это означает, что переменные строго упорядочены.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д