Professional Documents
Culture Documents
GRUPO: 6151.
EJERCICIO 1
DESCRIPCIN DEL PROBLEMA. La temperatura es una medida de concentracin o intensidad de energia 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 a Fahrenheit a Celsius, se restan 32 grados de la temperatura de Fahrenheit y la diferencia se multiplica por 5/9; para convertir de 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 en Fahrenheit en las otras tres medidas. ANLISIS DEL PROBLEMA. Datos de entrada: F Datos de salida: K, C, R Datos auxiliares: C: F 32 (5/9) R: F + 460 K: [(5/9) F 32] + 273 PSEUDO-CODIGO INICIO DECLARAR K, C, R, F (REALES) MOSTRAR DAME F ALMACENAR F CALCULAR C: F 32 (5/9) MOSTAR C CALCULAR R: F + 460 MOSTAR R CALCULAR K: [(5/9) F 32] + 273 MOSTAR K FIN
FIN PRUEBA DE ESCRITORIO MONITOR "Dame la temperatura en Fahrenheit" R 120 enter 0 0 Conversin a Celsius= 48 580 Conversin a Kelvin= 321 Conversin a Rankin= 580 120 F C 0 MEMORIA K 0 48 321
CDIGO EN PHYTON F=0 C=0 K=0 R=0 print 'Dame la 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
EJERCICIO 2
DESCRIPCIN DEL PROBLEMA. Nancy presento 4 pruebas finales, siendo sus calificaciones 9.5, 6.8, 9.2 y 8.8 utilizar el modelo de las 6 Ds para desarrollar un programa para calcular e imprimir su promedio de Nancy. Datos de entrada: calificaciones = c1, c2, c3 y c4 Datos de salida: suma de calificaciones=SC, promedio = P Datos auxiliares: SC= c1+ c2+ c3 + c4 P=SC/4 ALGORITMO INICIO c1, c2, c3 y c4, SC, P (Reales) Preguntar dame tus calificaciones Almacenar c1, c2, c3, c4 Calcular SC= c1+ c2+ c3 + c4 Calcular P=SC/4 Mostrar tu promedio es, P FIN PSEUDO-CODIGO INICIO c1, c2, c3 y c4, SC, P (Reales) Mostrar dame tus calificaciones Almacenar c1, c2, c3, c4 Calcular: SC= c1+ c2+ c3 + c4 Calcular P=SC/4 Imprimir tu promedio es, P FIN
DIAGRAMA DE FLUJO
MEMORIA
DIAGRAMA DE CLASE.
Promedio Nancy
a b c d promedio nombre
promedio=(a+b+c+d)/4
input ( ) print ( )
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'
EJERCICIO 3
DESCRIPCIN DEL PROBLEMA. Una formula para convertir kilogramos a libras, es P=2.2 (K), donde P son las libras y K los kilogramos. Utilizar el modelo de las 6Ds para desarrollar un programa que solicite una cantidad en kilogramos y la convierta a libras. ANLISIS DEL PROBLEMA. Datos de entrada: Kilogramos = K Datos de salida: libras = P Datos auxiliares: P=2.2 * K ALGORITMO INICIO K, P (Reales) Preguntar kilogramos Almacenar K Calcular P= 2.2 * K Mostrar tu cantidad en libras es, P FIN PSEUDO-CODIGO Prueba de escritorio MONITOR dame el numero de kilogramos 21 enter la cantidad en libras es,46.2 MEMORIA K 0 21 P 0 46.2 INICIO K, P (Reales) Mostrar kilogramos Almacenar K Calcular: P = 2.2 *K Imprimir tu cantidad en libras es, P FIN DIAGRAMA DE FLUJO
P=0 K=0 print " kilogramos" K=input( ) P=2.2*K print 'tu cantidad en libras es',P
EJERCICIO 4 DESCRIPCIN DEL PROBLEMA. Hacer un programa que lea 2 nmeros enteros y si el primero es mayor que el segundo que haga una resta y si el segundo es mayor que el primero que haga una suma y si son iguales que lo divida. ANLISIS DEL PROBLEMA. Datos de entrada: a, b (enteros) Datos de salida: resultado = 1, resultado = 2, resultado = 3 Datos auxiliares: Si a > b resultado1 = a-b Si b > a resultado2= a+b Si a=b resultado3= a/b resultado3= 1 PSEUDO-CODIGO INICIO a, b (ENTEROS) MOSTRAR a? ALMACENAR a MOSTRAR b? ALMACENAR b DECIDIR SI a> b resultado1 = 0 resultado1 = a-b MOSTRAR resultado 1 FIN SI a> b resultado2= 0
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
MONITOR a? MEMORIA a b
20 ENTER
b?
20
15
15 ENTER 15
DIAGRAMA DE CLASE.
2 Nmeros enteros resta, suma, divisin. a b if a>b: resultado1=a-b if b>a: RESULTADO2=a+b if a==b: resultado3=a/b input ( ) print ( )
a=input ( ) print "b?" b=input ( ) if a>b: resultado1=0 resultado1=a-b print resultado1 if b>a: resultado2=0 RESULTADO2=a+b if a==b: resultado3=0 resultado3=a/b print resultado3
EJERCICIO 5
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima 5 veces HOLA (CICLO PARA) ANLISIS DEL PROBLEMA. Datos de entrada: c (entero) Datos de salida: HOLA Datos auxiliares: PARA c = 0, 5+1 PSEUDO-CODIGO INICIO c = 0 (entero) PARA c = 0, 5 +1 MOSTRAR c FIN PARA FIN DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
MEMORIA c 1 2 3 4 5
DIAGRAMA DE CLASE.
EJERCICIO 6 DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima 5 veces HOLA (CICLO MQ) ANLISIS DEL PROBLEMA. Datos de entrada: c (entero) Datos de salida: HOLA Datos auxiliares: MQ c< 5 c = c+1
PSEUDO-CODIGO INICIO c= O (entero) MQ c <5 MOSTRAR HOLA CALCULAR c = c+1 FIN MQ FIN
DIAGRAMA DE FLUJO
MEMORIA
c= c+1 c= 0+1 c= c+1 c= 1+1 c= c+1 c= 2+1 c= c+1 c= 3+1 c= c+1 c= 4+1
c 0
1 2 3 4 5
DIAGRAMA DE CLASE.
EJERCICIO 7
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima nmeros del 1 al 10 (CICLO PARA) ANLISIS DEL PROBLEMA. Datos de entrada: c (entero) Datos de salida: c+1 Datos auxiliares: PARA c= 0, 10, +1 PSEUDO-CODIGO INICIO c = 0 (entero) PARA c= 0, 10, +1 MOSTRAR c+1 FIN PARA FIN
DIAGRAMA DE FLUJO
DIAGRAMA DE CLASE.
Nmeros 1 al 10 (PARA) c
for i in range (c+9): c=c+1 print ( ) CDIGO EN PHYTON c=1 for i in range (c+9):
print c c=c+1
EJERCICIO 8
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima nmeros del 1 al 10 (CICLO MQ) ANLISIS DEL PROBLEMA. Datos de entrada: c (entero) Datos de salida: c+1 Datos auxiliares: MQ c < 10 c= c +1 PSEUDO-CODIGO INICIO c = 0 (entero) MQ c< 10 MOSTRAR c+1 CALCULAR c = c +1 FIN MQ FIN
DIAGRAMA DE FLUJO
DIAGRAMA DE CLASE.
Nmeros 1 al 10 (MQ) c
while c<=10: c=c+1 print ( ) CDIGO EN PHYTON c=1 while c<=10:
print c c=c+1
EJERCICIO 9
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima nmeros del 10 al 1 (ciclo PARA) Datos de entrada: c (entero) Datos de salida: c Datos auxiliares: PARA c = 10 , 0 1 PSEUDO-CODIGO
INICIO c = 0 (entero) PARA c = 10, 0 1 MOSTRAR c FIN PARA FIN
DIAGRAMA DE FLUJO
= = = = = = = =
10 1 91 81 71 61 51 41 31
1 0
2 1
c=21
DIAGRAMA DE CLASE.
Nmeros 10 al 1 (PARA) c
for i in range(10): c=c-1 print ( )
EJERCICIO 10
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima nmeros del 10 al 1 (ciclo MQ) Datos de entrada: c (entero) Datos de salida: c Datos auxiliares: MQ c > = 10 c = c -1
PSEUDO-CODIGO INICIO c = 0 (entero) MQ c > = 10 MOSTRAR c CALCULAR c = c -1 FIN MQ FIN DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
MONITOR MEMORIA c 10 9 8 7 6 5 4 3 2 1 0 10 9 8 7 6 5 4 3 2 c=10-1 c=9-1 c=8-1 c=7-1 c=6-1 c=5-1 c=4-1 c=3-1 c=2-1
DIAGRAMA DE CLASE.
Nmeros 10 al 1 (MQ) c
while c>=1: c=c-1 print ( )
EJERCICIO 11
DESCRIPCIN DEL PROBLEMA Hacer un programa que pida un nmero positivo e imprima una serie de ese nmero hasta cero de uno en uno. (Ciclo MQ) ANLISIS DEL PROBLEMA. Datos de entrada: c (entero) Datos de salida: serie de nmeros desde c hasta 1 Datos auxiliares: MQ c > 0 c = c +1 PSEUDO-CODIGO INICIO c = 0 (entero) MOSTRAR c? MQ c > 0 MOSTRAR c CALCULAR c = c +1 FIN MQ FIN DIAGRAMA DE FLUJO
EJERCICIO 12
DESCRIPCIN DEL PROBLEMA Hacer un programa que lea dos nmeros enteros y sin multiplicarlos diga si es el producto positivo o negativo. ANLISIS DEL PROBLEMA. Datos de entrada: a, b (enteros) Datos de salida: POSITIVO O NEGATIVO Datos auxiliares: Si a>0 y b>0 POSITIVO Si a<0 y b<0 POSITIVO Si a>0 y b<0 NEGATIVO Si a<0 y b>0 NEGATIVO PSEUDO-CODIGO INICIO a=0 (enteros) b=0 (enteros) MOSTRAR ALMACENAR
MOSTRAR ALMACENAR DECIDIR SI (a>0 y b>0) (a<0 y b<) MOSTRAR POSITIVO FIN SI (a>0 y b<0) (a<0 y b>0) MOSTRAR NEGATIVO FIN NINGUNA "b?" b
"a?" a
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO MONITOR "a?" 5 enter b? 5 enter Resultado cero DIAGRAMA DE CLASE.
MEMORIA a 0 5 b 0 5
a b if a>0 and b>0 or a<0 and b<0: if a>0 and b<0 or a<0 and b>0:
input ( ) print ( )
CDIGO EN PHYTON a=0 b=0 print"a?" a=input ( ) print"b?" b=input ( ) if a>0 and b>0 or a<0 and b<0: print "POSITIVO" if a>0 and b<0 or a<0 and b>0: print "NEGATIVO" else: print 'Resultado Cero'
EJERCICIO 13
DESCRIPCIN DEL PROBLEMA Hacer un programa que imprima solo nmeros pares del 0 al 100. (Ciclo PARA).Esttico ANLISIS DEL PROBLEMA. Datos de entrada: c (entero)
Datos de salida: serie de nmeros pares de 0 al 100 Datos auxiliares: PARA c=0, 100, +2 PSEUDO-CODIGO INICIO c= 0 (entero) PARA c=0, 100, +2 MOSTRAR FIN PARA FIN DIAGRAMA DE FLUJO c
5 6 7 8 9. 99 100
3 4 5 6 7 8 9 99
DIAGRAMA DE CLASE.
EJERCICIO 14
DESCRIPCIN DEL PROBLEMA Hacer un diagrama de flujo que pida un nmero inicial el incremento y el nmero final. (DINAMICO). ANLISIS DEL PROBLEMA. Datos de entrada: a, b, c (enteros) Datos de salida: a Datos auxiliares: a= a+b PSEUDO-CODIGO INICIO
a= 0 (entero) b=0 (entero) c=0 (entero) MOSTRAR Dame el numero inicial ALMACENAR a MOSTRAR Cunto se va a incrementar? ALMACENAR b MOSTRAR Hasta dnde se tiene que llegar? ALMACENAR c MQ a<c MOSTRAR a CALCULAR a=a+b FIN MQ FIN
DIAGRAMA DE FLUJO
Dame el numero inicial c 3 enter 17 Cunto se va a incrementar? 5 enter Hasta dnde se tiene que llegar? 17 enter 3 8 13 18 DIAGRAMA DE CLASE.
a 3 8 13
b 5
CDIGO EN PHYTON a=0 b=0 c=0 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
EJERCICIO 15
DESCRIPCIN DEL PROBLEMA Hacer un diagrama de flujo de un programa que muestre la tabla de multiplicar del 7. (CICLO PARA) (ESTATICO). ANLISIS DEL PROBLEMA. Datos de entrada: a, b, c (enteros) Datos de salida: La tabla de multiplicar del 7 1*7=7 2*7=14 3*7=21. 10*7=70 Datos auxiliares: PARA a=1, 11, +1 c=a*b PSEUDO-CODIGO INICIO a= 0 (entero) b=0 (entero) c=0 (entero) b=7 PARA a=1, 11, +1
PRUEBA DE ESCRITORIO Monitor 0*7=0 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 8*7=56 9*7=63 10*7=70
Memoria a 1 2 3 4 5 6 7 8 9 10 b 7 7 7 7 7 7 7 7 7 7 c 0 7 14 21 28 35 42 49 56 63 70
DIAGRAMA DE CLASE.
EJERCICIO 16
DESCRIPCIN DEL PROBLEMA Hacer un diagrama de flujo de un programa que muestre la tabla de multiplicar del 1 al 10 con solo dos variables. (CICLO PARA) (DINAMICO). ANLISIS DEL PROBLEMA. Datos de entrada: a, b, (enteros) Datos de salida: La tabla de multiplicar del 1 al 10 Datos auxiliares: PARA a=1, 11, +1 a*b PSEUDO-CODIGO INICIO a= 0 (entero) b=0 (entero) PARA a=1, 11, +1 MOSTRAR Tabla del ,a,: FIN PARA PARA b=1, 11, +1 MOSTRAR a,*,b,=a*b FIN PARA FIN
DIAGRAMA DE FLUJO
La tabla del 1: 1*1=1 1*2=2 1*3=3. La tabla del 2: 3 2*1=2 2*2=4 2*3=6. 3. La tabla del 10: 10*1=10 10*2=20 3 10*3=30 10 10*10=100 DIAGRAMA DE CLASE.
a 0 1 1 1 2 2 2 10 10 10 10
b 0 1 2
1 2
1 2
Tabla de multiplicar del 1 al 10 con solo dos variables (PARA) (CONTADORES) (DINAMICO) producto factor elemento
rango=range(1,11) for a in rango : producto=factor * elemento input ( ) print ( )
EJERCICIO 17 DESCRIPCIN DEL PROBLEMA (CICLO MQ) (ACUMULADORES) (ESTATICO). ANLISIS DEL PROBLEMA. Datos de entrada: x, c=97 (enteros) Datos de salida: x+c Datos auxiliares: MQ c<100 PSEUDO-CODIGO INICIO c=97 (entero) x= 0 (entero) MQ c<100 CALCULAR x=x+c CALCULAR c=c+1 FIN MQ MOSTRAR c,,,x FIN DIAGRAMA FLUJO DE
DIAGRAMA DE CLASE.
print c,',',x
EJERCICIO 18
DESCRIPCIN DEL PROBLEMA (CICLO MQ) (ACUMULADORES) (DINAMICO). ANLISIS DEL PROBLEMA. Datos de entrada: c,x,a (enteros) Datos de salida: c-a Datos auxiliares: MQ c<x PSEUDO-CODIGO INICIO c=0 (entero) x= 0 (entero) a=0 (entero) MOSTRAR c,x?
ALMACENAR c,x MQ c<x CALCULAR a=a+c CALCULAR c=c+1 FIN MQ MOSTRAR c,-,a FIN DIAGRAMA DE FLUJO
DIAGRAMA DE CLASE.
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 print c,'-',a
EJERCICIO 19
DESCRIPCIN DEL PROBLEMA Hacer un Programa que imprima Positivo si es mayor que cero, que imprima Negativo si es menor a cero y que imprima Cero si ninguna de las dos anteriores se cumplen. (Dinmico) ANLISIS DEL PROBLEMA. Datos de entrada: a (entero) Datos de salida: a Positivo Negativo Cero Datos auxiliares: SI a>0 a Positivo Si a<0 a Negativo
Ninguno Cero
PSEUDO-CODIGO INICIO a =0 (entero) MOSTRAR ALMACENAR DECIDIR SI a>0 MOSTRAR Positivo FIN SI a<0 MOSTRAR Negativo FIN NINGUNA MOSTRAR Cero a? a
FIN
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
MEMORIA a 0 -7 10 0
DIAGRAMA DE CLASE. NEGATIVO, POSITIVO, CERO. a if a>0: if a<0: if a==0: input ( ) print ( )
CDIGO EN PHYTON
a=0 print "a?" a=input ( ) if a>0: print "Positivo" if a<0: print "Negativo" if a==0:
print "Cero"