lunes, 25 de noviembre de 2013

PROGRAMA INTEGRADOR

Program integrador;
uses
 crt;

Var
 opc:char;
 msg: string='Programa elaborado por Sandra Barajas';

Procedure Centrar(texto:String; fila:integer);
var
 columna:integer;
begin
 columna:=(80-Length(texto)) DIV 2;
 Gotoxy(columna, fila);
 write(texto);
end;

Procedure Salida;
begin
clrscr;
textbackground(red);
textcolor(yellow);
centrar('Programa para el calculo de areas se despide, bye',8);
delay(2000);
End;

Procedure circulo;
var
area,r:real;
begin
clrscr;
centrar('Escribe el valor de r(radio)',5);
readln(r);
area:=Pi*r*r;
centrar('El area del circulo es igual a',8);
Writeln(area:4:2);
writeln;
writeln;
writeln;
centrar('Presiona una tecla para regresar al menu',10);
readkey;
end;

procedure triangulo;
var
area,base,altura:real;
begin
clrscr;
centrar('Escribe el valor de b (base)',5);
readln(base);
centrar('Escribe el valor de h (altura)',7);
readln(altura);
area:=((base*altura)/2);
centrar('El area del triangulo es igual a',9);
writeln(area:4:2);
writeln;
writeln;
writeln;
Centrar('Presiona una tecla para regresar al menu',10);
readkey;
end;

Procedure rectangulo;
var
area,base,altura:real;
begin
clrscr;
centrar('Escribe el valor de b (base)',5);
readln(base);
centrar('Escribe el valor de h (altura)',7);
readln(altura);
area:=(base*altura);
centrar('El area del rectangulo es igual a',9);
writeln(area:4:2);
writeln;
writeln;
writeln;
centrar('Presiona una tecla para regresar al menu',10);
readkey;
end;

Procedure cuadrado;
var
L1,L2,A:real;
Begin
Clrscr;
centrar('Escribe el valor del primer lado ',5);
read(L1);
Centrar('Escribe el valor del segundo lado ',6);
read(L2);
A:=L1*L2;
centrar('El area del cuadrado es ',7);
writeln(A);
writeln;
writeln;
writeln;
centrar('Presiona una tecla para regresar al menu ',10);
readkey;
End;

Procedure romboide;
var
b,h,A:real;
begin
clrscr;
centrar('Escribe el valor de su base ',5);
read(b);
centrar('Escribe el valor de su altura',6);
read(h);
A:=b*h;
centrar('El area del romboide es ',7);
writeln(A);
writeln;
writeln;
writeln;
centrar('Presiona una tecla para regresar al menu ',10);
end;

Procedure trapecio;
var
h,B,b1,A:real;
begin
clrscr;
centrar(' Escribe el valor de su altura ',5);
read(h);
centrar(' Escribe el valor de su base mayor ',6);
read(B);
centrar(' Escribe el valor de su base menor ',7);
read(b1);
A:=h*(B+b1)/2;
centrar(' El area del trapecio es ',8);
Writeln(A);
Writeln;
writeln;
writeln;
centrar('Presiona una tecla para regresar al menu ',10);
readkey;
end;

Procedure pentagono;
var
p,a1,A:real;
begin
clrscr;
centrar('Escribe el valor de su perimetro ',5);
read(p);
centrar('Escribe el valor de su apotema ',6);
read(a1);
A:=p*a1/2;
centrar('El area del pentagono es ',7);
writeln(A);
writeln;
writeln;
writeln;
centrar(' Presiona una tecla para regresar al menu ',10);
readkey;
end;

Procedure rombo;
var
D,m,A:real;
begin
Clrscr;
centrar(' Escribe el valor de la diagonal mayor ',5);
read(D);
centrar(' Escribe el valor de su diagonal menor ',6);
read(m);
A:=D*m/2;
Centrar(' El area del rombo es ',7);
writeln(A);
writeln;
writeln;
writeln;
centrar(' Presiona una tecla para regresar al menu ',10);
readkey;
end;

