Обнуление переменных (неправильная работа приложения) - C (СИ)
Формулировка задачи:
Добрый день, подскажите, почему такое может получаться (компилятор VS2013 pro). Данное приложение зацикливается само в себя и при каждом входе в цикл обнуляет переменные на введенные перед циклом
При этом приложение не выходит из цикла. Пример выводимых данных
Листинг программы
- #include <stdio.h>
- main()
- {
- int fahr, celsium;
- int lower, upper, step;
- lower = 0;
- upper = 300;
- step = 20;
- fahr = lower;
- while (fahr <= upper) {
- celsium = 5 * (fahr-32) / 9;
- printf("%d\t%d\n", fahr, celsium);
- fahr = fahr + step;
- }
- }
Решение задачи: «Обнуление переменных (неправильная работа приложения)»
textual
Листинг программы
- #include <stdio.h>
- main()
- {
- int fahr, celsium;
- int lower, upper, step;
- lower = 0;
- upper = 300;
- step = 20;
- fahr = lower;
- while (fahr <= upper) {
- celsium = 5 * (fahr-32) / 9;
- printf("%d\t%d\n", fahr, celsium);
- fahr = fahr + step;
- }
- }
- Output:
- 0 -17
- 20 -6
- 40 4
- 60 15
- 80 26
- 100 37
- 120 48
- 140 60
- 160 71
- 180 82
- 200 93
- 220 104
- 240 115
- 260 126
- 280 137
- 300 148
Объяснение кода листинга программы
В данном коде на языке C выполняется преобразование температуры из градусов Фаренгейта в градусы Цельсия. Список действий:
- Объявляются переменные:
- fahr - переменная для хранения температуры в градусах Фаренгейта;
- celsium - переменная для хранения температуры в градусах Цельсия;
- lower - переменная для хранения нижней границы диапазона температур в градусах Фаренгейта;
- upper - переменная для хранения верхней границы диапазона температур в градусах Фаренгейта;
- step - переменная для хранения шага увеличения температуры в градусах Фаренгейта.
- Присваиваются значения переменным:
- lower = 0;
- upper = 300;
- step = 20.
- Устанавливается начальное значение переменной fahr равное значению переменной lower.
- Запускается цикл while, который выполняется до тех пор, пока значение переменной fahr не станет больше или равным значению переменной upper.
- Выполняется преобразование температуры из градусов Фаренгейта в градусы Цельсия по формуле: celsium = (5 * (fahr-32) / 9).
- Выводится на экран текущее значение переменной fahr и соответствующее ему значение переменной celsium.
- Увеличивается значение переменной fahr на значение переменной step.
- По завершении цикла while выводится сообщение об окончании вывода значений.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д