记录编号 |
18748 |
评测结果 |
AAAAW |
题目名称 |
[NOIP 2000PJ]计算器的改良 |
最终得分 |
80 |
用户昵称 |
1102 |
是否通过 |
未通过 |
代码语言 |
Pascal |
运行时间 |
0.001 s |
提交时间 |
2010-09-19 18:39:13 |
内存使用 |
0.11 MiB |
显示代码纯文本
program xxxx;
var
y,s,st,str:string;
kx,n,kc,k,z:integer;
i,j:longint;
code:integer;
t:real;
begin
assign(input,'computer.in');
reset(input);
readln(s);
close(input);
assign(output,'computer.out');
rewrite(output);
while s<>'' do
begin
for i:=1 to length(s) do
if s[i] in ['a'..'z'] then
y:=s[i];
j:=1;
kx:=0;
kc:=0;
code:=0;
for i:=1 to pos('=',s) do
begin
if ((s[i]='+') or (s[i]='-') or (s[i]='=')) and(i<>1) then
begin
str:=copy(s,j,i-j);
val(str,k,code);
if code=0 then kc:=kc-k;
if code<>0 then
begin
delete(str,code,1);
if str='' then
k:=1
else
val(str,k,code);
if code<>0 then
if str[1]='+' then
k:=1
else
if str[1]='-'then k:=-1;
kx:=kx+k;
end;
j:=i;
end;
end;
code:=0;
j:=pos('=',s)+1;
for i:=pos('=',s)+1 to length(s) do
begin
if ((s[i]='+') or (s[i]='-') and(s[i-1]<>'=')) or (i=length(s)) then
begin
if i<> length(s) then
str:=copy(s,j,i-j)
else
str:=copy(s,j,i-j+1);
val(str,k,code);
if code=0 then kc:=kc+k;
if code<>0 then
begin
delete(str,code,1);
if str='' then
k:=1
else
val(str,k,code);
if code<>0 then
if str[1]='+' then
k:=1
else
if str[1]='-'then
k:=-1;
kx:=kx-k;
end;
j:=i;
end;
end;
writeln(y,'=',kc/kx:0:3);
exit;
end;
close(output);
end.