Documentos de Académico
Documentos de Profesional
Documentos de Cultura
107 Problemas de Pascal
107 Problemas de Pascal
Programación en Pascal
2. Escribir un programa en Pascal que sume, reste, multiplique y divida dos números:
x = 10 y = 2
PROGRAM EJER02; {Autor: Victor Sanchez Sanchez email: victorss18@hotmail.com}
USES CRT; {Nos va a permitir limpiar la pantalla junto con ClrScr}
VAR x,y:INTEGER;
VAR suma,rest,mult,divi:INTEGER;
BEGIN
x:=10;
y:=2;
suma:=x + y;
rest:=x - y;
mult:=x * y;
divi:=x div y;
{Con estas 4 variables realizamos las cuatro operaciones aritméticas fundamentales:
suma, resta, multiplicación y división}
ClrScr; {Limpia la pantalla}
WRITE ('SUMA:'); WRITELN (suma);
WRITE ('RESTA:'); WRITELN (rest);
WRITE ('MULTIPLICACION:'); WRITELN (mult);
WRITE ('DIVISION:'); WRITE (divi);
END.
PROGRAM EJER2B; {Autor: Victor Sanchez Sanchez email: victorss18@hotmail.com}
USES CRT;
VAR x,y:REAL;
VAR suma,rest,mult:REAL;
VAR divi:REAL;
{suma, resta, multiplica y divide 2 numeros reales}
BEGIN
WRITELN ('Este programa suma,resta,multiplica y divide:');
WRITELN ('Escriba dos numeros reales');
WRITELN (' ');
READ (x);
READ (y);
suma:=x + y;
rest:=x - y;
mult:=x * y;
divi:=x / y;
ClrScr;
WRITE ('SUMA:'); WRITELN (suma:3:0);
WRITE ('RESTA:'); WRITELN (rest:3:0);
WRITE ('MULTIPLICACION:'); WRITELN (mult:3:0);
WRITE ('DIVISION:'); WRITE (divi:5:2);
END.
PROGRAM EJER02;
USES CRT;
VAR x,y:INTEGER;
VAR suma,rest,mult,divi:INTEGER;
BEGIN
x:=10;
y:=2;
suma:=x + y;
rest:=x - y;
mult:=x * y;
divi:=x div y;
ClrScr;
WRITE('SUMA:'); WRITELN(suma);
WRITE('RESTA:'); WRITELN(rest);
WRITE('MULTIPLICACION:'); WRITELN(mult);
WRITE('DIVISION:'); WRITELN(divi);
END.
PROGRAM EJER03;
USES CRT;
VAR lado1,lado2:INTEGER;
VAR area:INTEGER;
BEGIN
lado1:=3;
lado2:=4;
area:=lado1*lado2;
ClrScr;
WRITE('AREA DEL RECTANGULO: '); WRITE(area);
END.
18. Escribir un programa en Pascal que calcule las raíces de una ecuación de 2º grado
PROGRAM EJER18; {Autor: Victor Sanchez Sanchez email: victorss18@hotmail.com}
USES CRT;
VAR a,b,c:REAL;
VAR x1,x2:REAL;
BEGIN
a:=6;
b:=6;
c:=1;
x1:= (-b + sqrt(sqr(b) - (4 * a * c))) / 2 * a;
x2:= (-b - sqrt(sqr(b) - (4 * a * c))) / 2 * a;
WRITE ('SOLUCION 1:'); WRITELN (x1);
WRITE ('SOLUCION 2:'); WRITE (x2);
END.
106. Escribir un programa en Pascal que encripte una cadena de caracteres sumando 2
al código ASCII de cada uno de sus caracteres.
PROGRAM EJERC106; {Autor: Victor Sanchez Sanchez email: victorss18@hotmail.com}
USES CRT;
VAR cadena:STRING;
VAR encrip:INTEGER;
VAR i:INTEGER;
BEGIN
ClrScr;
WRITE ('Introduzca una cadena para encriptarla: ');
READLN (cadena);
WRITELN('');
FOR i:=1 TO LENGTH(cadena) DO
BEGIN
encrip:=ORD(cadena[i]);
cadena[i]:=(CHR(encrip + 2));
WRITE(cadena[i]);
END;
END.
PROGRAM EJERC106;
USES CRT;
CONST cad_orig:STRING='Archipielago de Cabo Verde';
VAR i,nc:INTEGER;
BEGIN
ClrScr;
WRITELN(cad_orig);
nc:=LENGTH(cad_orig);
FOR i:=1 TO nc DO
cad_orig[i]:=CHR(ORD(cad_orig[i])+2);
WRITELN(cad_orig);
END.
107. Escribir un programa en Pascal que encripte los caracteres de una cadena
sumando 2 a los que situados en posiciones pares y 3 a los situados en posiciones
impares.
PROGRAM EJERC107; {Autor: Victor Sanchez Sanchez email: victorss18@hotmail.com}
USES CRT;
VAR cadena:STRING;
VAR encrip, i:INTEGER;
BEGIN
ClrScr;
WRITE ('Introduzca una cadena para encriptarla: ');
READLN (cadena);
WRITELN ('');
FOR i:=1 TO LENGTH (cadena) DO
BEGIN
IF (i mod 2)=0 THEN
BEGIN
encrip:=ORD(cadena[i]);
cadena[i]:= (CHR(encrip + 2));
END
ELSE
BEGIN
encrip:=ORD(cadena[i]);
cadena[i]:= (CHR(encrip + 3));
END;
WRITE(cadena[i]);
END;
END.
Estos son todos los ejercicios y espero que os sean de gran ayuda. Sólo os pediría una
cosa, si distribuís estos ejercicios entre vuestros amigos o a través de Internet, por favor,
dejar mi nombre, me ha costado un gran trabajo.
Otra opción que tienen los que hayan adquirido este tutorial, es mandar un mensaje de
confirmación para saber que poseéis estos ejercicios, y os incluiré en una lista para
mandaros más ejercicios. Email: victorss18@hotmail.com
Por favor, escribir ante cualquier duda o comentario que sirva para mejorar los
ejercicios.