Program CALCULADORA; uses crt; var OPCAO: char; X, A, B: real; PROCEDURE ENTRADA; begin gotoxy(5,6); write('Entre com um valor para A: '); readln(A); gotoxy(5,7); write('Entre com um valor para B: '); readln(B); end; function CALCULO (R, T: REAL; OPERADOR: char):real; begin Case OPERADOR of '+' : CALCULO :=R+T; '-' : CALCULO :=R-T; '*' : CALCULO :=R*T; '/' : CALCULO :=R/T; END; end; Procedure SAIDA; VAR TECLA: char; begin gotoxy(5,10); write('O resultado equivale a ', X:5:2); gotoxy(25,24); writeln('Tecle algo para voltar ao menu'); TECLA:= readkey; end; procedure ROT_ADICAO; begin clrscr; gotoxy(32, 1); write('Rotina de Adicao'); ENTRADA; x:= Calculo(A, B, '+'); SAIDA; end; procedure ROT_SUBTRACAO; begin clrscr; gotoxy(30, 1); write('Rotina de Subtração'); ENTRADA; x:= Calculo(A, B, '-'); SAIDA; end; procedure ROT_MULTIPLICACAO; begin clrscr; gotoxy(28, 1); write('Rotina de Subtração'); ENTRADA; x:= Calculo(A, B, '*'); SAIDA; end; procedure ROT_DIVISAO; begin clrscr; gotoxy(32, 1); write('Rotina de Subtração'); ENTRADA; x:= Calculo(A, B, '/'); SAIDA; end; { P R I N C I P A L } BEGIN OPCAO:='0'; while (OPCAO '5') do begin clrscr; gotoxy(33, 1); write('Menu principal'); gotoxy(28, 6); write('1.....................Soma'); gotoxy(28, 8); write('2............Subtracao'); gotoxy(28, 10); write('3......Multiplicacao'); gotoxy(28, 12); write('4................Divisao'); gotoxy(28, 14); write('5..Fim do programa'); gotoxy(28, 18); write('Escolha uma opcao ..........: '); readln(OPCAO); IF (OPCAO '5') THEN case OPCAO OF '1': ROT_ADICAO; '2': ROT_SUBTRACAO; '3': ROT_MULTIPLICACAO; '4': ROT_DIVISAO; eLSE gotoxy(27, 25); writeln('Opcao invalida - tecle algo'); OPCAO := readkey; end; end; END.
Este artigo foi útil ?
SimNão
Last modified: 13 de novembro de 2007