Beruflich Dokumente
Kultur Dokumente
GRUPO: 6151
1. Elabore un algoritmo que lea cuatro nmeros e imprima el mayor. Se supone que son nmeros diferentes, por lo tanto, no se debe averiguar si son iguales o si son diferentes. Anlisis del Problema: Datos de entrada: a, b, c, d Datos de salida: mayor Datos de auxiliares: a mayor y a>c y a>d b mayor b>c y b>d c mayor c>d Pseudocdigo: INICIO A, b, c, d Mostrar a, b, c, d? Almacenar a, b, c, d DECIDIR SI (a>b y a>c y a>d) Mostrar a es mayor SI (b>c y b>d) Mostrar b es mayor SI (c>d) Mostrar c es mayor NINGUNA Mostrar d es mayor FIN FIN Prueba de escritorio: a es mayor b es mayor c es mayor d es mayor A 0 23 12 10 2 B 0 13 15 10 2 C 0 8 12 11 2 D 0 12 11 9
a>b
2.
CDIGO EN PHYTON
A=0 B=0 C=0 D=0 E=0 MAYOR= " " print"A,B,C,D,E?" A=input ( ) B=input ( ) C=input ( ) D=input ( ) E=input ( ) if A>B or A>C or A>D or A>E: print A,"MAYOR" else: if B>A or B>C or B>D or B>E: print B,"MAYOR" else: if C>A or C>B or C>D or C>E: print C,"MAYOR" else: if D>A or D>B or D>C or D>E: print D,"MAYOR" else: if E>A or E>B or E>C or E>D: print E,"MAYO
2. Nancy presento 4 pruebas finales, siendo sus calificaciones 9.5, 6.8, 9.2 y 8.8. Utilizar el modelo de las 6Ds para desarrollar un programa para calcular e imprimir el promedio de Nancy. Anlisis del Problema: Datos de entrada: a, b, c, d (Real); Nombre (Texto) Datos de salida: Promedio Datos auxiliares: Promedio= (a+b+c+d)/4 promedio Diagrama de clase = a b c d a=input (a?) b=input (b?) c=input (c?)
d=input (d?)
P= (a+b+c+d)/4 Pseudocdigo: INICIO a, b, c, d (Real) Nombre (Texto) Promedio (Real) MOSTRAR Calificacin a: ALMACENAR a MOSTRAR Calificacin b: ALMACENAR b MOSTRAR Calificacin c: ALMACENAR c MOSTRAR Calificacin d: ALMACENAR d MOSTRAR Nombre: ALMACENAR Nombre CALCULAR Promedio= (a+b+c+d)/4 MOSTRAR Nombre, tiene, Promedio, de Prueba de escritorio: Memoria Monitor Calificacin a 9.5 Calificacin b 6.8 Calificacin c 9.2 Calificacin d 8.8 Nombre Nancy-Ana Nancy-Ana tiene 8.5 de Promedio a 0 9.5 b 0 6.8 c 0 9.2 d 0 8.8 Nombre Nancy-Ana
DIAGRAMA DE FLUJO:
INICIO
Calificacin d
Nombre
Calificacin c
CDIGO EN PHYTON a=0 b=0 c=0 d=0 promedio=0 nombre='' print 'Dame primera calificacin' a=input() print 'Dame segunda calificacin' b=input() print'Dame tercera calificacin' c=input() print'Dame cuarta calificacin' d=input() print'Dime t nombre' nombre=input() promedio=(a+b+c+d)/4 print nombre,'tiene',promedio,'de promedio' 6
3. Hacer un programa que lea dos nmeros enteros y sin multiplicarlos diga si el producto es positivo o negativo.
Datos de entrada: a, b (Enteros) Datos de salida: positivo o negativo Datos auxiliares: positivo +a -a
+b -b Negativo -a +a +b -b Pseudocdigo: INICIO A= 0 B= 0 MOSTRAR a? ALMACENAR a MOSTRAR b? ALMACENAR b DECIDIR SI (a>0 y b>0) o (a<0 y b<0) MOSTRAR Positivo SI (a<0 y b>0) o (a>0 y b<0) MOSTRAR Negativo FIN NINGUNA Resultado cero FIN FIN
Positivo o Negativo a b If a>0 y b>0 If a<0 y b<0 print ( ) If a<0 y b>0 If a>0 y b<0 print ( )
Prueba de escritorio:
0 a 0 23 -8 3 -1 b 0 18 -3 -3 4
Diagrama de flujo
Negativo
8
Resultado cero
4. Hacer un programa que lea dos nmeros; si el primero es mayor el segundo que haga una resta; si el segundo es mayor el primero que haga una suma; y si son iguales que los divida.
Diagrama de clase:
operaciones
resultado2=a+b
resultado 3=0 print ( )
Pseudocdigo
INICIO a= 0 b= 0 PEDIR a? GUARDAR a PEDIR b? GUARDAR b DECIDIR SI a>b Resultado 1= 0 Resultado 1= a-b MOSTRAR resultado 1 FIN SI b>a Resultado 2= 0 Resultado 2= a+b MOSTRAR resultado 2 FIN NINGUNO Mostrar 1 FIN
10
Diagrama de flujo:
INICIO 1
11
a, b
a>b
b>a
resultado 1 Fin
de energa calorfica en un cuerpo. Existen 4 escalas para medir la temperatura: Fahrenheit, Celsius, Kelvin y Rankin. Muchos experimentos de laboratorio requieren la conversin de una escala a otra. Por ejemplo para convertir de Fahrenheit a Celsius, se restan 32 grados de la temperatura en Fahrenheit y la diferencia se multiplica por 5/9; Para convertir Celsius a Kelvin, se le suman 273 grados a la temperatura en Celsius; y para convertir de Fahrenheit a Rankin, se le suman 460 grados a la temperatura en Fahrenheit. Hacer un programa que calcule e imprima el equivalente de una temperatura del Fahrenheit en las otras tres medidas. 12
Anlisis del problema Datos de entrada: TF Datos de salida: TC, TK, TR Datos auxiliares: TC= (TF-32)*(5/9) TK= TC+273 TR= TF+460 Conversiones de Temperatura
Diagrama de clace :
Pseudocdigo:
INICIO TF, TC, TK, TR (Reales) MOSTRAR Dame TF? ALMACENAR TF CALCULAR TC= (TF-32)*(5/9) MOSTRAR TC= TC CALCULRA TK= TC+273 MOSTRAR TK= TK CALCULAR TR= TF+460 MOSTRAR TR= TR FIN
Prueba de escritorio 478 462 455 TF 0 18 2 -5 TC 0 -7.7 -16.6 20.5 TK 0 265.3 256.4 252.5 TR 0
13
CDIGO EN PHYTON
F=0 C=0 K=0 R=0 print 'Dame temperatura F' F=input( ) C=(F-32)*(5/9) K=C+273 R=F+460 print 'TF=',F print 'TC=',C print 'TK=',K print 'TR=',R
6. Hacer un programa que lea la matrcula de un alumno, y 3 calificaciones para este, que
calcule el promedio y que imprima la informacin leda y calculada, as como un mensaje de Aprobado o Reprobado, segn sea el caso. Anlisis del Problema: Datos de entrada= M.A y Calificaciones Datos de salida= Promedio, 7.0= Aprobado y 6.9= Reprobado Datos auxiliares= Promedio= (a+b+c)/3
Matricula y Calificaciones M.A Calificaciones Promedio 7.0= Aprobado 6.9= Reprobado print Dame Calif. a Calif a=input ( ) print Dame Calif. b Calif. b=input ( ) print Dame Calif. c Calif. c=input ( ) Promedio= (a+b+c)/3 If Promedio 7.0 print Aprobado If Promedio 6.9 print Reprobado 14
Pseudocdigo:
INICIO DECLARAR= M.A, Calificaciones, Promedio, 7.0= Aprobado y 6.9= Reprobado MOSTRAR Dame M.A ALMACENAR M.A MOSTRAR Dame Calif. a ALMACENAR Calif. a MOSTRAR Dame Calif. b ALMACENAR Calif. b MOSTRAR Dame Calif. c ALMACENAR Calif. c CALCULAR Promedio= (a+b+c)/3 DECIDIR SI Promedio 7.O MOSTRAR Aprobado FIN SI Promedio 6.9 MOSTRAR Reprobado FIN FIN
Prueba de escritorio:
8.0 Aprobado 5.6 Reprobado 8.0 Aprobado M.A 0 3104987 2211334 1234567
A
0 8 6 10
B
0 7 5 8 0 9 6 6
C
15
Calificacion c
Dame M.A
Promedio= (a+b+c)/3
M.A Promedio 7 Dame Calificacion a FIN Calificacion a Promedio 6.9 Dame Calificacion b FIN 2 FIN Reprobado Aprobado
16
Pseudocdigo:
INICIO c= 0 MQ c<5 MOSTRAR Hola c=c+1 Fin MQ FIN
Prueba de escritorio:
Hola Hola Hola Hola Hola c 0 1 2 3 4 5
INICIO
c=0 17 MQ c<5
Hola
c=c+1
Fin MQ
FIN
Diagrama de clase:
C C+1 PARA C=0, 10, +1 MQ C<10 print ( ) input ( )
18
Pseudocdigo:
INICIO C= 0 (Entero) PARA C= 0, 10, +1 MOSTRAR C+1 FIN PARA FIN
Prueba de escritorio:
1 2 3 4 5 C 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10
INICIO C=0
19
Diagrama de clase:
C PARA C=10, 0, -1 while >10 print ( ) input ( )
Pseudocdigo:
INICIO C= 0 (real) C= 10(real) MQ C10 MOSTRAR C C= C-1 FIN MQ FIN
20
Prueba de escritorio:
10 9 8 7 6 C 0 10 9 8 7 6 5 4 3 2 1 5 4 3 2 1 1 2
MQ C10 C
2 1
10. Hacer un programa que pida un nmero positivo e imprima una serie desde ese nmero hasta cero, de 1 en 1. Anlisis del Problema:
Datos de entrada: C Datos de salida: serie desde C hasta 1 Datos auxiliares: C= C-1 Serie de 1 en 1
Diagrama de clase:
c MQ c>0 print ( ) input ( ) c=c-1
21
Pseudocdigo:
INICIO C= 0 MOSTRAR C? ALMACENAR C MQ C>0 MOSTRAR C C= C-1 FIN MQ FIN
Prueba de escritorio:
7 6 5 4 C 7 6 5 4 3 2 1
2 FIN MQ FIN
CDIGO EN PHYTON c=0 print "c?" c=input ( ) while c>0: print c c=c-1 22
11. Hacer un programa que imprima solo nmeros pares del 0 al 100. Anlisis del problema:
Datos de entrada: C+2 Datos de salida: C Datos auxiliares: MQ C<100 Numeros pares c PARA c=0, 100, +2 print ( ) input ( )
Pseudocdigo:
INICIO C= 0 MQ C<100 MOSTRAR C+2 C=C+2 FIN MQ FIN
Prueba de escritorio:
2 4 6 8 C 0 2 4 6 8 10 12 14 16
10 12 14 16
23
c 1
CDIGO EN PHYTON
12. Hacer el diagrama de flujo que pida un nmero inicial, el incremento y el nmero final. Anlisis del Problema:
Datos de entrada: a, b, c Datos de salida: a Datos auxiliares: a= a+b MQ a<c
24
Numero inicial, Incremento y Numero final
diagrama de clase:
a b c MQ a<c print ( ) a= a+b input ( )
Pseudocdigo:
INICIO a, b, c (Entero) Mostrar Dame el # inicial Almacenar a MOSTRAR Cunto se va a incrementar? ALMACENRA b MOSTRAR Hasta donde se tiene que llegar? ALMACENAR c MQ a<c MOSTRAR a a=a+b FIN MQ FIN
Prueba de escritorio:
Dame el # inicial 5 Cunto se va a incrementar? 10 Hasta dnde se tiene que llegar? 17 5 15 a 0 5 15 25 b 0 10 c 0 17
INICIO
25
.
a=0 b=0 c=0
CDIGO EN PHYTON
print "Dame el numero inicial" a=input ( ) print "Cunto se va a incrementar?" b=input ( ) print "Hasta dnde se tiene que llegar?" c=input ( ) while a<c: print a a=a+b
13. Hacer el diagrama de flujo de un programa que muestre la tabla de multiplicar del 7.
*Anlisis del Problema: Datos de entrada: a, b, c Datos de salida: b=7 Datos auxiliares: PARA a= 1, 11, +1 Tabla del 7
26
diagrama de clase:
a b c PARA a=1, 11, +1 c=a*b print ( ) input ( )
Pseudocdigo:
INICIO a, b, c b= 7 PARA a= 1, 11, +1 c=a*b MOSTRAR a, *, b, =, c FIN PARA FIN
Prueba de escritorio:
7 14 21 28 a 1 2 3 4 b 7 7 7 7 c 7 14 21 28
INICIO
27
a=0 b=0 c=0 b=7 PARA a=1, 11, +1 c=a*b a, *, b, =, c FIN PARA
FIN CDIGO EN PHYTON a=0 b=0 c=0 print "b?" b=input ( ) rango=range(1,11) for a in rango : c=b*a print b,"*",a,"=",c
14. Anlisis del Problema: Datos de entrada: a, b (Enteros) Datos de salida: a Datos auxiliares: MQ a<b Problema a b MQ a<b print ( ) input ( )
28
Pseudocdigo:
INICIO a, b (Enteros) MOSTRAR a? ALMACENAR a MQ a<b MOSTRAR a, *, b, =, a*b CALCULAR a=a+1 FIN MQ FIN
Prueba de escritorio:
a= 10 5*10=50 6*10=60 7*10=70 a 0 5 6 7 b= 5 8*10=80 9*10=90 b 0 10
8 9 10
29
a FIN MQ 1 FIN
CDIGO EN PHYTON c=0 x=0 a=0 print 'c,x?' c=input ( ) x=input ( ) while c<x: a=a+c c=c+1
30
Pseudocdigo:
INICIO C=97 X=0 MQ C<100 X=X+C C=C+1 FIN MQ MOSTRAR C, ,, X FIN
Prueba de escritorio:
100, C 97 98 99 100 294 X 0 97 195 294
31
CDIGO EN PHYTON c=97 x=0 while c<100: x=x+c c=c+1 print c,',',x
Fin.
32