Descarga la aplicación para disfrutar aún más
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
Compartir