uses
crt;
Var
opc:char;
msg:String='Programa creado por Alison';
procedure Centrar (Texto:String;fila:Integer);
Var
columna:integer;
Begin
columna:=(80-Length(Texto)) DIV 2;
Gotoxy(Columna,fila);
write(Texto);
End;
Procedure Circulo;
Var
area,r:real;
Begin
Clrscr;
Centrar('Escribe el valor de: r: ',6);
Readln(r);
Centrar('El area del circulo es igual a: ',8);
area:=PI*r*r;
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
readkey;
End;
Procedure Triangulo;
Var
area,base,altura:real;
Begin
Clrscr;
Centrar('Escribe el valor de la base:',4);
Read(base);
Centrar('Escribe el valor de la altura: ',6);
Read(altura);
Centrar('El area del Triangulo es igual a: ',8);
area:=base*altura/2;
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Rectangulo;
Var
area,base,altura:real;
Begin
Clrscr;
Centrar('Escribe el valor de la base: ',5);
Read(base);
Centrar('Escribe el valor de la altura: ',6);
Read(altura);
area:=base*altura;
Centrar('El area del Rectangulo es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Cuadrado;
Var
area,Lado:real;
Begin
Clrscr;
Centrar('Escribe el valor del Lado: ',5);
Read(Lado);
area:=Lado*Lado;
Centrar('El area del Cuadrado es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Romboide;
Var
base,altura,area:real;
Begin
Clrscr;
Centrar('Escribe el valor de la base: ',3);
Read(base);
Centrar('Escribe el valor de la altura: ',5);
Read(altura);
area:=base*altura;
Centrar('El area del Romboide es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Rombo;
Var
area, Diagonalmayor,diagonalmenor :real;
Begin
Clrscr;
Centrar('Escribe el valor de la Diagonal mayor: ',5);
Read(Diagonalmayor);
Centrar('Escribe el valor de la diagonal menor: ',6);
Read(diagonalmenor);
area:=Diagonalmayor*diagonalmenor/2;
Centrar('El area del Rombo es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Trapecio;
Var
area, Basemayor,basemenor,altura :real;
Begin
Clrscr;
Centrar('Escribe el valor de la Base mayor: ',5);
Read(Basemayor);
Centrar('Escribe el valor de la base menor: ',6);
Read(basemenor);
area:=Basemayor*basemenor/2;
Centrar('El area del Trapecio es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal',10);
Readkey;
End;
Procedure Pentagono;
Var
area, Perimetro,apotema :real;
Begin
Clrscr;
Centrar('Escribe el valor del Perimetro: ',5);
Read(Perimetro);
Centrar('Escribe el valor de la apotema: ',6);
Read(apotema);
area:=Perimetro*apotema/2;
Centrar('El area del Pentagono es igual a: ',8);
Writeln(area:4:2);
Writeln;
Writeln;
Writeln;
Centrar('Presiona ENTER para regresar al menu principal ',10);
Readkey;
End;
Procedure Salida;
Begin
Clrscr;
Textbackground(red);
Textcolor(yellow);
Centrar('Gracias por utilizarme',8);
Delay(2000);
End;
Begin
Repeat
Clrscr;
Gotoxy(15,1);
Writeln('+--------------------------------------------+');
Gotoxy(15,2);
Writeln('| |');
Gotoxy(15,3);
Writeln('+--------------------------------------------+');
Gotoxy(20,2);
textcolor(yellow);
textbackground(red);
Writeln(msg);
textcolor(brown);
textbackground(black);
Gotoxy(12,5);
Writeln('+------------------------------------------------+');
Gotoxy(12,6);
Writeln('| |');
Gotoxy(12,7);
Writeln('| |');
Gotoxy(12,8);
Writeln('| |');
Gotoxy(12,9);
Writeln('| |');
Gotoxy(12,10);
Writeln('| |');
Gotoxy(12,11);
Writeln('| |');
Gotoxy(12,12);
Writeln('| |');
Gotoxy(12,13);
Writeln('| |');
Gotoxy(12,14);
Writeln('| |');
Gotoxy(12,15);
Writeln('| |');
Gotoxy(12,16);
Writeln('| |');
Gotoxy(12,17);
Writeln('+------------------------------------------------+');
Centrar('opciones de programa',6);
Centrar('[C]irculo',7);
Centrar('[T]riangulo',8);
Centrar('[R]ectagulo',9);
Centrar('C[U]adrado',10);
Centrar('R[O]mboide',11);
Centrar('Tr[A]pecio',12);
Centrar('[P]entagono',13);
Centrar('Ro[M]bo',14);
Centrar('[X]salir del programa',15);
Textcolor(blue);
Centrar('Elige una opcion ',18);
opc:=readkey;
Case opc of
'C','c':circulo;
'T','t':triangulo;
'R','r':rectangulo;
'U','u':cuadrado;
'O','o':romboide;
'A','a':trapecio;
'P','p':pentagono;
'M','m':rombo;
'X','x':salida;
End;
Until (opc='x') or (opc='X');
End.
No hay comentarios:
Publicar un comentario