Задача 9 Урок 18
Primary tabs
На вход вашей программы подается строка вида:
5 + 6 -34 + 56 - 7 + 2("сколько угодно" чисел с операциями суммы и разности в любом порядке). Вычислите результат (пробелов между символом операции и числом может и не быть)
program u18z9;
var
a,code,i,t,itog: integer;
s,b,n: string;
begin
writeln('Vvedite stroku');
readln(s);
for i:=1 to length(s) do
begin
val(s[i], a, code);
if (s[i]<>' ') then
begin
if (code=0) then //цифры записываем в "b"
b:=b+s[i]
else
begin
n:=s[i]; //символы записываем в "n"
if t=0 then
begin
val(b,a);
t:=a;
end;
b:=' ';
end;
val((s[i+1]), a, code);
if (a>=0) and (code=0) and (n<>' ') then
else
begin
val(b,a);
if (n='+') then
t:=t+a;
if (n='-') then
t:=t-a;
end;
end;
end;
write(t);
readln();
end. - Log in to post comments
- 561 reads
vedro-compota
Sun, 02/12/2023 - 13:21
Permalink
засчитано
засчитано
_____________
матфак вгу и остальная классика =)