Procedure Suma;
 var
  x,y,z:integer;
 begin
  clrscr;
  centrar('dame un numero:  ',5);
  read(x);
  centrar('Dame otro numero:  ',6);
  read(y);
  z:=x+y;
  centrar('la suma de esos numeros es igual a:  ',7);
  writeln(z);
  writeln;
  writeln;
  writeln;
  centrar('presiona ENTER para regresar al menu principal' ,10);
  readkey;
 end;

 Procedure Resta;
 var
  x,y,z:integer;
 begin
 clrscr;
 centrar('dame un numero:  ',5);
 Read(x);
 Centrar('dame otro numero:  ',6);
 Read(Y);
 z:=x-y;
 Centrar('La resta de estos numeros es igual a:  ',7);
 writeln(z);
 writeln;
 writeln;
 writeln;
 Centrar('Presione una tecla para regresar al menu principal' ,10);
 readkey;
end;

Procedure Multiplicacion;
Var
 x,y,z:integer;
Begin
 Clrscr;
 centrar('dame un numero  ',5);
 read(x);
 Centrar('dame otro numero  ',6);
 read(y);
 z:=x*y;
 centrar('la suma de estos numeros es igual a  ',7);
 writeln(z);
 writeln;
 writeln;
 writeln;
 centrar('presione una tecla para regresar al menu principal ',10);
 readkey;
 end;

Procedure unoenuno;
Var
x:integer;
Begin
Clrscr;
For x:=1 to 100 do
Begin
Write(' ',x);
end;
readkey;
end;

Procedure cienauno;
Var
x:integer;
begin
Clrscr;
for x:=100 downto 1 do
begin
write(' ',x);
end;
readkey;
end;

Procedure ceroacien;
Var
x,y:integer;
begin
clrscr;
y:=0;
for x:=0 to 100 do
begin
write(' ',y);
y:=y+2;
end;
readkey;
end;

Procedure dosendos;
Var
x,y:integer;
begin
clrscr;
y:=1;
for x:=1 to 100 do
begin
write(' ',y);
y:=y+2;
end;
readkey;
end;



Procedure Operaciones;
Begin
Repeat;
clrscr;
gotoxy(18,1);
Writeln('+-------------------------------+');
Gotoxy(18,2);
writeln('|                               |');
gotoxy(18,3);
Textcolor(yellow);
Textbackground(black);
writeln(msg);
textcolor(white);
textbackground(black);
gotoxy(16,5);
Writeln('+------------------------------------------+');
Gotoxy(16,6);
Writeln('|                                          |');
Gotoxy(16,7);
Writeln('|                                          |');
gotoxy(16,8);
writeln('|                                          |');
gotoxy(16,9);
writeln('|                                          |');
gotoxy(16,10);
writeln('|                                          |');
gotoxy(16,11);
writeln('|                                          |');
gotoxy(16,12);
writeln('|                                          |');
gotoxy(16,13);
writeln('|                                          |');
Gotoxy(16,14);
writeln('|                                          |');
gotoxy(16,15);
writeln('|                                          |');
gotoxy(16,16);
writeln('|                                          |');
gotoxy(16,17);
writeln('|                                          |');
gotoxy(16,18);
writeln('|                                          |');
gotoxy(16,19);
writeln('+------------------------------------------+');
centrar('Opciones del programa',6);
centrar(' [S]uma ',8);
Centrar(' [R]esta ',10);
Centrar(' [M]ultiplicacion ',12);
centrar('[Y] Regresar al programa principal',17);
Textcolor(green);
centrar('Elige una opcion',20);
opc:=readkey;
case opc of
'S','s':suma;
'R','r':resta;
'M','m':multiplicacion;

End;
until(opc='Y') or (opc='y');

End;

Procedure areas;

