s谩bado, 16 de mayo de 2026

Mostrar los n primeros n煤meros de la siguiente serie: 0,5,10,15,20,25,30,35,40,... 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 n1 = 0, c = 1, n;
            n = Convert.ToInt64(txtNum.Text);
            while(c <= n)
            {
                lbxResultado.Items.Add(n1);
                n1 += 5;
                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.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
+= --> el operador de asignaci贸n de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
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:

Este programa permite mostrar los primeros n煤meros de la serie:

0, 5, 10, 15, 20, 25, 30, 35, 40...

El usuario escribe la cantidad de n煤meros que desea visualizar y el programa genera la serie aumentando de 5 en 5.

Explicaci贸n General del C贸digo

C贸digo Funci贸n
using System; Permite utilizar funciones b谩sicas de C#.
using System.Windows.Forms; Permite trabajar con formularios y controles gr谩ficos.
namespace Ejercicio Agrupa las clases del proyecto.
public partial class frmEjercicio : Form Crea el formulario principal del programa.
InitializeComponent(); Inicializa todos los controles del formulario.

Explicaci贸n del Bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e) { long n1 = 0, c = 1, n; n = Convert.ToInt64(txtNum.Text); while(c <= n) { lbxResultado.Items.Add(n1); n1 += 5; c++; } }
L铆nea de c贸digo Explicaci贸n simple
long n1 = 0, c = 1, n; Se crean variables para almacenar:

n1: n煤mero de la serie.
c: contador del ciclo.
n: cantidad de n煤meros a mostrar.
n = Convert.ToInt64(txtNum.Text); Convierte el texto ingresado por el usuario en n煤mero.
while(c <= n) Ejecuta el ciclo mientras el contador sea menor o igual al n煤mero ingresado.
lbxResultado.Items.Add(n1); Agrega el n煤mero actual de la serie al ListBox.
n1 += 5; Incrementa el n煤mero en 5 para generar la siguiente posici贸n de la serie.
c++; Aumenta el contador en 1.

Explicaci贸n del Bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e) { txtNum.Clear(); lbxResultado.Items.Clear(); txtNum.Focus(); }
L铆nea de c贸digo Explicaci贸n simple
txtNum.Clear(); Limpia la caja de texto.
lbxResultado.Items.Clear(); Borra todos los elementos del ListBox.
txtNum.Focus(); Coloca nuevamente el cursor en la caja de texto.

Funcionamiento del Programa

  1. El usuario escribe la cantidad de n煤meros.
  2. Presiona el bot贸n Mostrar.
  3. El programa genera la serie aumentando de 5 en 5.
  4. Los resultados aparecen en el ListBox.
  5. El bot贸n Limpiar elimina todos los datos.

Ejemplo

Si el usuario escribe:

5

El programa mostrar谩:

0 5 10 15 20

Mostrar la siguiente serie: 0,5,10,15,20,25,30,35,40,... 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 n2 = 0, n1;
            n1 = Convert.ToInt64(txtNum.Text);
            while(n2 <= n1)
            {
                lbxResultado.Items.Add(n2);
                n2 += 5;
            }
        }

        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.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
+= --> el operador de asignaci贸n de suma ( += ) suma el valor del operando derecho a 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:

Este programa en Windows Forms genera una serie num茅rica de 5 en 5 comenzando desde 0.

0, 5, 10, 15, 20, 25, 30, 35, 40...

1. Librer铆as utilizadas

using System; using System.Windows.Forms;

Estas librer铆as permiten usar funciones b谩sicas de C# y crear formularios gr谩ficos.

  • System: contiene funciones b谩sicas del lenguaje.
  • Windows.Forms: permite crear ventanas, botones y controles.

2. Namespace del proyecto

namespace Ejercicio

El namespace organiza las clases del proyecto.

3. Clase principal

public partial class frmEjercicio : Form

Aqu铆 se crea el formulario principal del programa.

  • public: la clase puede ser utilizada desde otros archivos.
  • partial: divide el formulario en varios archivos.
  • frmEjercicio: nombre del formulario.
  • : Form indica que hereda propiedades de Windows Forms.

4. Constructor del formulario

public frmEjercicio() { InitializeComponent(); }

Inicializa todos los componentes del formulario.

5. Evento del bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este evento se ejecuta cuando el usuario presiona el bot贸n Mostrar.

6. Variables

long n2 = 0, n1;
  • n2: inicia en 0 y genera la serie.
  • n1: almacena el n煤mero ingresado por el usuario.

