Logo Studenta

TPN5 GRUPO27 INFORMATICA

¡Este material tiene más páginas!

Vista previa del material en texto

1 
 
 INTRODUCCION A LA 
INFORMATICA 
TRABAJO PRACTICO N°5 
 
 GRUPO 27 
 FECHA DE ENTREGA 
 21-10-22 
 
 
NOMBRE Y APELLIDO DE LOS INTEGRANTES 
DEL GRUPO: 
* María de los Ángeles Cruz 
* Natalia Fiorela Caucota 
* Matías Ernesto Gonzales 
* Josías Tolaba Emanuel 
* Gastón Emanuel Burgos Martines 
 
 
2 
 
1) Analizar y realizar la prueba de escritorio de cada uno de los casos del algoritmo proceso 
serie_par, S=2+4+6+8+…Mostrar en cada caso el valor de ‘s’ y el Valor de ‘i’: 
 
a) Hasta que la acumulación de términos sea mayor que X para X=25 
Rta.: El numero de Serie de ‘s’ es 30 y el número de término ‘i’ es 5. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b) Hasta el n-ésimo término para n=4. 
Dato Serie Termino 
X s i 
25 0 0 
2 1 
6 2 
12 3 
20 4 
30 5 
ACUMULADORES CONDICIÓN DEL 
WHILE 
(s<=X) 
(s<=25) 
CALCULOS 
i:=i+1; 
s:=s+(2*i); 
 
 i:=0; 0 < =25 SI i:=0+1 