Begin
Repeat;
clrscr;
gotoxy(18,1);
Writeln('+-------------------------------+');
Gotoxy(18,2);
writeln('|                               |');
gotoxy(18,3);
Textcolor(yellow);
Textbackground(black);
writeln(msg);
textcolor(white);
textbackground(black);
gotoxy(16,5);
Writeln('+------------------------------------------+');
Gotoxy(16,6);
Writeln('|                                          |');
Gotoxy(16,7);
Writeln('|                                          |');
gotoxy(16,8);
writeln('|                                          |');
gotoxy(16,9);
writeln('|                                          |');
gotoxy(16,10);
writeln('|                                          |');
gotoxy(16,11);
writeln('|                                          |');
gotoxy(16,12);
writeln('|                                          |');
gotoxy(16,13);
writeln('|                                          |');
Gotoxy(16,14);
writeln('|                                          |');
gotoxy(16,15);
writeln('|                                          |');
gotoxy(16,16);
writeln('|                                          |');
gotoxy(16,17);
writeln('|                                          |');
gotoxy(16,18);
writeln('|                                          |');
gotoxy(16,19);
writeln('+------------------------------------------+');
centrar('Opciones del programa',6);
centrar('[C]irculo',8);
Centrar('[T]riangulo',9);
Centrar('[R]ectangulo',10);
Centrar('c[U]adrado',11);
centrar('Rombo[i]de',12);
centrar('Tr[A]pecio',13);
centrar('[P]entagono',14);
centrar('Ro[M]boide',15);
centrar('[Y] Regresar al programa principal',17);
Textcolor(green);
centrar('Elige una opcion',20);
opc:=readkey;
case opc of
'C','c':circulo;
'T','t':triangulo;
'R','r':rectangulo;
'U','u':cuadrado;
'I','i':romboide;
'A','a':trapecio;
'P','p':pentagono;
'M','m':rombo;

End;
until(opc='Y') or (opc='y');

End;

Procedure Ciclos;
Begin
Repeat;
clrscr;
gotoxy(18,1);
Writeln('+-------------------------------+');
Gotoxy(18,2);
writeln('|                               |');
gotoxy(18,3);
Textcolor(yellow);
Textbackground(black);
writeln(msg);
textcolor(white);
textbackground(black);
gotoxy(16,5);
Writeln('+------------------------------------------+');
Gotoxy(16,6);
Writeln('|                                          |');
Gotoxy(16,7);
Writeln('|                                          |');
gotoxy(16,8);
writeln('|                                          |');
gotoxy(16,9);
writeln('|                                          |');
gotoxy(16,10);
writeln('|                                          |');
gotoxy(16,11);
writeln('|                                          |');
gotoxy(16,12);
writeln('|                                          |');
gotoxy(16,13);
writeln('|                                          |');
Gotoxy(16,14);
writeln('|                                          |');
gotoxy(16,15);
writeln('|                                          |');
gotoxy(16,16);
writeln('|                                          |');
gotoxy(16,17);
writeln('|                                          |');
gotoxy(16,18);
writeln('|                                          |');
gotoxy(16,19);
writeln('+------------------------------------------+');
centrar('Opciones del programa',6);
centrar('[U] Numeracion del 1 al 100 de uno en uno',8);
centrar('[C] Numeracion del 100 al 1 descendente',10);
centrar('[D] Numeros pares entre el 1 al 100',12);
centrar('[I] Numeros impares entre el 1 al 100',14);
Centrar('[Y] Ir al menu principal',18);
Textcolor(green);
centrar('Elige una opcion',20);
opc:=readkey;
case opc of
'U','u': unoenuno;
'C','c': cienauno;
'D','d': ceroacien;
'I','i': dosendos;
End;
until(opc='Y') or (opc='y');

End;