7. Conversi贸n del TextBox

n1 = Convert.ToInt64(txtNum.Text);

Convierte el texto ingresado en el TextBox a un n煤mero entero.

8. Ciclo while

while(n2 <= n1)

El ciclo se repite mientras n2 sea menor o igual al n煤mero ingresado.

9. Mostrar datos en el ListBox

lbxResultado.Items.Add(n2);

Agrega cada n煤mero generado dentro del ListBox.

10. Incremento de 5 en 5

n2 += 5;

Incrementa el valor de n2 en 5 para formar la serie.

0 → 5 → 10 → 15 → 20...

11. Bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e)

Este bot贸n limpia todos los controles del formulario.

12. Limpiar TextBox

txtNum.Clear();

Borra el contenido del TextBox.

13. Limpiar ListBox

lbxResultado.Items.Clear();

Elimina todos los datos del ListBox.

14. Enviar el cursor al TextBox

txtNum.Focus();

Coloca nuevamente el cursor en el TextBox.

15. Funcionamiento del programa

El usuario escribe un n煤mero y luego presiona el bot贸n Mostrar. El programa genera autom谩ticamente una serie de 5 en 5 hasta llegar al n煤mero ingresado.

Ejemplo: Si el usuario escribe 40 Resultado: 0 5 10 15 20 25 30 35 40

Contar cuantas veces se repite un car谩cter en una cadena 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)
        {
            int i = 0, c = 0;
            string s = txtTexto.Text;
            char r = char.Parse(txtCaracter.Text);
            while(i < s.Length)
            {
                if (s[i] == r)
                {
                    c++;
                }
                i++;
            }
            txtResultado.Text = $"El texto tiene {c} car谩cteres {r}";
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtTexto.Clear();
            txtCaracter.Clear();
            txtResultado.Clear();
            txtTexto.Focus();
        }
    }
}

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 bits.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 bits).
Parse() --> se utiliza para convertir una representaci贸n de cadena de un n煤mero en un entero equivalente con signo de 16/32/64 bits.
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.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
Length --> obtiene el n煤mero de caracteres del objeto String actual.
== --> 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.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

¿Qu茅 hace el programa?

Este programa de Windows Forms permite ingresar un texto y un car谩cter. Luego cuenta cu谩ntas veces aparece ese car谩cter dentro de la cadena utilizando un ciclo while.

Librer铆as using

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;

Las librer铆as using permiten utilizar herramientas y funciones de C#. La librer铆a m谩s importante aqu铆 es:

  • System.Windows.Forms: permite crear ventanas, botones, cajas de texto y formularios.

Namespace

namespace Ejercicio

El namespace sirve para organizar el proyecto y agrupar las clases relacionadas.

Clase del Formulario

public partial class frmEjercicio : Form

Esta l铆nea crea el formulario principal del programa. La palabra Form indica que es una ventana de Windows Forms.

Constructor del Formulario

public frmEjercicio() { InitializeComponent(); }

El constructor se ejecuta al iniciar el formulario. InitializeComponent() carga todos los controles del formulario, como botones y cajas de texto.

Evento del Bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este evento se ejecuta cuando el usuario hace clic en el bot贸n Mostrar.

Variables Utilizadas

int i = 0, c = 0; string s = txtTexto.Text; char r = char.Parse(txtCaracter.Text);
  • i: recorre cada posici贸n del texto.
  • c: cuenta cu谩ntas veces se repite el car谩cter.
  • s: guarda el texto ingresado por el usuario.
  • r: guarda el car谩cter que se desea buscar.

Ciclo While

while(i < s.Length) { if (s[i] == r) { c++; } i++; }

El ciclo while recorre todo el texto letra por letra.

  • s.Length obtiene la longitud del texto.
  • s[i] obtiene el car谩cter actual.
  • El if verifica si el car谩cter actual es igual al buscado.
  • Si son iguales, el contador c aumenta en 1.
  • i++ avanza a la siguiente posici贸n.

Mostrar Resultado

txtResultado.Text = $"El texto tiene {c} car谩cteres {r}";

Esta l铆nea muestra el resultado final indicando cu谩ntas veces aparece el car谩cter dentro del texto.

Bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e) { txtTexto.Clear(); txtCaracter.Clear(); txtResultado.Clear(); txtTexto.Focus(); }

El bot贸n Limpiar elimina el contenido de las cajas de texto y coloca el cursor nuevamente en el cuadro principal.

