Строка содержит арифметическое выражение из двух чисел - выполнить его - Pascal ABC
Формулировка задачи:
Строка содержит арифмитическое выражение из двух чисел, между которыми стоит арифмитический знак(+ или -). Написать программу, которая позволяет ввести строку, выполнить данное арифмитическое действие и вывести результат.
т.е. ввожу "15+2", мне выводит "17"
С числами до 9 я справился, а вот если уже двузначные, то тут проблемы.
Решение задачи: «Строка содержит арифметическое выражение из двух чисел - выполнить его»
textual
Листинг программы
procedure sum(s1, s2: string; var r2: string); var zap, cod, t1, t2, i: integer; r, r1: string; begin zap := 0; r2 := ''; if length(s2) < length(s1) then begin for i := 1 to length(s1) - length(s2) do s2 := '0' + s2; end; for i := length(s1) downto 1 do begin val(s1[i], t1, cod); val(s2[i], t2, cod); t1 := t1 + t2 + zap; str(t1, r); if length(r) < 2 then begin r2 := r + r2; zap := 0; end else begin r2 := r[2] + r2; r1 := r[1]; val(r1, zap, cod); end; end; if zap <> 0 then r2 := zap + r2; end;
Объяснение кода листинга программы
- Создается процедура sum с тремя параметрами: s1, s2 и r2 типа string, и одной переменной типа integer, называемой zap.
- Переменная zap инициализируется значением 0.
- Переменная r2 инициализируется пустой строкой.
- Если длина строки s2 меньше длины строки s1, то к каждому символу строки s2 добавляется символ '0'.
- Для каждого символа строки s1, начиная с последнего (с индексом len(s1)-1), выполняется следующая последовательность действий:
- Вычисляется значение переменной t1, равное сумме значений переменных t1 и t2.
- Вычисляется значение переменной t2, равное сумме значений переменных t1 и t2.
- Значение переменной t1 присваивается переменной r.
- Значение переменной t2 присваивается переменной r.
- Если длина строки r меньше или равна 2, то к строке r добавляется строка r2.
- Значение переменной zap присваивается сумме значений переменных t1 и t2.
- Если значение переменной zap не равно 0, то к строке r добавляется строка zap.
- Процедура заканчивается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д