lunes, 18 de mayo de 2026

Pedir la edad y determinar si puede o no sacar licencia de conducir en C Sharp

C贸digo del ejercicio:

Console.Write("Ingresar edad: ");
int edad = int.Parse(Console.ReadLine());
if(edad >= 18)
{
    Console.Write("Licencia otorgada.");
}
else
{
    Console.Write("Licencia negada.");
}
Console.ReadKey();

Definici贸n de los c贸digos del ejercicio:

Console.Write() --> escribe un texto en pantalla.
int --> dato entero de 32 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.
Console.ReadLine() --> lee un dato desde teclado.
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 mayor que o igual ( >= ) devuelve true si el operando izquierdo es mayor o igual que el operando derecho, y en false caso contrario.
Console.ReadKey() --> escribimos el m茅todo Console.ReadKey() al final de nuestro c贸digo para mantener abierta la ventana de nuestra consola.

Explicaci贸n del C贸digo:

C贸digo en C#

Console.Write("Ingresar edad: ");

int edad = int.Parse(Console.ReadLine());  

if(edad >= 18)
{
    Console.Write("Licencia otorgada.");
}
else
{
    Console.Write("Licencia negada.");
}

Console.ReadKey();

Explicaci贸n del c贸digo

  • Console.Write("Ingresar edad: ");
    Muestra un mensaje en pantalla solicitando al usuario que ingrese su edad.
  • int edad = int.Parse(Console.ReadLine());
    Lee la edad escrita por el usuario y la convierte en un n煤mero entero para guardarla en la variable llamada edad.
  • if(edad >= 18)
    Comprueba si la edad es mayor o igual a 18 a帽os.
  • Console.Write("Licencia otorgada.");
    Si la persona tiene 18 a帽os o m谩s, se muestra el mensaje indicando que puede obtener la licencia de conducir.
  • else
    Se ejecuta cuando la condici贸n del if no se cumple.
  • Console.Write("Licencia negada.");
    Muestra un mensaje indicando que no puede obtener la licencia porque es menor de edad.
  • Console.ReadKey();
    Hace que el programa espere hasta que el usuario presione una tecla antes de cerrar la consola.

Eliminar un car谩cter x de una cadena introducido por teclado en C Sharp

C贸digo del ejercicio:

string aux = ""; int i = 0; int sw = 0;
Console.Write("Ingresar texto: ");
string s = Console.ReadLine();
Console.Write("Ingresar car谩cter: ");
char e = char.Parse(Console.ReadLine());
while(i < s.Length)
{
    if (s[i] == e && sw == 0)
    {
        sw = 1;
    }
    else
    {
        aux = aux + s[i];
        sw = 0;
    }
    i = i + 1;
}
Console.Write(aux);
Console.ReadKey();

Definici贸n de los c贸digos del ejercicio:

Console.Write() --> escribe un texto en pantalla.
int --> dato entero de 32 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.
Console.ReadLine() --> lee un dato desde teclado.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 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.
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 menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
&& --> 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.
Console.ReadKey() --> escribimos el m茅todo Console.ReadKey() al final de nuestro c贸digo para mantener abierta la ventana de nuestra consola.

Explicaci贸n del C贸digo:

C贸digo del ejercicio

string aux = "";
int i = 0;
int sw = 0;

Console.Write("Ingresar texto: ");
string s = Console.ReadLine();

Console.Write("Ingresar car谩cter: ");
char e = char.Parse(Console.ReadLine());

while(i < s.Length)
{
    if (s[i] == e && sw == 0)
    {
        sw = 1;
    }
    else
    {
        aux = aux + s[i];
        sw = 0;
    }

    i = i + 1;
}

Console.Write(aux);
Console.ReadKey();

Explicaci贸n simple del c贸digo