Resumen del Ejercicio

El programa recibe un texto y un car谩cter. Despu茅s recorre toda la cadena usando un ciclo while para contar cu谩ntas veces aparece el car谩cter ingresado por el usuario.

Contar cu谩ntas veces se repite una vocal en una cadena dada por teclado 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)
        {
            int c = 0, i = 0;
            string s = txtTexto.Text;
            char v = char.Parse(txtVocal.Text);
            while(i < s.Length)
            {
                if (s[i] == v)
                {
                    c++;
                }
                i++;
            }
            txtResultado.Text = $"El texto tiene {c} vocales {v}";
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtTexto.Clear();
            txtVocal.Clear();
            txtResultado.Clear();
            txtTexto.Focus();
        }
    }
}

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 bits.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 bits).
Parse() --> se utiliza para convertir una representaci贸n de cadena de un n煤mero en un entero equivalente con signo de 16/32/64 bits.
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.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
Length --> obtiene el n煤mero de caracteres del objeto String actual.
== --> 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.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

Este programa permite contar cu谩ntas veces se repite una vocal dentro de un texto ingresado por el usuario.

1. Librer铆as utilizadas

using System;
using System.Windows.Forms;

Estas librer铆as permiten utilizar funciones b谩sicas del lenguaje C# y crear formularios gr谩ficos con Windows Forms.

2. Namespace y formulario

namespace Ejercicio
{
  public partial class frmEjercicio : Form
}

namespace Ejercicio organiza el proyecto.
frmEjercicio representa el formulario principal del programa.

3. Constructor del formulario

public frmEjercicio()
{
  InitializeComponent();
}

El constructor inicializa todos los componentes del formulario, como botones, cajas de texto y etiquetas.

4. Evento del bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este evento se ejecuta cuando el usuario hace clic en el bot贸n Mostrar.

5. Variables utilizadas

int c = 0, i = 0;
string s = txtTexto.Text;
char v = char.Parse(txtVocal.Text);
  • c: almacena la cantidad de veces que aparece la vocal.
  • i: sirve para recorrer el texto.
  • s: guarda el texto ingresado.
  • v: guarda la vocal a buscar.

6. Recorrido del texto

while(i < s.Length)

El ciclo while recorre cada letra del texto hasta llegar al final.

7. Comparaci贸n de vocales

if (s[i] == v)
{
  c++;
}

Se compara cada letra del texto con la vocal ingresada. Si son iguales, el contador aumenta en 1.

8. Incremento del 铆ndice

i++;

Permite avanzar a la siguiente letra del texto.

9. Mostrar resultado

txtResultado.Text = $"El texto tiene {c} vocales {v}";

Muestra el total de veces que la vocal aparece dentro del texto.

10. Bot贸n Limpiar

txtTexto.Clear();
txtVocal.Clear();
txtResultado.Clear();
txtTexto.Focus();

Limpia las cajas de texto y coloca nuevamente el cursor en el campo principal.

Funcionamiento General

  1. El usuario escribe un texto.
  2. Ingresa una vocal.
  3. El programa recorre el texto letra por letra.
  4. Cuenta cu谩ntas veces aparece la vocal.
  5. Finalmente muestra el resultado en pantalla.

Eliminar los espacios de una cadena 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)
        {
            int i = 0;
            string aux = "", s;
            s = txtTexto.Text;
            while(i < s.Length)
            {
                if (s[i] != ' ')
                {
                    aux += s[i];
                }
                i++;
            }
            txtResultado.Text = aux;
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtTexto.Clear();
            txtResultado.Clear();
            txtTexto.Focus();
        }
    }
}

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 bits.
string --> dato de tipo cadena de texto.
while --> el ciclo while recorre un bloque de c贸digo siempre que una condici贸n espec铆fica sea verdadera.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
Length --> obtiene el n煤mero de caracteres del objeto String actual.
if --> use if para especificar un bloque de c贸digo que se ejecutar谩, si una condici贸n especificada es verdadera.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
+= --> el operador de asignaci贸n de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

Este programa permite eliminar todos los espacios de un texto ingresado por el usuario utilizando Windows Forms en C#.

Funcionamiento del Programa

El usuario escribe un texto en el cuadro de texto txtTexto. Luego, al presionar el bot贸n Mostrar, el programa recorre cada car谩cter del texto y elimina los espacios vac铆os. Finalmente, muestra el resultado en txtResultado.

