Дана последовательность литер, имеющих вид: d1+d2-d3*d4 (di, i=1,4-цифры). Вычислить значения переменных. - Turbo Pascal
Формулировка задачи:
Здравствуйте! Я вас прошу помочь мне с одной программой в турбо паскаль.:
Дана последовательность литер, имеющих вид: d1+d2-d3*d4 (di, i=1,4-цифры). Вычислить значения переменных.
З.Ы. Зарание огромное спасибо за оказанную помощь
Решение задачи: «Дана последовательность литер, имеющих вид: d1+d2-d3*d4 (di, i=1,4-цифры). Вычислить значения переменных.»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <locale.h> void main() { setlocale(LC_CTYPE,"Russian"); char y; int t,x; {t=0;x=1;} printf("Введите последовательность литер вида d1+-d2+-..+-dn., где dn-цифра.\n"); do {scanf("%c",&y); if ((y>='0')&&(y<='9')) t=t+x*(y-'0'); else switch (y) {case '+':x=1;break; case '-':x=-1;break;}} while (y!='.'); printf("Алгебраическая сумма равна %d",t); getch(); }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы.
- Устанавливается локаль для кодировки символов.
- Объявляются переменные: t (целое), x (целое), y (символ).
- Инициализируются переменные: t=0, x=1.
- Выводится сообщение для ввода последовательности литер.
- Запускается цикл do-while, который будет выполняться до тех пор, пока введенный символ не будет равен '.'.
- Внутри цикла считывается символ с помощью функции scanf, и он сохраняется в переменной y.
- Проверяется, является ли введенный символ цифрой от 0 до 9. Если да, то к переменной t прибавляется значение переменной x, умноженное на разницу между введенной цифрой и '0'.
- Если введенный символ не является цифрой, то происходит переход по соответствующему case-условию: '+' - значение переменной x устанавливается в 1, '-' - значение переменной x устанавливается в -1.
- После выполнения case-переходов, цикл do-while завершается.
- Выводится сообщение с результатом вычислений.
- С помощью функции getch() ожидается нажатие клавиши для выхода из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д