Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Ejercicios Capítulo 1
Introducción al lenguaje PASCAL
1) Escribir las acciones que surgen de la ejecución del algoritmo desarrollado en el ejemplo E4 de la
teoría, para los lotes de prueba especificados:
Algoritmo: DECISION_3 Lotes de prueba: 0 , 5 , 8 y -7 , -8 , 0
Program Calcular_Area_del_Triangulo;
var
base,altura:real;
begin
base:=2.4;
altura:=5.3;
writeln(0.5*base*altura);
end.
b) Almacenar, en una carpeta identificada con su matrícula en la raíz del disco D, el archivo fuente
con el nombre PRUEBA1.pas
c) Compilar el archivo fuente
d) Ejecutar.
e) Reemplazar las sentencias comprendidas entre Begin y End, por las siguientes:
f) repetir los incisos b) a d) con las modificaciones introducidas, grabándolo con el nombre
PRUEBA2.pas
4) Escribir un programa que permita leer la patente de un vehículo (de la forma “AB123CD”), el color,
la velocidad y la cantidad de ocupantes, y escriba en pantalla un cartel que detalle la información
leída, por ejemplo: “El vehículo con patente AD435XG, de color ROJO, se desplaza con 3 ocupantes
a 100 km/h”.
5) Un vehículo parte de una posición inicial igual a 20.5 m, con una velocidad constante de 10 m/s.
Escribir un programa que permita calcular la posición del vehículo para un instante de tiempo (en
segundos) ingresado por el usuario.
6) La relación entre las unidades de fuerza, kilogramo-fuerza y Newton, es 1 kg⃗ = 9.80665 N. Escribir
un programa que permita leer una magnitud en kg⃗ y la convierta a N
7) Escribir un programa que calcule el volumen de un cuerpo de densidad uniforme y masa M leídas
por teclado.
a) Pepe e) 32xymn
b) Pepe Grillo f) mn32 xy
c) PepeGrillo g) M32nxY
d) mn32xy h) mn_32
b) Program TRES;
uses CRT; { Ver Apéndice para la utilización de la sentencia USES }
var
c: char;
begin
clrscr;
c:= 'T';
writeln ('Esta es la letra c');
writeln('Esta es la letra ',c);
readln;
end.
c) Program CUATRO;
const
x1=10;
var
imp,expon,val1,val2,tot:integer;
medi:real;
begin
imp:=100;
expon:=20;
val1:=imp-expon;
val2:=x1;
tot:=val1+val2;
medi:=tot*50+10/val1;
writeln('imp':10, 'expon':10, 'val1':10, 'val2':10, 'total':10, 'medi':10);
writeln;
writeln(imp:10,expon:10,val1:10,val2:10,tot:10,medi:10:2)
end.
11) Escribir un programa que calcule la velocidad media de un vehículo a partir de sus posiciones (𝑥 y
𝑥 ) en dos instantes de tiempo (𝑡 y 𝑡 ), leídos por teclado. Mostrar el resultado con una resolución de
dos decimales.
12) Sea α un ángulo dado en grados (entero y positivo). Escribir, para cada inciso, una expresión (en
Pascal) que permita obtener:
13) Ejecutar 2 veces el siguiente programa ingresando, respectivamente, los valores 7 y 15.
{$R+} {Directiva de compilador R}
Program Positivos;
Type
NumPositivo = 0..10;
Var
numero: NumPositivo;
Begin
Write('Escribe un número entero positivo : ');
Readln(numero);
Readln;
end.
*************************************************************************************
Algunas Respuestas
8) a) c) d) g) h)
9)
a) 5 / numérica (entera o real)
b) errónea
c) 5 / numérica (real si a es real, sino real o entera)
d) True / booleana
e) 25 / (real si a es real, sino real o entera)
f) 6
g) True / booleana
h) valor contenido en c2 / c1 y c2 deben ser de tipos compatibles
i) errónea
j) errónea
12)
a) alfa div 360
b) alfa mod 360
c) alfa mod 360 div 90 + 1 (no válido para 0, 90, 180, 270 y sus congruentes)
d) alfa * Pi / 180
e) sin(alfa) / cos(alfa)