Begin
repeat
clrscr;
textcolor(green);
centrar('Programa integrador tercer parcial',6);
centrar('Elaborado por: Sandra',7);
centrar('Bachillerato 30',8);
Centrar('Quinto B',9);
Centrar('programacion I',10);
Textcolor(yellow);
centrar('Presiona ENTER para continuar',14);
Textcolor(white);
readkey;
clrscr;
gotoxy(18,1);
writeln('+---------------------------+');
gotoxy(18,2);
writeln('|                           |');
gotoxy(18,3);
Writeln('+---------------------------+');
gotoxy(23,2);
textcolor(yellow);
textbackground(black);
writeln(msg);
textcolor(white);
textbackground(black);
gotoxy(16,5);
writeln('+-----------------------------------+');
gotoxy(16,6);
writeln('|                                   |');
gotoxy(16,7);
writeln('|                                   |');
gotoxy(16,8);
writeln('|                                   |');
gotoxy(16,9);
writeln('|                                   |');
gotoxy(16,10);
writeln('|                                   |');
gotoxy(16,11);
writeln('|                                   |');
gotoxy(16,12);
writeln('|                                   |');
gotoxy(16,13);
writeln('|                                   |');
gotoxy(16,14);
writeln('|                                   |');
gotoxy(16,15);
writeln('|                                   |');
gotoxy(16,16);
writeln('|                                   |');
gotoxy(16,17);
writeln('|                                   |');
gotoxy(16,18);
writeln('|                                   |');
gotoxy(16,19);
writeln('+-----------------------------------+');
centrar('Opciones del programa',6);
centrar('[O]peraciones aritmeticas',8);
centrar('[C]alculo de areas',9);
centrar('C[i]clos',10);
centrar('[X] Salir del programa',17);
textcolor(green);
centrar('Elige una opcion',20);
opc:=readkey;
case opc of
'O','o': operaciones;
'C','c': areas;
'I','i': Ciclos;

'X','x': salida;
end;
until(opc='X') or (opc='x');

end.

jueves, 14 de noviembre de 2013

CALCULO DE AREAS

Program CALCULO_DE_AREA;
Uses
 Crt;
Var
 opc: char;
 msg: string= 'Programa creado por Sandra Barajas Vargas';

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
 Pi,r,A: real;
Begin
 Clrscr;
 Centrar('Dame el valor del radio ',6);
 Read(r);
 A:=PI*r*r;
 Read(A);
 Centrar('El area del circulo es: ',7);
 WriteLn(A);
 WriteLn;
 WriteLn;
 WriteLn;
 Centrar('Presiona ENTER para regresar al menu principal' ,10);
  Readkey;
 End;

Procedure Triangulo;
Var
 b,h,A:real;
Begin
 Clrscr;
 Centrar('Escribe el valor de su base ',5);
 Read(b);
 Centrar('Escribe el valor de su altura: ',6);
 Read(h);
 A:=b*h/2;
 WriteLn(A);
 Centrar('El area del triangulo es: ',7);
 WriteLn;
 WriteLn;
 WriteLn;
 Centrar('Presiona ENTER para regresar al menu principal' ,10);
  Readkey;
 End;

Procedure Rectangulo;
Var
 b,h,A:real;
