domingo, 1 de mayo de 2011

ESTRUCTURA MIENTRAS

WHILE - DO WHILE

Esta estructura nos permite repetir un bloque de instrucciones con una condicion y se repite siempre en cuanto esta condicion sea verdadera, sino no entra al ciclo miestras.
La estructura es la siguiente:

INICIO.
INSTRUCCION 1
MIENTRAS( CONDICION LOGICA) HAGA
INSTRUCCION 2
INSTRUCCION 3
FIN MIENTRAS
INSTRUCCION 4
FIN

El ciclo mientras (while) tiene que tener su final y salirse de el, tiene un limite y su limite es hasta que la condicion ya no se cumpla, osea que sea falsa.

EJEMPLO:

Hacer un algoritmo que lea 5 numeros y determine la suma entre ellos.

INICIO
ENTERO: N, i, SUMA
i=1
SUMA=0
MIESTRAS(i <=5) HAGA
MOSTRAR( 'DIGITE UN NUMERO')
LEER (N)
SUMA= SUMA+N
i= i+1
FIN MIENTRAS
MOSTRAR ('LA SUMA ES:', SUMA)
FIN

Como vemos en la condicion al principio se cumple, pero como i se va incrementando, al llegar hacer mayor que 5 se sale del mientras y termina la ejecucion.
 Acontinuecion veremos unos ejercicios.

Modificar el anterior algoritmo para que obtenga el promedio de los 5 numeros.

INICIO
ENTERO: N,i, SUMA
REAL: PROMEDIO
i=1
SUMA=0
MIENTRAS (i <=5) HAGA
MOSTRAR ('DIGITE UN NUMERO')
LEER (N)
SUMA=SUMA+N
i=i+1
PROMEDIO=SUMA/5
FIN MIENTRAS.
MOSTRAR ('EL PROMEDIO ES:', PROMEDIO)
FIN





Realizar un algoritmo para sumar consecutivamente y cuando la suma sea superior a 100 deje de pedir números y muestre el total.

INICIO
ENTERO: N SUMA
SUMA=0
MIENTRAS(SUMA<=100)
MOSTRAR ('DIGITE UN NUMERO')
LEER(N)
SUMA=SUMA+N
FIN MIENTRAS
MOSTRAR ('LA SUMA ES:', SUMA)
FIN




Algoritmo que permita obtener el promedio de la cantidad de números que el usuario desee digitar, preguntando ademas si desea continuar o no.

INICIO
ENTERO: SUMA, CONTADOR, N
CADENA: DECISIÓN
DECISIÓN = 'SI'
SUMA= 0
CONTADOR=0
MIENTRAS(DECISIÓN = 'SI') HAGA
MOSTRAR('DIGITE UN NUMERO')
LEER(N)
SUMA= SUMA+N
CONTADOR=CONTADOR+1
MOSTRAR('DESEA CONTINUAR')
LEER(DECISIÓN)
FIN MIENTRAS
PROMEDIO=SUMA/CONTADOR
MOSTRAR('EL PROMEDIO ES:', PROMEDIO)
FIN




Realizar un algoritmo que pida al usuario digitar un color y lo muestre, pero cuando el usuario digita el color rojo se termine y lo indica.


INICIO
CADENA: COLOR
COLOR= ''
MIENTRAS( COLOR <> 'ROJO') HAGA
MOSTRAR('DIGITE COLOR')
LEER(COLOR)
MOSTRAR('EL COLOR ES:', COLOR)
FIN MIENTRAS
MOSTRAR('HA FINALIZADO')
FIN




Estos son algunos ejemplos y ejercicios del ciclo mientras.
Todo esto nos sirve en la vida cotidiana para encontrar varias formas de encontrarle la solución a un problema y en un futuro para hacer buenos programas con las condiciones y requisitos que nos lo pida el usuario.

3 comentarios:

  1. disculpa, porfa ayudame necesito pasar esto a dfd

    Mientras (Respuesta='S')
    Pedir codigo
    si (codigo_articulo=codigo) entonces
    imprimi "Realizar cambios"
    Solicito datos (Precio, nombre_articulo, fecha ingreso, cantidad)
    de lo contrario
    "Codigo no existe"
    Imprimir ('¿Desea realizar mas cambios?':,S/N
    Leer respuesta
    Fin_mientras

    mi algoritmo es.... realizar cambios de una papelería(codigo_articulo,precio,cantidad_articulo, nombre_articulo, fecha_ingreso) y preguntar si desea realizar mas cambios, y repetir mientras respuesta sea SI

    ResponderEliminar
  2. 2. Realizar un programa que imprima la siguiente serie pidiendo el número límite de la mitad de las filas a mostrar. Por ejemplo si se ingresa 5 que será el numero límite de asteriscos mostrados en la fila del centro, entonces mostrará lo siguiente:

    *
    * *
    * * *
    * * * *
    * * * * *
    * * * *
    * * *
    * *
    *


    me podrias ayudar con este ejercicio?? por favor

    ResponderEliminar
  3. Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim filas As Integer = 0
    Dim columas As Integer = 0

    Dim mostrar As String = ""

    Dim filas2 As Integer = 0
    Dim columas2 As Integer = Me.TextBox2.Text

    While columas <= Me.TextBox2.Text
    While filas <= columas
    mostrar = mostrar & "*"
    filas = filas + 1
    End While
    mostrar = mostrar & ControlChars.NewLine
    columas = columas + 1
    filas = 0
    End While

    While columas2 >= 0
    While filas2 <= columas2
    mostrar = mostrar & "*"
    filas2 = filas2 + 1
    End While
    mostrar = mostrar & ControlChars.NewLine
    columas2 = columas2 - 1
    filas2 = 0
    End While
    Me.TextBox1.Text = mostrar

    End Sub
    End Class

    ResponderEliminar