viernes, 15 de mayo de 2026

Mostrar los x primeros números de la siguiente serie: 2,3,6,7,14,15,30,31,62,63,... en Windows Forms C Sharp

Código del ejercicio:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Ejercicio
{
    public partial class frmEjercicio : Form
    {
        public frmEjercicio()
        {
            InitializeComponent();
        }

        private void btnMostrar_Click(object sender, EventArgs e)
        {
            long vi = 2, c = 0, sw = 1, x;
            x = Convert.ToInt64(txtNum.Text);
            while(c != x)
            {
                lbxResultado.Items.Add(vi);
                if (sw == 1)
                {
                    vi++;
                    sw = 0;
                }
                else
                {
                    vi *= 2;
                    sw = 1;
                }
                c++;
            }
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtNum.Clear();
            lbxResultado.Items.Clear();
            txtNum.Focus();
        }
    }
}

Definición de los códigos del ejercicio:

long --> dato entero de 64 bits.
Convert.ToInt64() --> convierte un valor especificado en un entero de 64 bits con signo.
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
*= --> el operador de asignación de multiplicación ( *= ) multiplica el valor del operando derecho de una variable y asigna el resultado a la variable.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.
ListBox.Items.Clear() --> borra todos los elementos dentro de un cuadro de lista.
listBox.Items.Add() --> agregar elementos a un control de cuadro de lista

Explicación del Código:

Ejercicio:
Mostrar los x primeros números de la siguiente serie:

2, 3, 6, 7, 14, 15, 30, 31, 62, 63...

¿Cómo funciona la serie?

La serie sigue dos operaciones que se repiten:

  • Primero suma 1.
  • Después multiplica por 2.
2 → 3 (+1)
3 → 6 (*2)
6 → 7 (+1)
7 → 14 (*2)
14 → 15 (+1)

Librerías

using System; using System.Windows.Forms;

Permiten usar funciones básicas de C# y los controles de Windows Forms.

Namespace

namespace Ejercicio

Organiza el programa dentro del proyecto llamado Ejercicio.

Clase del Formulario

public partial class frmEjercicio : Form

Representa la ventana principal del programa.

Constructor

public frmEjercicio() { InitializeComponent(); }

Inicializa todos los controles del formulario:

  • Botones
  • TextBox
  • ListBox

Evento del botón Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este bloque se ejecuta cuando el usuario hace clic en el botón Mostrar.

Variables

long vi = 2, c = 0, sw = 1, x;
  • vi: Guarda el valor actual de la serie.
  • c: Cuenta cuántos números se mostraron.
  • sw: Decide si sumar o multiplicar.
  • x: Cantidad de números que ingresó el usuario.

Capturar el número ingresado

x = Convert.ToInt64(txtNum.Text);

Convierte el contenido del TextBox en un número entero.

Ciclo while

while(c != x)

El ciclo se repite hasta mostrar la cantidad de números solicitados.

Mostrar datos en el ListBox

lbxResultado.Items.Add(vi);

Agrega el número actual de la serie en la lista.

Lógica de la serie

if (sw == 1) { vi++; sw = 0; } else { vi *= 2; sw = 1; }

Aquí se genera la serie:

  • Si sw vale 1, suma 1.
  • Si sw vale 0, multiplica por 2.
  • Después cambia el valor de sw para alternar operaciones.

Incrementar contador

c++;

Cuenta cuántos números ya fueron mostrados.

Botón Limpiar

private void btnLimpiar_Click(object sender, EventArgs e) { txtNum.Clear(); lbxResultado.Items.Clear(); txtNum.Focus(); }
  • Limpia el TextBox.
  • Limpia el ListBox.
  • Coloca el cursor nuevamente en el TextBox.

Resumen

El programa muestra los primeros números de una serie alternando dos operaciones:

sumar 1 y multiplicar por 2.

No hay comentarios.:

Publicar un comentario

Mostrar los x primeros números de la siguiente serie: 2,3,6,7,14,15,30,31,62,63,... en Windows Forms C Sharp

Código del ejercicio: using System ; using System . Collections . Generic ; using System . ComponentModel ; using System . ...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️