Pagini recente » Cod sursa (job #2415017) | Cod sursa (job #1941803) | Cod sursa (job #607674) | Cod sursa (job #327681) | Cod sursa (job #174393)
Cod sursa(job #174393)
program evaluare;
var f,g:text;
c:char;
function termen:longint; forward;
function factor:longint; forward;
function eval:longint;
var r:longint;
begin
r:=termen;
while (c='+')or(c='-') do
if c='+' then begin
read(f,c);
r:=r+termen;
end
else begin
read(f,c);
r:=r-termen;
end;
eval:=r;
end;
function termen:longint;
var r:longint;
begin
r:=factor;
while (c='*') or (c='/') do
if c='*' then begin
read(f,c);
r:=r*factor;
end
else begin
read(f,c);
r:=r div factor;
end;
termen:=r;
end;
function factor:longint;
var r:longint;
begin
r:=0;
if (c='(') then begin
read(f,c);
r:=eval;
read(f,c);
end
else while (c>='0') and(c<='9') do
begin
r:=r*10+ord(c)-ord('0');
read(f,c);
end;
factor:=r;
end;
begin
assign(f,'evaluare.in'); reset(f);
assign(g,'evaluare.out'); rewrite(g);
read(f,c);
writeln(g,eval);
close(g);
close(f);
end.