PASCAL ABC. Найти значение любого выражения из двух слагаемых!!! т.е. просто чтоб...

0 голосов

PASCAL ABC. Найти значение любого выражения из двух слагаемых!!! т.е. просто чтоб посчитало, например: 2+2=4, 9/3=3, 7*7=49, 15-5=10


спросил от Отличник (5.7k баллов) в категории Информатика
оставил комментарий от Начинающий (328 баллов)

Программу написать?

оставил комментарий от Начинающий (328 баллов)

Или просто на языке паскаль

2 Ответы
0 голосов
ответил от БОГ (194k баллов)
 
Лучший ответ

Var s,s1:string; a,b,code,i:integer; z:char;
begin
writeln('Введите выражение:');
readln(s);
s1:=''; i:=1;
while not (s[i] in ['+','-','*','/']) do
 begin
 s1:=s1+s[i]; i:=i+1;
 end;
val(s1,a,code);
z:=s[i];
s1:=''; i:=i+1;
while s[i] <> '=' do
 begin
 s1:=s1+s[i]; i:=i+1;
 end;
val(s1,b,code);
 case z of
 '+' : writeln(s,a+b);
 '-' : writeln(s,a-b);
 '*' : writeln(s,a*b);
 '/' : writeln(s,a/b);
 end;
end.

Пример:
Введите выражение:
15-5=
15-5=10

0 голосов
ответил от Начинающий (328 баллов)

Var
x,y,v:real;
b:string;
begin
writeln('Vvedite znak virajeniya (+, -, *, /)');
readln(b);
writeln('Vvedite pervoe chislo');
readln(x);
writeln('Vvedite vtoroe chislo');
readln(y);
if b = '+' then v:=x+y;
if b = '-' then v:=x-y;
if b = '*' then v:=x*y;
if b = '/' then v:=x/y;
writeln(x, ' ', b, ' ', y, ' = ', v);
end.

оставил комментарий от Отличник (5.7k баллов)

мне нужно чтоб был ввод примера и его значение

оставил комментарий от Начинающий (328 баллов)

Хорошо, сейчас переделаю

оставил комментарий от Отличник (5.7k баллов)

буду благодарен, большая программа должна получиться

оставил комментарий от Начинающий (328 баллов)

Изменил решение, получился простенький калькулятор :D

...