[2016-24-05]
CLASE 17:
Se Desarrollaron Algunos ejercicios:
Se Desarrollaron Algunos ejercicios:
Ejercicio en Pseint:
SEGUNDO EJERCICIO EN Pseint
Ejercicios de Repaso Para el Acumulativo:
1. Realizar un programa
que le presente un menú al usuario con las siguientes opciones: lo desarrollan
todos - 1. Leer dos números enteros positivos únicamente, 2. Sumar los dos
números leídos, 3. Restarle al primer número el segundo (siempre y cuando el primero
sea mayor que él segundo, en caso contrario indicar con un mensaje que la
operación no es posible realizarla y volver al menú principal, 4. Multiplicar
los dos números (siempre y cuando ninguno de los números sea igual a cero, en
caso contrario indicar con un mensaje que la operación no es posible realizarla
y volver al menú principal,), 5. Dividir el primer número dado por el segundo,
6 Salir Nota: Se debe garantizar que el usuario haya ingresado los dos números
antes de poder realizar cualquier operación y que no se puede escribir un
resultado sin la realización de una operación.
Proceso sin_titulo
numero1 = -1
numero2 = -1
ya_se_digito_los_numeros = "no"
Repetir
Escribir ""
Escribir "****************************************************************"
Escribir "* 1. Leer dos nœmeros enteros positivos unicamente. *"
Escribir "* 2. Sumar los dos nœmeros leidos. *"
Escribir "* 3. Restarle al primer nœmero el segundo. *"
Escribir "* 4. Multiplicar los dos nœmeros. *"
Escribir "* 5. Dividir el primer nœmero dado por el segundo. *"
Escribir "* 6. Salir. *"
Escribir "****************************************************************"
Escribir ""
Leer opciones
Escribir ""
Segun opciones Hacer
1:
Escribir ""
Escribir "1. Leer dos nœmeros enteros positivos œnicamente."
Escribir ""
Escribir "Digite el Primer Numero"
Leer numero1
Escribir "Digite el Segundo Numero"
Leer numero2
ya_se_digito_los_numeros = "no"
Si numero1 > 0 Entonces
Si numero2 > 0 Entonces
ya_se_digito_los_numeros = "si"
Sino
numero1 = -1
numero2 = -1
Escribir "Hace falta digitar un numero entero Positivo en el Segundo Valor"
Fin Si
Sino
numero1 = -1
numero2 = -1
Escribir "Hace falta digitar un numero entero Positivo en el Primer Valor"
Fin Si
2:
Escribir ""
Escribir "2. Sumar los dos nœmeros leidos."
Escribir ""
Si ya_se_digito_los_numeros = "si" Entonces
Escribir "Suma de los dos numeros = ( " numero1 " + " numero2 " = " ( numero1 + numero2 ) " )"
Sino
Escribir ""
Escribir "****************************************************************"
Escribir "* Hace falta digitar los dos numeros *"
Escribir "****************************************************************"
Escribir ""
Fin Si
3:
Escribir ""
Escribir "3. Restarle al primer nœmero el segundo."
Escribir ""
Si ya_se_digito_los_numeros = "si" Entonces
Si numero1 > numero2 Entonces
Escribir "Resta de los dos numeros = ( " numero1 " - " numero2 " = " ( numero1 - numero2 ) " )"
Sino
Escribir "La operaci—n no es posible realizarla."
Fin Si
Sino
Escribir ""
Escribir "****************************************************************"
Escribir "* Hace falta digitar los dos numeros *"
Escribir "****************************************************************"
Escribir ""
Fin Si
4:
Escribir ""
Escribir "4. Multiplicar los dos nœmeros."
Escribir ""
Si ya_se_digito_los_numeros = "si" Entonces
Si numero1 > 0 Entonces
Si numero2 > 0 Entonces
Escribir "Multiplicacion de los dos numeros = ( " numero1 " * " numero2 " = " ( numero1 * numero2 ) " )"
Sino
Escribir "No se puede Multiplicar porque el Segundo Numero es Cero."
Fin Si
Sino
Escribir "No se puede Multiplicar porque el Primer Numero es Cero."
Fin Si
Sino
Escribir ""
Escribir "****************************************************************"
Escribir "* Hace falta digitar los dos numeros *"
Escribir "****************************************************************"
Escribir ""
Fin Si
5:
Escribir ""
Escribir "5. Dividir el primer nœmero dado por el segundo."
Escribir ""
Si ya_se_digito_los_numeros = "si" Entonces
Si numero2 <> 0 Entonces
Escribir "Division de los dos numeros = ( " numero1 " / " numero2 " = " ( numero1 / numero2 ) " )"
Sino
Escribir "No se puede Dividir porque el Segundo Numero es Cero."
Fin Si
Sino
Escribir ""
Escribir "****************************************************************"
Escribir "* Hace falta digitar los dos numeros *"
Escribir "****************************************************************"
Escribir ""
Fin Si
6:
Escribir ""
Escribir "****************************************************************"
Escribir "* HASTA LUEGO. *"
Escribir "****************************************************************"
Escribir ""
De Otro Modo:
Escribir ""
Escribir "****************************************************************"
Escribir "* Opcion No VALIDA. *"
Escribir "****************************************************************"
Escribir ""
Fin Segun
Hasta Que opciones = 6
FinProceso
2. Desarrollar un algoritmo que permita
realizar la sumatoria de los primeros 100 números utilizando los 3 ciclos
(para, repita, mientras).
Proceso sin_titulo
cantidad_de_numeros = 100
suma = 0
Para i<-0 Hasta cantidad_de_numeros Con Paso 1 Hacer
suma = suma + i
Fin Para
Escribir ""
Escribir "CICLO FOR -> Sumatoria de los primeros " cantidad_de_numeros " es = " suma
Escribir ""
suma = 0
i = 0
Repetir
i = i + 1
suma = suma + i
Hasta Que i > ( cantidad_de_numeros - 1)
Escribir ""
Escribir "CICLO REPETIR HASTA -> Sumatoria de los primeros " cantidad_de_numeros " es = " suma
Escribir ""
suma = 0
i = 0
Mientras i < cantidad_de_numeros Hacer
i = i + 1
suma = suma + i
Fin Mientras
Escribir ""
Escribir "CICLO HACER MIENTRAS -> Sumatoria de los primeros " cantidad_de_numeros " es = " suma
Escribir ""
FinProceso
3. Cree un algoritmo que capture un mes
en números y el software muestre un mensaje que indique cuantos días tiene ese
mes. Ejemplo: si se digita "07", el algoritmo debe mostrar
"Julio, tiene treinta un días". El algoritmo debe también advertir
que si se trata de febrero tiene 28 días, pero si el año fuera bisiesto tendría
29.
Proceso sin_titulo
Dimension mes[12]
mes[1]='Enero'
mes[2]='Febrero'
mes[3]='Marzo'
mes[4]='Abril'
mes[5]='Mayo'
mes[6]='Junio'
mes[7]='Julio'
mes[8]='Agosto'
mes[9]='Septiembre'
mes[10]='Octubre'
mes[11]='Noviembre'
mes[12]='Diciembre'
Escribir "Digite un numero entre 1 y 12"
Leer n
es_bisiesto = ""
Si (n>=1) && (n<=12) Entonces
Segun n Hacer
1, 3, 5, 7, 8, 10, 12:
maximo_dia_mes = 31
2:
maximo_dia_mes = 28
es_bisiesto = ", pero si fuera A–o Bisiesto tendria 29 dias."
4, 6, 9, 11 :
maximo_dia_mes = 30
Fin Segun
Escribir mes[n] " tiene " maximo_dia_mes " dias " es_bisiesto
Sino
Escribir "Debe digitar un valor de mes entre 1 y 12"
Fin Si
FinProceso
4. Se requiere que solo con la
utilización de ciclos y condicionales, usted pueda convertir un número decimal
< a 5000 a número Romano.
Proceso sin_titulo
Escribir "Digite un numero entre 1 y 5000"
Leer decimal
Si (decimal>=1) && (decimal<=5000) Entonces
Escribir "********* Conversion a Romano *********"
Dimension unidad[10]
DImension decenas[10]
Dimension centenas[10]
Dimension miles[6]
unidad[1]=''
unidad[2]='I'
unidad[3]='II'
unidad[4]='III'
unidad[5]='IV'
unidad[6]='V'
unidad[7]='VI'
unidad[8]='VII'
unidad[9]='VIII'
unidad[10]='IX'
decenas[1]=''
decenas[2]='X'
decenas[3]='XX'
decenas[4]='XXX'
decenas[5]='XL'
decenas[6]='L'
decenas[7]='LX'
decenas[8]='LXX'
decenas[9]='LXXX'
decenas[10]='XC'
centenas[1]=''
centenas[2]='C'
centenas[3]='CC'
centenas[4]='CCC'
centenas[5]='CD'
centenas[6]='D'
centenas[7]='DC'
centenas[8]='DCC'
centenas[9]='DCCC'
centenas[10]='CM'
miles[1]=''
miles[2]='M'
miles[3]='MM'
miles[4]='MMM'
miles[5]='[IV]'
miles[6]='[V]'
miles_= trunc(decimal/1000) MOD 10
centenas_= trunc(decimal/100) MOD 10
decenas_= trunc(decimal/10) MOD 10
unidades_= decimal MOD 10
Escribir miles[miles_+1] centenas[centenas_+1] decenas[decenas_+1] unidad[unidades_+1]
Sino
Escribir "Lo siento solo sirve la conversion entre numeros de 1 a 5000"
Fin Si
FinProceso
CICLO REPETIR....HASTA
A diferencia del ciclo mientras, el ciclo repetir-hasta ejecuta al menos una vez las sentencias definidas en el cuerpo del ciclo, pues la verificación para continuar o no en el ciclo se realiza al final, como puede apreciarse en la sintaxis:
- repetir
- sentencias...
- hasta ( condición_de_fin )
Debemos observar que la condición de fin va entre paréntesis.
Si bien esta forma de ciclo es utilizado con menor frecuencia que el ciclo mientras, hay situaciones en las que con él, el algoritmo resultante es más sencillo y directo.
CICLO MIENTRAS:
Esta estructura nos permite
repetir un bloque de instrucciones con una condición y se repite siempre en
cuanto esta condición sea verdadera, sino no entra al ciclo mientras.
La estructura es la
siguiente:
INICIO.
INSTRUCCIÓN 1
MIENTRAS( CONDICIÓN LÓGICA) HAGA
INSTRUCCIÓN 2
INSTRUCCIÓN 3
FIN MIENTRAS
INSTRUCCIÓN 4
FIN
El ciclo mientras (while)
tiene que tener su final y salirse de él, tiene un límite y su límite es hasta
que la condición ya no se cumpla, es decir que sea falsa.
TOMADO DE:http://wwwalgoritmos-jesus.blogspot.com.co/2011/05/estructura-mientras.html
TOMADO DE:http://wwwalgoritmos-jesus.blogspot.com.co/2011/05/estructura-mientras.html





No hay comentarios:
Publicar un comentario