string aux = "";
Crea una variable vac铆a llamada aux. Aqu铆 se guardar谩 el nuevo texto sin el car谩cter eliminado.
int i = 0;
Variable contador utilizada para recorrer el texto letra por letra.
int sw = 0;
Variable bandera que ayuda a controlar cu谩ndo se encuentra el car谩cter a eliminar.
Console.Write("Ingresar texto: ");
Muestra un mensaje pidiendo al usuario ingresar un texto.
string s = Console.ReadLine();
Guarda el texto ingresado en la variable s.
Console.Write("Ingresar car谩cter: ");
Solicita el car谩cter que se desea eliminar.
char e = char.Parse(Console.ReadLine());
Guarda el car谩cter ingresado en la variable e.
while(i < s.Length)
Recorre todo el texto mientras la posici贸n sea menor a la longitud de la cadena.
if (s[i] == e && sw == 0)
Verifica si el car谩cter actual es igual al car谩cter que se quiere eliminar.
sw = 1;
Activa la bandera para indicar que se encontr贸 el car谩cter.
else
Si el car谩cter no es el que se desea eliminar, entra al bloque else.
aux = aux + s[i];
Agrega el car谩cter actual a la nueva cadena.
sw = 0;
Reinicia la bandera.
i = i + 1;
Avanza a la siguiente posici贸n del texto.
Console.Write(aux);
Muestra el texto final sin el car谩cter eliminado.
Console.ReadKey();
Espera que el usuario presione una tecla antes de cerrar la consola.

Ejemplo de ejecuci贸n

Texto ingresado: hola mundo
Car谩cter a eliminar: o

Resultado: hla mund

Contar las veces que se repite una consonante x en una frase en C Sharp

C贸digo del ejercicio:

int i = 0;
int cc = 0;
Console.Write("Ingresar frase: ");
string s = Console.ReadLine().ToLower();
Console.Write("Ingresar consonante: ");
char x = char.Parse(Console.ReadLine().ToLower());
while(i < s.Length)
{
    if (s[i] == x)
    {
        cc = cc + 1;
    }
    i = i + 1;
}
Console.Write($"Las veces que se repite la consonante {x} es: {cc} veces.");
Console.ReadKey();

Definici贸n de los c贸digos del ejercicio:

Console.Write() --> escribe un texto en pantalla.
int --> dato entero de 32 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.
Console.ReadLine() --> lee un dato desde teclado.
string --> dato de tipo cadena de texto.
char --> se usa para contener un 煤nico car谩cter unicode (con codificaci贸n Unicode de 16 bits).
ToLower() --> convierte todos los caracteres a min煤sculas.
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.
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 menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Console.ReadKey() --> escribimos el m茅todo Console.ReadKey() al final de nuestro c贸digo para mantener abierta la ventana de nuestra consola.

Explicaci贸n del C贸digo:

int i = 0;

Se declara la variable i y se inicializa en 0. Esta variable sirve para recorrer cada letra de la frase.

int cc = 0;

La variable cc almacena la cantidad de veces que se repite la consonante ingresada.

Console.Write("Ingresar frase: ");

Muestra un mensaje en pantalla para que el usuario escriba una frase.

string s = Console.ReadLine().ToLower();

Lee la frase ingresada y la guarda en la variable s. El m茅todo ToLower() convierte todas las letras a min煤sculas.

Console.Write("Ingresar consonante: ");

Solicita al usuario ingresar la consonante que desea buscar.

char x = char.Parse(Console.ReadLine().ToLower());

Lee la consonante ingresada y la almacena en la variable x. Tambi茅n la convierte a min煤scula.

while(i < s.Length)

El ciclo while recorre toda la frase letra por letra mientras el valor de i sea menor que la longitud de la cadena.

if (s[i] == x)

Compara cada letra de la frase con la consonante ingresada.

cc = cc + 1;

Si encuentra una coincidencia, aumenta el contador en 1.

i = i + 1;

Incrementa el valor de i para pasar a la siguiente letra.

Console.Write($"Las veces que se repite la consonante {x} es: {cc} veces.");

Muestra el resultado final indicando cu谩ntas veces aparece la consonante en la frase.

Console.ReadKey();

Espera que el usuario presione una tecla antes de cerrar la consola.

Ingresar dos n煤meros y determinar si el primer n煤mero ingresado es mayor o menor 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)
        {
            double num1 = Convert.ToDouble(txtNum1.Text);
            double num2 = Convert.ToDouble(txtNum2.Text);
            if(num1 == num2)
            {
                txtResultado.Text = $"El n煤mero {num1} es igual que {num2}";
            }else if(num1 > num2)
            {
                txtResultado.Text = $"El n煤mero {num1} es mayor que {num2}";
            }
            else
            {
                txtResultado.Text = $"El n煤mero {num1} es menor que {num2}";
            }
        }

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