Explicaci贸n de Cada Parte del C贸digo

C贸digo Explicaci贸n
using System; Importa librer铆as necesarias para utilizar funciones b谩sicas de C#.
namespace Ejercicio Define el nombre del proyecto o espacio de trabajo.
public partial class frmEjercicio : Form Crea el formulario principal de Windows Forms.
InitializeComponent(); Inicializa todos los componentes del formulario.
private void btnMostrar_Click(...) Evento que se ejecuta al hacer clic en el bot贸n Mostrar.
int i = 0; Variable contador utilizada para recorrer la cadena.
string aux = "", s; aux almacenar谩 el nuevo texto sin espacios y s guardar谩 el texto original.
s = txtTexto.Text; Obtiene el texto ingresado por el usuario.
while(i < s.Length) Recorre toda la cadena car谩cter por car谩cter.
if (s[i] != ' ') Verifica que el car谩cter actual no sea un espacio vac铆o.
aux += s[i]; Agrega el car谩cter a la nueva cadena sin espacios.
i++; Avanza al siguiente car谩cter de la cadena.
txtResultado.Text = aux; Muestra el resultado final sin espacios.
btnLimpiar_Click(...) Evento que se ejecuta al hacer clic en el bot贸n Limpiar.
txtTexto.Clear(); Borra el contenido del cuadro de texto principal.
txtResultado.Clear(); Borra el resultado mostrado.
txtTexto.Focus(); Coloca el cursor nuevamente en el cuadro de texto principal.

Resumen

El programa utiliza un ciclo while para recorrer cada car谩cter del texto y eliminar todos los espacios. Luego muestra la nueva cadena limpia en el formulario.

Encontrar la primera posici贸n de un car谩cter x de una cadena 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)
        {
            int i = 0, p = 0, sw = 0;
            string s = txtTexto.Text;
            char l = char.Parse(txtCaracter.Text);
            while(i < s.Length && sw == 0)
            {
                if (s[i] == l)
                {
                    p = i;
                    sw = 1;
                }
                i++;
            }
            txtResultado.Text = $"El car谩cter {l} est谩 en la posici贸n {p}";
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtTexto.Clear();
            txtCaracter.Clear();
            txtResultado.Clear();
            txtTexto.Focus();
        }
    }
}

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 bits.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 bits).
Parse() --> se utiliza para convertir una representaci贸n de cadena de un n煤mero en un entero equivalente con signo de 16/32/64 bits.
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 menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
Length --> obtiene el n煤mero de caracteres del objeto String actual.
!= --> 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 l贸gico AND ( && ) (conjunci贸n l贸gica) para un conjunto de operandos booleanos ser谩 true si y solo si todos los operandos son true. De lo contrario ser谩 false.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

¿Qu茅 hace el programa?

Este programa desarrollado en Windows Forms permite ingresar una cadena de texto y un car谩cter. Luego busca la primera posici贸n donde aparece ese car谩cter dentro de la cadena y finalmente muestra el resultado en pantalla.

Librer铆as del programa

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;

Estas librer铆as permiten utilizar funciones b谩sicas de C# y crear interfaces gr谩ficas utilizando Windows Forms.

Clase principal

public partial class frmEjercicio : Form

Se crea una clase llamada frmEjercicio, la cual representa el formulario principal de la aplicaci贸n.

Constructor del formulario

public frmEjercicio()
{
    InitializeComponent();
}

El constructor inicializa todos los componentes visuales del formulario, como botones, cajas de texto y etiquetas.

Evento del bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este m茅todo se ejecuta cuando el usuario presiona el bot贸n Mostrar.

Variables utilizadas

int i = 0, p = 0, sw = 0;
  • i: controla la posici贸n del recorrido.
  • p: almacena la posici贸n encontrada.
  • sw: sirve como interruptor para detener la b煤squeda.

Captura de datos

string s = txtTexto.Text;
char l = char.Parse(txtCaracter.Text);
  • s: guarda el texto ingresado.
  • l: guarda el car谩cter que se desea buscar.

Recorrido de la cadena

while(i < s.Length && sw == 0)

El ciclo while recorre la cadena car谩cter por car谩cter mientras no se llegue al final y el car谩cter a煤n no haya sido encontrado.

Comparaci贸n del car谩cter

if (s[i] == l)

Aqu铆 se compara cada car谩cter de la cadena con el car谩cter ingresado por el usuario.

Guardar posici贸n encontrada

