Está en la página 1de 5

DESARROLLO TALLER MODULO 1 Y PRIMERA PARTE MODULO 2 1.

para los siguientes problemas, realice los tres primeros pasos de la metodologa de programacin, es decir, Anlisis o Dialogo, Especificacin y Diseo del Algoritmo. a) ESPECIFICACION: Entradas: Jarras A y B con capacidades de 3 y 7 litros respectivamente. Salidas: Jarra A con 1 litro en su interior Condiciones: 1. llenar totalmente cualquiera de las dos jarras 2. vaciar una de las dos jarras en la otra hasta que la jarra origen este vaca o hasta que la jarra destino este llena. 3. vaciar el contenido de una jarra (este llena o no) en un sifn. DISEO ALGORITMO: 1. Inicio 2. Ver si estn con lquido las jarras A y B 2.1Si s, entonces 2.1.1Desocuparlas en el sifn 2.2Si no, entonces 2.2.1Llenar la jarra B (7 litros) completamente 3. Est llena la jarra B? 3.1Si no entonces 3.1.1Seguir llenando 3.2Si s entonces 3.2.1Llenar la jarra A (3 litros) con el lquido de la jarra B 4. Est llena la jarra A? 4.1Si no entonces 4.1.1Seguir llenando 4.2Si s entonces 4.2.1Parar de llenar 4.2.2Desocupar el contenido de la jarra A en el sifn 5Ya repiti proceso? 5.1Si no entonces 5.1.1Repetir una vez paso 3. 2.1 con el lquido de la jarra B y seguir proceso 5.2Si s entonces 5.2.1Romper proceso de repetir 5.2.2Seguir con el siguiente paso 6Con el lquido sobrante de la jarra B pasarlo a la jarra A 7Esta con lo que quedo de contenido la jarra B en la jarra A? 7.1Si no entonces 7.1.1Seguir llenando 7.2Si s entonces 7.2.1Se tiene 1 litro en la jarra A 8. Fin b) ESPECIFICACION: Entradas: 2 jugadores , rango del numero 1 a 100 , aleatoriamente escoger un numero

Salidas: Ganador Condiciones: 1. Cada nio posee un turno en el que trata de averiguar el numero del otro. 2. En su turno el primer nio pregunta si un numero que dice es el pensado por el segundo 3. Si el numero que ha dicho el primer nio es el que pens el segundo, este ultimo debe informarle al primero que gano 4. Si el numero no es el segundo nio debe decir si su numero pensado es menor o mayor al que el primer nio dijo. 5. Luego el segundo nio tiene su turno y de esta manera se van intercalando hasta que alguno de los dos gane. DISEO DE ALGORITMO: 1. Inicio 2. Identificar jugadores 3. El nmero de jugadores es diferente de 2 3.1Si s entonces 3.1.1Fin 3.2Si no entonces 3.2.1Elegir el rango de 1 a 100 3.2. Seguir proceso 4. Elegir aleatoriamente el primer turno 5. Ganador de turno designarlo como jugador 1 y el otro como jugador 2 6. El jugador 2 pensar un numero del rango 6.1. Si no entonces 6.1.1. Seguir pensando 6.1.2. Jugador 1 esperar 6.2. Si s entonces 6.2.1. Informar al jugador 1, que ya lo pens 7. El jugador 1 dice un nmero que este en el rango 8.s el nmero que pens el jugador 2? 8.1Si s entonces 8.1.1. Ganador jugador 1 8.1.2Fin 8.2. Si no entonces 8.2.1Jugador 2 decirle al jugador 1, si el numero dicho es mayor o menor al que pens 9. Cambiar turno 10. El jugador 1 pensar un numero del rango 10.1Si no entonces 10.1.1Seguir pensando 10.1.2Jugador 2 esperar 10.2. Si s entonces 10.2.1Informar al jugador 2, que ya lo pens 11. El jugador 2 dice un nmero que este en el rango 12.s el nmero que pens el jugador 1? 12.1Si s entonces

12.1.1. Ganador jugador 2 12.1.2. Fin 12.2Si no entonces 12.2.1Jugador 1 decirle al jugador 2, si el numero dicho es mayor o menor al que pens 12.2.2Repetir pas 6 Hasta que haya ganador. 2. PUNTO ANEXO 3. si tiempo, velocidad y peso son variables de tipo real; contador, itera y suma son de tipo entero; letra y primo son de tipo carcter y bandera es de tipo booleano evaluar las siguientes expresiones. SOLUCION Primero declaramos las variables as: Tiempo: 3.0 Velocidad:-4.5 Peso: 8.0 Contador: 5 Itera:-2 Suma: 30 Letra: p Primo: t Bandera: falso

a) itera +piso (tiempo + velocidad) / (suma+itera) Lo primero que tenemos que hacer es remplazar los valores correspondientes a cada variable -2 + piso (3.0+ (-4.5)) / (30+ (-2)) Empezamos a operar segn la precedencia de los operadores -2+piso (3.0-4.5)/ (30-2)

-2+piso (-1.5)/ (28) -2+ (-2)/(28) -2+ (-1/14) -2-(1/14) =-29/14

b) letraprimo y techo (tiempo)/piso (velocidad) + cuenta <5 Como primero sustituyamos los valores correspondientes a cada variable p t techo (3.0)/piso (-4.5)+ cuenta<5 p t (3.0/-5)+ cuenta<5 p t cuenta<5-3.0/-5 p t cuenta<28/5

c) peso*velocidad / (tiempo+5.6) En primera instancia sustituimos los valores de las variables 8.0*-4.5/(3.0+5.6) 8.0*-4.5/(8.6) -36/8.6= 4.18

d) contador + ((itera)*(itera)*suma) /4-itera Remplazamos los valores de las variables 5+ ((-2)*(-2)*30)/4 (-2) 5+ (-2*-2*30)/4+2 5+ (4*30)/4+2 5+ (120)/4+2 5+120/6

5+20=25

e) bandera (tiempo) (peso*velocidad) Remplazamos los valores de las variables

Falso Falso Falso Falso

(3.0) (8.0*-4.5) (3.0) (-36) 1.7 -36 falso

Luego es falso F) contador < suma tiempo >1.0 ~ (suma=itera) Remplazamos los valores de las variables 5<30 3.0 >1.0 ~ (30=-2)

Verdadero verdadero Luego es verdadero 4. PROGRAMA ANEXO (EXTENSION .CPP)

También podría gustarte