Definici贸n de los c贸digos del ejercicio:

double --> se usa para declarar n煤meros reales de coma flotante de 64 bits (doble precisi贸n).
Convert.ToDouble() --> convierte un valor especificado en un n煤mero de coma flotante de precisi贸n doble.
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.
else if --> use else if para especificar una nueva condici贸n para probar, si la primera condici贸n es falsa.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.

Explicaci贸n del C贸digo:

¿Qu茅 hace este programa?

Este programa permite ingresar dos n煤meros y determinar si el primer n煤mero es mayor, menor o igual al segundo n煤mero.

Librer铆as utilizadas

using System;
using System.Windows.Forms;

Estas librer铆as permiten utilizar funciones b谩sicas de C# y crear formularios en Windows Forms.

Namespace

namespace Ejercicio

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

Clase principal del formulario

public partial class frmEjercicio : Form

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

Constructor del formulario

public frmEjercicio()
{
   InitializeComponent();
}

El constructor se ejecuta cuando se abre el formulario. InitializeComponent() carga todos los controles del formulario.

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.

Captura de n煤meros

double num1 = Convert.ToDouble(txtNum1.Text);
double num2 = Convert.ToDouble(txtNum2.Text);

Se obtiene el texto ingresado en las cajas y se convierte a tipo num茅rico decimal.

Comparaci贸n de n煤meros

if(num1 == num2)

Verifica si ambos n煤meros son iguales.

else if(num1 > num2)

Verifica si el primer n煤mero es mayor que el segundo.

else

Si no se cumplen las condiciones anteriores, significa que el primer n煤mero es menor.

Mostrar resultado

txtResultado.Text = $"El n煤mero {num1} es mayor que {num2}";

El resultado se muestra en la caja de texto llamada txtResultado.

Evento del bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e)

Este evento limpia las cajas de texto cuando el usuario presiona el bot贸n Limpiar.

txtNum1.Clear();
txtNum2.Clear();
txtResultado.Clear();

Estas instrucciones eliminan el contenido de las cajas de texto.

txtNum1.Focus();

Coloca el cursor nuevamente en la primera caja de texto.

La Municipalidad de Lima Metropolitana desea minimizar los accidentes automovil铆sticos de la ciudad; para lo cual realiza un diagn贸stico, en el informe se advierte que uno de los problemas es el exceso de la velocidad por parte de los conductores. Por lo tanto, como primera medida ser谩 enviar autom谩ticamente un mensaje de advertencia a los conductores que superan la velocidad de 30 km/h 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)
        {
            string placa = txtPlaca.Text;
            double velocidad = Convert.ToDouble(txtVelocidad.Text);
            if(velocidad > 30)
            {
                lbxResultado.Items.Add($"Advertencia! exceso de velocidad, supera la velocidad de 30 km/h");
                lbxResultado.Items.Add($"Placa del veh铆culo: {placa}");
            }
        }

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

Definici贸n de los c贸digos del ejercicio:

string --> dato de tipo cadena de texto.
double --> se usa para declarar n煤meros reales de coma flotante de 64 bits (doble precisi贸n).
Convert.ToDouble() --> convierte un valor especificado en un n煤mero de coma flotante de precisi贸n doble.
if --> use if para especificar un bloque de c贸digo que se ejecutar谩, si una condici贸n especificada es verdadera.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
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
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.

Explicaci贸n del C贸digo:

Este programa fue creado para detectar veh铆culos que superen la velocidad permitida de 30 km/h y mostrar autom谩ticamente un mensaje de advertencia junto con la placa del veh铆culo.

Librer铆as utilizadas

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;
  • using System: Permite usar funciones b谩sicas de C#.
  • using System.Windows.Forms: Permite crear ventanas y controles gr谩ficos.
  • Las dem谩s librer铆as ayudan a manejar datos, texto y componentes del sistema.

Namespace y formulario