i:=1 
s:=0; s:=0+(2*1) 
s:=2 
‘Se Actualizan los datos’ 
i:=1; 2 < =25 SI i:=1+1 
i:= 2 
s:=2; s:=2+(2*2) 
s:=2+4 
s:=6 
‘Se Actualizan los datos’ 
i:=2; 6 < =25 SI i:=2+1 
i:=3 
s:=6; s:=6+(2*6) 
s:=12 
‘Se Actualizan los datos’ 
i:=3; 12 < =25 SI i:=3+1 
i:=4 
s:=12; s:=12+(2*4) 
s:=12+8 
s:=20 
‘Se Actualizan los datos’ 
i:=4; 20 < =25 SI i:=4+1 
i:=5 
s:=20; s:=20+(2*5) 
s:=20+10 
s:=30 
‘Se Actualizan los datos’ 
i:=5; 30< =25 NO 
S:=30; 
PASCAL 
program TP_Serie_Par_a; 
uses crt; 
var 
X,s,i:integer; 
begin 
 writeln('Ingrese el Valor a superar por la 
Acumulacion'); 
 readln(x); 
 s:=0; 
 i:=0; 
 while (s<=X)do 
 begin 
 i:=i+1; 
 s:=s+(2*i); 
 end; 
 writeln('Serie=',' ', s,' Termino= ',' ',i); 
readkey; 
end. 
3 
 
 
PASCAL Dato Terminó CA Serie 
program TP_Serie_Par_b; 
uses crt; 
var 
 n,s,i:integer; 
begin 
 writeln('Ingrese el numero de indice'); 
 readln(n); 
 s:=0; 
 for i:=1 to n do 
 begin 
 s:=s+(2*i); 
 end; 
 writeln('Serie=',' ',s,' ', 'Termino=',' 
',i); 
 readkey; 
end. 
N: repetición de 
‘i’ 
 
i S:=0; 
S:=s+(2*i); 
s 
 
 
 
N=4 
1 S:=0+(2*1) 
S:=2 
2 
2 S:=2+(2*2) 
S:=6 
6 
3 S:=6+(2*3) 
S:= 12 
12 
4 S:= 12 +(2*4) 
S:= 20 
20 
 
VERIFICACIÓN EN PASCAL 
program TP_Serie_Par_b; 
uses crt; 
var 
 n,s,i:integer; 
begin 
 writeln('Ingrese el numero de indice'); 
 readln(n); 
 s:=0; 
 for i:=1 to n do 
 begin 
 s:=s+(2*i); 
 writeln('Serie=',' ',s,' ', 'Termino=',' ',i) 
 end; 
 writeln('Serie=',' ',s,' ', 'Termino=',' 
',i); 
 readkey; 
end. 
 
c) Hasta que el n-ésimo término sea mayor o igual que Q. para Q=13 
4 
 
 
PASCAL Dato Acumuladores Condición CA Termino Serie 
program 
TP_Serie_Par_c; 
uses crt; 
var 
 Q,T,s,i:integer; 
begin 
 writeln('Ingrese 
el valor a superar 
por el termino'); 
 readln(Q); 
 s:=0; 
 i:=1; 
 T:=(2*i);; 
 while (T<Q) do 
 begin 
 s:=s+T; 
 i:=i+1; 
 T:=(2*i); 
 end; 
 
writeln('Serie=',' 
',s,' ', 
'Termino=',' ',i); 
 readkey; 
end.o 
 
Q=13 s:=0; 
i:=1; 
T:=(2*i); 
While 
(T<Q) 
´While’ 
s i s:=s+T 
 
i:=i+1 
 
T:=(2*i) 
T: = (2*1) 
T:=2 
2< 13 si s:=0+2; 
s:=2 
i:=1+1 
i:=2 
T:=(2*2) 
T:=4 
2 2 
‘Se Actualizan los datos’ 
T:=(2*2) 
T:.=4 
4<13 si S:=2+4 
S:=6 
i:=2+1 
i:=3 
T:=(2*3) 
T:=6 
6 3 
‘Se Actualizan los datos’ 
T:=(2*3) 
T:=6 
6<13 si s:=s+T 
s:=6+6 
s:=12 
 
i:=3+1 
i:=4 
T:=(2*4) 
T:=8 
12 4 
‘Se Actualizan los datos’ 
T:=(2*4) 
T:=8 
8<13 si s:= 12+8 
s:= 20 
i:=4+1 
i:=5 
T:=(2*5) 
T:=10 
20 5 
‘Se Actualizan los datos’ 
T:=(2*5) 
T:=10 
10<13 si s:=20+1
0 
s:=30 
i:=5+1 
i:=6 
T:=(2*6) 
T:=12 
30 6 
‘Se Actualizan los datos’ 
T:=(2*6) 
T:=12 
12<13 si s:=30+1
2 
s:=42 
 
i:=6+1 
i:=7 
T:=(2*7) 
T:=14 
42 7 
‘Se Actualizan los datos’ 
T:=(2*7) 
T:=14 
14<13 no El programa cierra porque no el n°14 no es menor a 13, 
esto se debe a la condición que hemos puesto. Así que 
termina en el (s:=42) y (i:=7) 
 
 
5 
 
 
VERIFICACIÓN 
program TP_Serie_Par_c; 
uses crt; 
var 
 Q,T,s,i:integer; 
begin 
 writeln('Ingrese el valor a superar por el termino'); 
 readln(Q); 
 s:=0; 
 i:=1; 
 T:=(2*i); 
 while (T<Q) do 
 begin 
 s:=s+T; 
 i:=i+1; 
 T:=(2*i); 
 writeln('Serie=',' ',s,' ', 'Termino=',' ',i); 
 end; 
 writeln('Serie=',' ',s,' ', 'Termino=',' ',i); 
 readkey; 
end. 
 
2) Ingresar repetidamente el nombre del Alumno y la nota del examen final (nota de tipo 
entero), la finalización del ingreso de datos es a pedido del operador. Asignar la 
calificación de acuerdo a las notas de la tabla. Hacer el algoritmo en Lazarus Pascal. 
Probar el algoritmo para mostrar los resultados como se nota en la tabla siguiente. 
 
 
 
 
 
 
 
 
6 
 
 
 
 
 
 
7 
 
 
 
 
3) Calcular la venta promedio efectuadas en un local de venta de tecnología. El vendedor 
carga las ventas hasta terminar su jornada laboral. Validar que las ventas ingresadas sean 
positivas. También se requiere el valor de la venta más alta. 
 
 
 
8 
 
PASCAL VENTA CONDICIÓN DEL ‘IF’ BANDERA UNTIL ACTUALIZAN 
Program Ejercicio3_TPN5; 
uses crt; 
var 
venta,suma,max,prom:real; 
cont:integer; 
bandera:boolean; 
resp:char; 
begin 
cont:=0; 
suma:=0; 
bandera:=true; 
 repeat 
 begin 
 writeln('Ingrese la venta:'); 
 readln(venta); 
 if (venta>0) then 
 begin 
 suma:=suma+venta; 
 cont:=cont+1; 
 end; 
 if (bandera=true) then 
 begin 
 max:=venta; 
 bandera:=false; 
 end 
 else 
 if (venta>max) then 
 begin 
 max:=venta; 
 end; 
 writeln('Es Final de Jornada 
Laboral !'); 
 writeln(); 
 writeln('Desea Finalizar? S/N 
:'); 
 readln(resp); 
 end; 
 until (resp='S') or (resp='s'); 
 
writeln('suma:',Round(suma)); 
 prom:=suma/cont; 
 
writeln('Promedio:',Round(prom)); 
 
writeln('Maximo:',Round(max)); 
readkey; 
end. 
DATO CONDICIÓN 
1 
 
CONTADORES 
 
CONDICIÓN 
2 
 
CONTADORES Desea 
Finalizar? 
cont:=0; 
suma:=0; 
 
(Venta>0) suma:=suma+venta
; 
cont:=cont+1; (Bandera=true) max:=venta; Bandera:=false; S/N SE MANTIENE 
Bandera:=true; 
1600 (1600>0) V suma:=0+1600 
suma:=1600 
Cont:=0+1 
Cont:=1 
Bandera=true 
True=True 
V ‘Primera venta lo 
Asigno como, máximo 
porque hiso una venta 
pero igual se lo toma 
como máximo valor’ 
 
Max:=1600 
Bandera=false 
True ≠ false 
F N 
cont:=1; 
suma:=1600; 
bandera:=true; 
 
5000 (5000>0) V suma:=1600+5000 
suma:= 6600 
Cont:=1+1 
Cont:=2 
Bandera=true 
True=True 
V Max:=5000 Bandera=false 
True ≠ false 
F N cont:=2; 
suma:=6600; 
bandera:=true; 
200 (200>0) V suma:=6600+200 
suma:=6800 
Cont:=2+1 
Cont:=3 
Bandera=true 
True=True 
V Max:=5000 Bandera=false 
True ≠ false 
F N cont:=3; 
suma:= 6800; 
bandera:=true; 
120 (120>0) V suma:= 6800+120 
suma:=6920 
Cont:=3+1 
Cont:=4 
Bandera=true 
True=True 
V Max:=5000 Bandera=false 
True ≠ false 
F N cont:=4; 
suma:= 6920; 
bandera:=true; 
-147 (-147>0) F ‘No lo toma porque no cumple la Condición del ‘IF’ y siguen lo mismo resultados Anteriores’ s cont:=4; 
suma:= 6920; 
bandera:=true; 
-54 (-54>0) F ‘No lo toma porque no cumple la Condición del ‘IF’ y siguen lo mismo resultados Anteriores’ s cont:=4; 
suma:=6920; 
bandera:=true; 
TOTAL PROMEDIO: = Suma/Contador SUMA: =0; MAXIMO: =0; 
PROMEDIO: =6920 / 4 
PROMEDIO: = 1730 
SUMA: =6920 MAXIMO: =5000 
 
9 
 
 
4) Diseñarun algoritmo para validar una nota. La nota debe ser un valor entero entre 0 y 
10. Si se ingresa un valor fuera de este intervalo se vuelve a leer, hasta que se ingrese 
una nota válida. 
 
 
PASCAL Nota Condición del ‘Repeat’ 
Until (nota>=0) and (nota<=10) 
Tabla de la 
Verdad (P y q) 
Program Ejercicio4_TPN5; 
uses crt; 
var 
nota:integer; 
begin 
 repeat 
 writeln('Ingrese una nota'); 
 readln(nota); 
 until (nota>=0) and 
(nota<=10); 
 
end. 
8 (8>=0) V (8<=10) V V 
9 (9>=0) V (9<=10) V V 
10 (10>=0) V (10<=10) V V 
0 (0>=0) V (0<=10) V V 
47 (47>=0) - (47<=10) - - 
Recordar: 
• Utilizamos la ‘y’ para cerrar y abarcar hasta 
donde es tal número. No podemos utilizar ‘o’ en 
este caso para cerrar esos dos intervalos porque 
no entrecierra. 
• Que el 47 no está abarcando la nota o el entre 0 y 
10. El programa pondrá de nuevo el cartel 
(‘Ingrese una Nota’), solo hasta el usuario 
ponga los numero dentro de esos dos intervalos. 
Y lo mismo sucede con los números negativos: 
-5 (-5>=0) F (-5<=10) V F 
-1 (-1>=0) F (-1<=10) V F 
 -4 (-4>=0) F (-4<=10) V F 
-8 (-8>=0) F (-8<=10) V F 
-9 (-9>=0) F (-9<=10) V F 
 
 
5) Escriba un algoritmo que permita realizar la multiplicación de dos números ingresados 
por el usuario sólo utilizando suma entre ellos, es decir, se debe suponer que para 
resolver el problema no conocemos la operación multiplicación. 
 
 
 
 
 
10 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11 
 
 
6) Diseñar un algoritmo para ingresar números, hasta que se introduzca el 0 (CERO). Al 
finalizar el ciclo mostrar cuántos números pares y cuántos impares se registraron, cuánto 
suman los pares y cuánto los impares. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12 
 
 
 
7) En un depósito hay un producto en stock A, al comienzo de la jornada de trabajo hay una 
cantidad inicial que puede ser positiva, cero o negativa, en este último caso hay un 
faltante de ese producto (se debe hacer un pedido urgente). Cuando la jornada se inicia 
entran y salen camiones con el producto que suman o restan el stock respectivamente. 
Diseñe un algoritmo que realice la tarea de informatizar el depósito, y mostrar al final de 
la jornada el stock del producto. 
 
 
13 
 
 
 
 
 
 
 
 
 
 
 
14 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15 
 
 
8) Dado un grupo de 20 estudiantes que cursaron la materia Algoritmos, se desea saber 
cuál es el promedio del grupo, cuál fue la nota más alta y cuál la más baja, cuántos 
aprobaron el curso y cuántos reprobaron. 
 
 
16

Continuar navegando