p = i;
sw = 1;
  • p = i: guarda la posici贸n donde se encontr贸 el car谩cter.
  • sw = 1: detiene el recorrido de la cadena.

Incrementar contador

i++;

Incrementa el valor de i para pasar al siguiente car谩cter de la cadena.

Mostrar resultado

txtResultado.Text = $"El car谩cter {l} est谩 en la posici贸n {p}";

Muestra el resultado indicando en qu茅 posici贸n se encuentra el car谩cter.

Bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e)

Este m茅todo limpia las cajas de texto del formulario.

txtTexto.Clear();
txtCaracter.Clear();
txtResultado.Clear();
txtTexto.Focus();
  • Clear(): elimina el contenido de las cajas de texto.
  • Focus(): coloca el cursor nuevamente en el campo principal.

C贸digo del ejercicio: Otra forma de hacer

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)
        {
            int i = 0;
            string s = txtTexto.Text;
            char x = char.Parse(txtCaracter.Text);
            while(i < s.Length)
            {
                if (s[i] != x)
                {
                    i++;
                }
                else
                {
                    txtResultado.Text = $"El car谩cter {x} est谩 en la posici贸n {i}";
                    i = s.Length;
                }
            }
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            txtTexto.Clear();
            txtCaracter.Clear();
            txtResultado.Clear();
            txtTexto.Focus();
        }
    }
}

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 bits.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 bits).
Parse() --> se utiliza para convertir una representaci贸n de cadena de un n煤mero en un entero equivalente con signo de 16/32/64 bits.
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 menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
Length --> obtiene el n煤mero de caracteres del objeto String actual.
!= --> 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 l贸gico AND ( && ) (conjunci贸n l贸gica) para un conjunto de operandos booleanos ser谩 true si y solo si todos los operandos son true. De lo contrario ser谩 false.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

Este programa en Windows Forms permite buscar la primera posici贸n de un car谩cter dentro de una cadena de texto. El usuario escribe un texto y un car谩cter, luego el programa muestra la posici贸n donde aparece por primera vez.

1. Librer铆as utilizadas

using System; using System.Windows.Forms;
  • using System; Permite utilizar funciones b谩sicas de C#.
  • using System.Windows.Forms; Permite crear formularios y controles gr谩ficos.

2. Namespace y clase

namespace Ejercicio { public partial class frmEjercicio : Form }

namespace Ejercicio agrupa todas las clases del programa.

frmEjercicio : Form representa el formulario principal de la aplicaci贸n.

3. Constructor del formulario

public frmEjercicio() { InitializeComponent(); }

El constructor se ejecuta cuando se abre el formulario.

InitializeComponent(); carga todos los controles del formulario.

4. Bot贸n Mostrar

private void btnMostrar_Click(object sender, EventArgs e)

Este m茅todo se ejecuta cuando el usuario hace clic en el bot贸n Mostrar.

Variables utilizadas

int i = 0; string s = txtTexto.Text; char x = char.Parse(txtCaracter.Text);
  • i guarda la posici贸n actual del recorrido.
  • s almacena el texto ingresado.
  • x almacena el car谩cter a buscar.

5. Ciclo while

while(i < s.Length)

El ciclo while recorre la cadena car谩cter por car谩cter.

s.Length devuelve el tama帽o de la cadena.

6. Condici贸n if

if (s[i] != x) { i++; }

Verifica si el car谩cter actual es diferente del car谩cter buscado.

Si son diferentes, la variable i aumenta en 1 para continuar buscando.

7. Cuando encuentra el car谩cter

txtResultado.Text = $"El car谩cter {x} est谩 en la posici贸n {i}"; i = s.Length;

Cuando encuentra el car谩cter:

  • Muestra la posici贸n encontrada.
  • Finaliza el ciclo asignando el tama帽o total de la cadena a i.

8. Bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e) { txtTexto.Clear(); txtCaracter.Clear(); txtResultado.Clear(); txtTexto.Focus(); }

Este m茅todo limpia todas las cajas de texto del formulario.

  • Clear() elimina el contenido.
  • Focus() coloca el cursor en la caja principal.

9. Funcionamiento General

  1. El usuario escribe una cadena.
  2. Ingresa un car谩cter.
  3. El programa recorre la cadena.
  4. Busca el primer car谩cter coincidente.
  5. Muestra la posici贸n encontrada.

Mostrar los n primeros n煤meros de la siguiente serie: 0,5,10,15,20,25,30,35,40,... 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. ❤️