namespace Ejercicio
{
  public partial class frmEjercicio : Form

namespace Ejercicio organiza el proyecto.
frmEjercicio : Form indica que la clase es un formulario de Windows Forms.

Constructor del formulario

public frmEjercicio()
{
  InitializeComponent();
}

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

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.

string placa = txtPlaca.Text;

Guarda la placa ingresada en la variable llamada placa.

double velocidad = Convert.ToDouble(txtVelocidad.Text);

Convierte la velocidad escrita por el usuario a tipo num茅rico decimal.

if(velocidad > 30)

Verifica si la velocidad es mayor a 30 km/h.

lbxResultado.Items.Add("Advertencia! exceso de velocidad");

Muestra un mensaje de advertencia en el ListBox.

lbxResultado.Items.Add($"Placa del veh铆culo: {placa}");

Muestra la placa del veh铆culo que super贸 la velocidad permitida.

Evento del bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e)

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

txtPlaca.Clear();

Limpia el campo de la placa.

txtVelocidad.Clear();

Limpia el campo de velocidad.

lbxResultado.Items.Clear();

Elimina todos los mensajes del ListBox.

txtPlaca.Focus();

Coloca el cursor nuevamente en el campo de la placa.

Funcionamiento General del Programa

  • El usuario ingresa la placa del veh铆culo.
  • Despu茅s escribe la velocidad del veh铆culo.
  • El sistema verifica si supera los 30 km/h.
  • Si excede el l铆mite, se muestra una advertencia autom谩tica.
  • El bot贸n Limpiar reinicia todos los campos del formulario.

Convertir cent铆metros a pulgadas, metros y mil铆metros 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 btnConvertir_Click(object sender, EventArgs e)
        {
            double centimetro = Convert.ToDouble(txtNum.Text);
            double pulgada = centimetro * 0.393701;
            double metro = centimetro * 0.01;
            double milimetro = centimetro * 10;
            lbxResultado.Items.Add($"Pulgadas: {pulgada} in");
            lbxResultado.Items.Add($"Metros: {metro} m");
            lbxResultado.Items.Add($"Mil铆metros: {milimetro} mm");
        }

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

Definici贸n de los c贸digos del ejercicio:

double --> se usa para declarar n煤meros reales de coma flotante de 64 bits (doble precisi贸n).
Convert.ToDouble() --> convierte un valor especificado en un n煤mero de coma flotante de precisi贸n doble.
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
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.
$"{}" --> interpolaci贸n de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.

Explicaci贸n del C贸digo:

¿Qu茅 hace el programa?

Este programa convierte una cantidad de cent铆metros a:

  • Pulgadas
  • Metros
  • Mil铆metros

El usuario escribe una cantidad en cent铆metros y el sistema muestra autom谩ticamente las conversiones.

Librer铆as utilizadas

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 formularios de Windows Forms.

Namespace y formulario

namespace Ejercicio
{
  public partial class frmEjercicio : Form
}

namespace Ejercicio organiza el c贸digo del programa.

frmEjercicio es el formulario principal de la aplicaci贸n.

: Form significa que la clase hereda las propiedades de un formulario de Windows Forms.

Constructor del formulario

public frmEjercicio()
{
  InitializeComponent();
}

El constructor se ejecuta cuando se abre el formulario.

InitializeComponent() carga todos los controles del formulario como botones, cajas de texto y listas.

Evento del bot贸n Convertir

private void btnConvertir_Click(object sender, EventArgs e)

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

double centimetro = Convert.ToDouble(txtNum.Text);

Convierte el texto ingresado en la caja de texto a un n煤mero decimal.

double pulgada = centimetro * 0.393701;

Convierte cent铆metros a pulgadas.

double metro = centimetro * 0.01;

Convierte cent铆metros a metros.

double milimetro = centimetro * 10;

Convierte cent铆metros a mil铆metros.

Mostrar resultados

lbxResultado.Items.Add($"Pulgadas: {pulgada} in");

Agrega el resultado de pulgadas al ListBox.

lbxResultado.Items.Add($"Metros: {metro} m");

Agrega el resultado de metros al ListBox.

lbxResultado.Items.Add($"Mil铆metros: {milimetro} mm");

Agrega el resultado de mil铆metros al ListBox.

Evento del bot贸n Limpiar

private void btnLimpiar_Click(object sender, EventArgs e)

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

txtNum.Clear();

Borra el contenido de la caja de texto.

lbxResultado.Items.Clear();

Elimina todos los resultados mostrados en el ListBox.

txtNum.Focus();

Coloca el cursor nuevamente en la caja de texto.

Resumen del funcionamiento

1. El usuario escribe una cantidad en cent铆metros.

2. Presiona el bot贸n Convertir.

3. El programa calcula las conversiones autom谩ticamente.