Begin
 Clrscr;
 Centrar('Escribe el valor de su base: ',5);
 Read(b);
 Centrar('Escribe el valor de su altura: ',6);
 Read(h);
 A:=b*h;
 writeLn(A);
 Centrar('El area del rectangulo es: ',7);
 WriteLn;
 WriteLn;
 WriteLn;
 Centrar('Presiona ENTER para regresar al menu principal' ,10);
  Readkey;
 End;

 Procedure Cuadrado;
 var
 r,A:real;
 Begin
 Clrscr;
 Centrar('Escribe el valor de su radio  ',5);
 Read(r);
 A:=r*r;
 Readln(A);
 Centrar('El area del cuadrado es  ',6);
 Writeln;
 writeln;
 Writeln;
 Centrar('Presiona ENTER para regresar al menu principal'  ,10);
  Readkey;
 End;

 Procedure Rombo;
 Var
 D,m,A: real;
 Begin
 Clrscr;
 Centrar('Escribe el valor de la diagonal mayor  ',5);
 Read(D);
 Centrar('Escribe el valor de la diagonal menor  ',6);
 Read(m);
 A:=D*m/2;
 Readln(A);
 Centrar('El area del rombo es  ',7);
 Writeln;
 Writeln;
 Writeln;
 Centrar('Presiona ENTER para regresar al menu principal  ',10);
  Readkey;
 End;

 Procedure Trapecio;
 Var
 h,B,b1,A: real;
 Begin
 Clrscr;
 Centrar('Escribe el valor de su altura  ',5);
 Read(h);
 Centrar('Escribe el valor de su base mayor  ',6);
 Read(B);
 Centrar('Escribe el valor de su base menor  ',7);
 Read(b1);
 A:=h*(B+b1)/2;
 Writeln(A);
 Centrar('El area del trapecio es  ',8);
 Writeln;
 Writeln;
 Writeln;
 Centrar('Presiona ENTER para regresar al menu principal  ',10);
  Readkey;
 End;

 Procedure Pentagono;
 Var
 p,a1,A: real;
 Begin
 Clrscr;
 Centrar('Escribe el valor de su perimetro  ',5);
 Read(p);
 Centrar('Escribe el valor de su apotema  ',6);
 Read(a1);
 A:=p*a1/2;
 Writeln(A);
 Centrar('El area del pentagono es  ',7);
 Writeln;
 Writeln;
 Writeln;
 Centrar('Presiona ENTER para regresar al menu principal  ',10);
  Readkey;
 End;

 Procedure Romboide;
 Var
 b,h,A: real;
 Begin
 clrscr;
 Centrar('Escribe el valor de su base  ',5);
 Read(b);
 Centrar('Escribe el valor de su altura  ',6);
 Read(h);
 A:=b*h;
 Writeln(A);
 Centrar('El area del romboide es  ',7);
 Writeln;
 Writeln;
 Writeln;
 Centrar('Presiona ENTER para regresar al menu principal  ',10);
  Readkey
 End;


 Procedure Salida;
Begin
 Clrscr;
 Textbackground(black);
 Textcolor(White);
 Centrar('Gracias por utilizarme, hasta luego' ,8);
 Delay(2000);
End;

{Empieza programa principal}

Begin
 Repeat
 Clrscr;
 Gotoxy(24,1);
 WriteLn('*******************************************');
 Gotoxy(24,2);
 WriteLn('*                                         *');
 Gotoxy(24,3);
 WriteLn('*******************************************');
 Gotoxy(28,2);
 Textcolor(White);
 Textbackground(Black);
 WriteLn(msg);
 Textcolor(White);
 Textbackground(Black);
 Gotoxy(8,5);
 WriteLn('***************************************************************');
 Gotoxy(8,6);
 WriteLn('*                                                             *');
 Gotoxy(8,7);
 WriteLn('*                                                             *');
 Gotoxy(8,8);
 Writeln('*                                                             *');
 Gotoxy(8,9);
 WriteLn('*                                                             *');
 Gotoxy(8,10);
 WriteLn('*                                                             *');
 Gotoxy(8,11);
 WriteLn('*                                                             *');
 Gotoxy(8,12);
 WriteLn('*                                                             *');
 Gotoxy(8,13);
 WriteLn('*                                                             *');
 Gotoxy(8,14);
 WriteLn('*                                                             *');
 Gotoxy(8,15);
 WriteLn('*                                                             *');
 Gotoxy(8,16);
 WriteLn('*                                                             *');
 Gotoxy(8,17);
 WriteLn('*                                                             *');
 Gotoxy(8,18);
 WriteLn('*                                                             *');
 Gotoxy(8,19);
 WriteLn('*                                                             *');
 Gotoxy(8,20);
 WriteLn('*                                                             *');
 Gotoxy(8,21);
 WriteLn('*                                                             *');
 Gotoxy(8,22);
 WriteLn('*                                                             *');
 Gotoxy(8,23);
 WriteLn('***************************************************************');
 Centrar('OPCIONES DEL PROGRAMA' ,5);
 Centrar('[C] Calcular area de un circulo',7);
 Centrar('[T] Calcular area de un triangulo' ,9);
 Centrar('[R] Calcular area de un rectangulo' ,11);
 Centrar('[c] Calcular area de un cuadrado' ,13);
 Centrar('[r] Calcular area de un rombo'  ,15);
 Centrar('[t] Calcular area de un trapecio'  ,17);
 Centrar('[P] Calcular area de un pentagono' ,19);
 Centrar('[Z] Calcular area de un romboide' ,21);
 Centrar('[X] SALIR DEL PROGRAMA',23);
 Textcolor(White);
 Centrar('Elige una opcion ',3);
 opc:=Readkey;
 Case opc of
 'C': Circulo;
 'T': Triangulo;
 'R': Rectangulo;
 'c': Cuadrado;
 'r': Rombo;
 't': Trapecio;
 'P': Pentagono;
 'Z': Romboide;
 'X','x': Salida;
 End;
 Until (opc='x') or (opc='x');

