Задача. Даны действительные числа [latex]x[/latex], [latex]y[/latex]. Вычислить [latex]z[/latex]:
[latex]z=\begin{cases} x-y & \text{ if } x > y \\ y-x+1 & \text{ if } x \leq y \end{cases}[/latex]x | y | z | Комментарий |
18 | 85 | 68 | Тест пройден |
5 | 4 | 1 | Тест пройден |
-16 | 83 | 100 | Тест пройден |
16 | 16 | 1 | Тест пройден |
Код программы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <stdio.h> int main(void) { double x,y,z; printf("Введите значение х: \n" ); scanf("%lf", &x); printf("Введите значение y: \n" ); scanf("%lf", &y); if (x>y) { z=x-y; } else { z=y-x+1; } printf("z=%6.2lf \n" , z); return 0; } |
Задача выполняется в три этапа:
1.Ввод значений [latex]x[/latex] и [latex]y[/latex]
2. Сравнение значений [latex]x[/latex] и [latex]y[/latex] для выбора решения задачи согласно с условием.
3.Вывод значения [latex]z[/latex].
Для выполнения программы и проверки тестов вы можете воспользоваться этой ссылкой
Есть проблема с формулой [latex]$$z=\begin{cases} x-y & \text{ if } x > y \\ y-x+1 & \text{ if } x \leq y \end{cases}$$[/latex].
Как минимум значки $$ (два доллара) в конце и начале формулы лишние — эти значки в latex обозначают что внутри будет формула, которую нужно расположить в одной строке. В данном же случае они не нужны их «заменяет» теги [latex] .. [/latex].
Проблема решена, спасибо.
Неверно поставлены отступы в программе. Посмотрите здесь как это делается.
printf("z=%6.2lf \n" , z); логично записать после оператора if, иначе он дублируется.
Что за загадочный пункт «2.Проверка по условию.» Проверяем условие (какое?), если оно выполнено, то что делаем? иначе что?
Да и пункт «1.Ввод.» и «3.Вывод.» чего? каких данных?
Исправил.
Зачтено. 8 баллов.