4. Los resultados aparecen en el ListBox.

5. El bot贸n Limpiar elimina todos los datos para realizar una nueva conversi贸n.

Mostrar la suma de los n煤meros impares en un rango de dos n煤meros, tambi茅n sumar el rango de los n煤meros en Windows Forms C Sharp

Ejemplo: si ingreso el n煤mero 9 y 22, que sume los n煤meros impares entre el 9 y 22 pero que tambi茅n sume el 9 y 22.

9,10,11,12,13,14,15,16,17,18,19,20,21,22 = 127


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 num1 = int.Parse(txtNum1.Text);
            int num2 = int.Parse(txtNum2.Text);
            int sumImpar = 0, n1 = num1 + 1, n2 = num2 - 1;
            while(n1 <= n2)
            {
                if(n1 % 2 != 0)
                {
                    sumImpar += n1;
                }
                n1++;
            }
            txtResultado.Text = (sumImpar + num1 + num2).ToString();
        }

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

Definici贸n de los c贸digos del ejercicio:

int --> dato entero de 32 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.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
if --> use if para especificar un bloque de c贸digo que se ejecutar谩, si una condici贸n especificada es verdadera.
% --> el operador de modulo ( % ) devuelve el resto de la divisi贸n.
!= --> 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.
ToString() --> devuelve una cadena que representa el objeto actual.
Clear() --> borra todo el contenido del cuadro de texto.
Focus() --> establece el foco de entrada.

Explicaci贸n del C贸digo:

private void btnMostrar_Click(object sender, EventArgs e)
{
    int num1 = int.Parse(txtNum1.Text);
    int num2 = int.Parse(txtNum2.Text);
    int sumImpar = 0, n1 = num1 + 1, n2 = num2 - 1;

    while(n1 <= n2)
    {
        if(n1 % 2 != 0)
        {
            sumImpar += n1;
        }
        n1++;
    }

    txtResultado.Text = (sumImpar + num1 + num2).ToString();
}

1. Evento del bot贸n Mostrar

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

2. Lectura de n煤meros

int num1 = int.Parse(txtNum1.Text);
Convierte el contenido del TextBox txtNum1 a un n煤mero entero.

int num2 = int.Parse(txtNum2.Text);
Convierte el contenido del TextBox txtNum2 a un n煤mero entero.

3. Variables auxiliares

  • sumImpar = 0
    Guarda la suma de los n煤meros impares.
  • n1 = num1 + 1
    Empieza desde el n煤mero siguiente al primer n煤mero.
  • n2 = num2 - 1
    Termina antes del segundo n煤mero.

4. Ciclo while

El ciclo while(n1 <= n2) recorre todos los n煤meros que est谩n dentro del rango.

:contentReference[oaicite:0]{index=0}

5. Verificaci贸n de n煤meros impares

if(n1 % 2 != 0)
Verifica si el n煤mero es impar.

El operador m贸dulo (%) obtiene el residuo de la divisi贸n entre 2.

:contentReference[oaicite:1]{index=1}

Si el residuo es diferente de cero, el n煤mero es impar.

6. Suma de n煤meros impares

sumImpar += n1;
Acumula los n煤meros impares encontrados en el rango.

7. Incremento

n1++;
Incrementa el valor de n1 en 1 para continuar el recorrido.

8. Mostrar resultado

txtResultado.Text = (sumImpar + num1 + num2).ToString();

Suma:

  • Los n煤meros impares encontrados.
  • El primer n煤mero.
  • El segundo n煤mero.

Luego convierte el resultado a texto para mostrarlo en el TextBox.

:contentReference[oaicite:2]{index=2}

9. Bot贸n Limpiar

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

Este bot贸n limpia todos los TextBox y coloca el cursor nuevamente en el primer cuadro de texto.

10. Ejemplo del ejercicio

Si el usuario ingresa:

  • num1 = 2
  • num2 = 10

Los n煤meros impares del rango son:

3 + 5 + 7 + 9 = 24

Luego el programa suma:

24 + 2 + 10 = 36

Resultado final: 36

Pedir la edad y determinar si puede o no sacar licencia de conducir en C Sharp

C贸digo del ejercicio: Console . Write ( "Ingresar edad: " ); int edad = int . Parse ( Console . ReadLine ()); if ( eda...

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