Другие языки программирования и технологии

Составьте программу, имитирующую арифметический калькулятор.

Составьте программу, имитирующую арифметический калькулятор. Обеспечьте ввод с клавиатуры значения двух чисел и знака операции( + ,-* , /), а так же вывод сообщения об ошибке ввода.
Igor Varaksin
Igor Varaksin
103
всегото??? ?

Давай я лучше сделаю новый движок на БСОД

ЫЫ?
Абелардо Жунинье
Абелардо Жунинье
29 396
Лучший ответ
Program calculator;
var n1,n2,x: real;
s: word;
begin
write("Введите число №1="); readln(n1);
write("Введите число №2="); readln(n2);
repeat
write("Выберите операцию (+, -*, /): "); readln(s);
until (s:='+') or (s:='-') or (s:='*') or (s:='/');
if s='+' then
begin
x:=n1+n2;
end;
if s='-' then
begin
x:=n1-n2;
end;
if s='*' then
begin
x:=n1*n2
else
x:=n1/n2;
end;

den
EE
Estek Estek
1 689
на Visual Basic писал, кнопки эти рисовал.... а так как можно задать

INPUT "ВВЕДИ СЛАГАЕМЫЕ А, В" , A,B
C=A+B
PRINT C

И ТАК ДАЛЕЕ
Program calculator;
Uses crt;
Var A,B,Rez:real;
Znak,key:Char;
i:byte;
{---------------------------------------}
Function Fakt (C:Real):longint;
Var F,I:longint;
begin
F:=1;
For I:=1 to trunc(C) do F:=F*I;
Fakt:=F;
end;
{---------------------------------------}
Function Ostatok (D:Real):boolean;
Var I:Integer;
E:Boolean;
begin
Ostatok:=False;
For I:=1 to 2 do
begin
D:=D*10;
If (round(D) mod 10) <> 0
then Ostatok:=True;
end;
end;
{---------------------------------------}

Begin
ClrScr;
textmode(font8x8+c80);
textcolor(blue*10);
WriteLn('|-----------------------------------------------|----------------------------|');
Writeln('|------------Calculator v1.00 -----------------| "+" Slogit |');
Writeln('|-----------------------------------------------| "-" Vichest |');
Writeln('| | "*" Umnogit |');
Writeln('| | "/" Razdelit |');
Writeln('| | "!" Factorial |');
Writeln('| |----------------------------|');
Writeln('| | Enter - Vvod / Resultat |');
Writeln('| | Backspace - Udalit sleva |');
Writeln('| | Delete - Udalit sprava |');
writeln('|-----------------------------------------------|----------------------------|');
Textcolor(red);
window(3,4,45,14);
writeln;
writeln('Copyright (c) 2005 by " VS Corporation "');
Writeln;
WriteLn('Calculator made by " VS Corporation "');
window(1,15,80,50);
repeat
ClrScr;
textcolor(white);
Write('Vvedite znak operacii : ');
znak:=readkey;
writeln(znak);
If znak=#27 then break;
If (Znak<>'+') and (Znak<>'*') then
begin
textcolor(white);
Write('Vvedite pervoe chislo : ');
textcolor(yellow);
ReadLn(A);
If (Znak='-') or (Znak='/') or (Znak='^')
then
begin
textcolor(white);
Write('Vvedite vtoroe chislo : ');
textcolor(yellow);
ReadLn(B);
end;
Case Znak of
'!':Rez:=Fakt(A);
's':Rez:=sqrt(A);
'-':Rez:=A-B;
'/':Rez:=A/B;
'^':if (A>0) then Rez:=exp(B*ln(A)) else writeln('????');
End;
end
Else
begin
i:=1;
if znak='+' then rez:=0 else rez:=1;
repeat
write('Vvedite ',i,'-e chislo :');
readln(A);
if znak='+' then rez:=rez+a
else if a<>0 then rez:=rez*a;
i:=i+1;
until a=0;
end;
Textcolor(white);
Write('Resultat vichisleniya raven: ');
textcolor(magenta);
If Ostatok (Rez) then
WriteLn(rez:0:2)
else
WriteLn(rez:0:0);
readkey;
until false;
End.
{**************************************************}