задача 7 урок 18
Primary tabs
На вход вашей программы подается строка вида:
например:1 + 3или
2 - 12Напишите программу, которая разбирает вычисляет результат этого приложения (сделайте поддержку операций сложения и вычитания).
program task_7_lesson_18; // разбиваю на 3 строки
procedure strok(s: string; var chislo1, chislo2, znak: string);
var i: integer;
begin
for i := 1 to length(s) do
begin
if ((s[i] >= '0') and (s[i] <= '9')) then
chislo2 := chislo2 + s[i]
else if (s[i] <> ' ') then
begin
znak := s[i];
chislo1 := chislo2;
chislo2 := '';
end;
end;
end;
function operat(s1, s2, znak: string) : integer; // выполняю операцию
var
n, n1, code: integer;
begin
val(s1, n, code);
val(s2, n1, code);
if (znak = '+') then
result := n + n1
else if (znak = '-') then
result := n - n1
else
write('ERROR');
end;
var
s, chislo1, chislo2: string;
znak: string;
otvet: integer;
begin
chislo1 := '';
chislo2 := '';
znak := '';
readln(s);
strok(s, chislo1, chislo2, znak);
otvet := operat(chislo1, chislo2, znak);
writeln(otvet);
readln
end.Консоль
567 + 45 612
- Log in to post comments
- 720 reads