End.




martes, 12 de noviembre de 2013

CALCULADORA

1.- Que hace el programa?
Ejecuta algo muy parecido a una aplicación, la cual nos ayuda a sumar, restar y multiplicar
2.- Que instrucciones nuevas encontraste?
Procedure, textcolor, textbackground, msg ,string, centrar.
3.- Investiga en internet, para que sirven las siguientes instrucciones:

a) Procedure: Sirve para iniciar un procedimiento

b) Lenght

c) Textcolor: Para agregarle el color de nuestra preferencia al texto

d) Textbackground: Para ponerle el color que queramos al fondo.

e) Delay





jueves, 12 de septiembre de 2013

DESCRIPCIÓN DE PSEUDOCÓDIGO.

Proceso Adivina_Numero         // Nombre del proceso que realizaremos

intentos<-9;                            
// asignar un valor a “intentos”
num_secreto <- azar(100)+1;   
// elegir un numero secreto al azar

Escribir "Adivine el numero (de 1 a 100):";  
// indica la acción que realizaremos
Leer num_ingresado;                                
// Entender el número que ingresan.
Mientras num_secreto<>num_ingresado Y intentos>0 Hacer 
// Indica los intentos que te quedan si fallaste.
Si num_secreto>num_ingresado Entonces
 // Valor ingresado.
Escribir "Muy bajo"; 
// Indicación en caso de que des un número bajo.
Escribir "Muy alto"; 
// Indicación en caso de que des un número muy alto.
FinSi // Indica que el proceso terminó en caso de cumplir con alguna de las indicaciones anteriores.
Escribir "Le quedan ",intentos," intentos:"; 
// Indica cuantos intentos quedan
Leer num_ingresado;    // Entender el número ingresado
intentos <- intentos-1; 
 // Nos dice cuantos intentos llevamos.
FinMientras 
// Nos indica si alguna acción ha finalizado

Si intentos=0 Entonces    
// Indica que ya no quedan más intentos.
Escribir "El numero era: ",num_secreto;  
// Nos da el número secreto en caso de que no queden más intentos.
Sino // Acción que se realiza en caso de que algo no se cumpla.
Escribir "Exacto! Usted adivino en ",11-intentos," intentos.";  // Muestra si adivinaste el número secreto y en cuantos intentos.
FinSi  
// Termina el proceso si se realizaron las acciones anteriores.

FinProceso
 // Termino del proceso.


COMENTARIO PERSONAL: Este algoritmo nos sirve para realizar una actividad en la cual tienes que adivinar un número secreto a base de intentos.



jueves, 5 de septiembre de 2013

ÁREA


PROCESO ÁREA DE UN RECTÁNGULO
INICIOPROCESO
LEER "VALORES DE BASE Y ALTURA"
APLICAR LA FÓRMULA CORRESPONDIENTE
IMPRIMIR "VALOR DEL ÁREA"
VE A FINPROCESO

RAÍZ CUADRADA


PROCESO RAÍZ CUADRADA DE UN NÚMERO
INICIOPROCESO
IMPRIMIR "NÚMERO AL QUE SE LE SACARÁ LA RAÍZ CUADRADA"
APLICAR LA FORMULA CORRESPONDIENTE
IMPRIMIR "RAÍZ DEL NÚMERO"
VE A FINPROCESO.