uses crt,barvy;
var x,y,a,c,pomoc,des,funkce:integer;
znak:char;
hodnota,b:single;
vypis:array[0..1] of string;
begin
color(15,0);
cls;
color(15,1);
for x:=2 to 13 do
for y:=2 to 12 do
begin
gotoxy(x,y);
write(' ');
end;
color(15,0);
gotoxy(3,3);
for x:=1 to 10 do
write(' ');
start;
funkce:=0;
repeat
znak:=readkey;
if znak in ['0','1','2','3','4','5','6','7','8','9','+','-','*','/','=',',','.',chr(13)] then
begin
color(4,2);
napis(znak);
delay(100);
color(15,4);
napis(znak);
end;
case znak of
'0','1','2','3','4','5','6','7','8','9':vypis[0]:=vypis[0]+znak ;
'/':funkce:=1;
'*':funkce:=2;
'-':funkce:=3;
'+':funkce:=4;
'=':funkce:=1;
'C':
begin
vypis[0]:='';
vypis[1]:='';
hodnota:=0;
funkce:=0;
des:=0;
end;
end;
val(vypis[0],pomoc,des);
a:=0;
repeat
for c:=0 to a do
begin
b:=des/10;
end;
inc(a);
until b<1;
hodnota:=pomoc+b;
vypis[1]:=vypis[0];
if vypis[1]='' then vypis[1]:='0';
gotoxy(10-length(vypis[1]),5);
until znak=chr(27);
end.