Mostrando entradas con la etiqueta while en c#. Mostrar todas las entradas
Mostrando entradas con la etiqueta while en c#. Mostrar todas las entradas

Estructura Repetitiva While en C#

Hasta en momento hemos visto estructuras secuenciales y condicionales, ahora estudiaremos las estructuras repetitivas en c#. 

Una estructura repetitiva permite ejecutar una instrucción o un conjunto de instrucciones varias veces, según la condición establecida en dicho bucle. 

Veamos una gráfica de la estructura while en diagramas de flujo 

Nota: Podemos observar que el bloque repetitivo puede no ejecutarse ninguna vez si la condición retorna falso la primera vez.
La variable x debe estar inicializada con algún valor antes que se ejecute la operación x=x + 1 en caso de no estar inicializada aparece un error de compilación.

La sintaxis en pseudocódigo es la siguiente:

             mientras condición hacer
                   instrucción 
            fin mientras 

A continuación veamos algunos ejemplos empleando la estructura repetitiva while

Ejercicios Resueltos de Estructura Repetitiva While en C#

Ejemplo 1

Realizar un programa que imprima en pantalla los números del 1 al 50.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int x;
            x = 1;
            while (x <= 50)
            {
                Console.Write(x);
                Console.Write(" , ");
                x = x + 1;
            }
            Console.ReadKey();
        }
    }
}


Al ejecutar el código muestra el siguiente resultado 


Ejemplo 2

Realizar un programa que dado un numero n entero, imprima consecutivamente asta n 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, x;
            string linea;
            Console.Write("Ingrese el valor de n:");
            linea = Console.ReadLine();
            n = int.Parse(linea);
            x = 1;
            while (x <= n)
            {
                Console.Write(x);
                Console.Write(" , ");
                x = x + 1;
            }
            Console.ReadKey();
        }
    }
}


Al ejecutar el código muestra el siguiente resultado 



Ejemplo 3

Realizar un programa que permita ingresar 8 números y nos muestre la suma y el promedio de dichos números

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int x, suma, valor, promedio;
            string linea;
            x = 1;
            suma = 0;
            while (x <= 8)
            {
                Console.Write("Ingrese valor "+x+":");
                linea = Console.ReadLine();
                valor = int.Parse(linea);
                suma = suma + valor;
                x = x + 1;
            }
            promedio = suma / 8;
            Console.Write("La suma  es:");
            Console.WriteLine(suma);
            Console.Write("El promedio es:");
            Console.Write(promedio);
            Console.ReadKey();
        }
    }
}


Al ejecutar el código muestra el siguiente resultado 



Ejemplo 4

Desarrollar un programa que permita ingresar n números enteros y luego nos imprima cuántos valores fueron pares y cuántos impares.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, x, valor, pares, impares;
            string linea;
            x = 1;
            pares = 0;
            impares = 0;
            Console.Write("Cuantos el valor de n:");
            linea = Console.ReadLine();
            n = int.Parse(linea);
            while (x <= n)
            {
                Console.Write("Ingrese el valor "+x+": ");
                linea = Console.ReadLine();
                valor = int.Parse(linea); ;
                if (valor % 2 == 0)
                {
                    pares = pares + 1;
                }
                else
                {
                    impares = impares + 1;
                }
                x = x + 1;
            }
            Console.Write("Cantidad de pares:");
            Console.WriteLine(pares);
            Console.Write("Cantidad de impares:");
            Console.Write(impares);
            Console.ReadKey();
        }
    }
}


Al ejecutar el código muestra el siguiente resultado 


Ejemplo 5

Desarrollar un programa que imprima los múltiplos de 3 del 1 al 200

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int mult;
            mult = 3;
            while (mult <= 200)
            {
                Console.Write(mult);
                Console.Write(", ");
                mult = mult + 3;
            }
            Console.ReadKey();
        }
    }
}

Al ejecutar el código muestra el siguiente resultado 



Ejemplo 6

Realizar un programa que nos imprima la factorial de un numero dado desde el teclado

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EstructuraRepetitivaWhile
{
    class Program
    {
        static void Main(string[] args)
        {
            int fac=1,x,n;
            string linea;
            x = 1;
            Console.Write("Ingrese un numero entero: ");
            linea = Console.ReadLine();
            n = int.Parse(linea);
            while (x <= n)
            {
                fac = fac * x;
                x = x + 1;
            }
            Console.Write("La factorial es: "+fac);
            Console.ReadKey();
        }
    }
}

Al ejecutar el código muestra el siguiente resultado