Pruebe en producción sin marcas de agua.
Funciona donde lo necesite.
Obtén 30 días de producto totalmente funcional.
Ténlo en funcionamiento en minutos.
Acceso completo a nuestro equipo de asistencia técnica durante la prueba del producto
En este tutorial, desglosaremos los conceptos de las sentencias if
y else
y cómo usarlas de manera efectiva en tus programas de C#. También exploraremos conceptos relacionados como las expresiones booleanas y los operadores condicionales. ¡Así que vamos a sumergirnos de inmediato!
La sentencia if
es un concepto fundamental en la programación. Se utiliza para tomar decisiones en código basadas en una determinada condición. La sintaxis básica de una sentencia if en C# es la siguiente:
if (Boolean expression)
{
// Statements to execute if the Boolean expression is true
}
if (Boolean expression)
{
// Statements to execute if the Boolean expression is true
}
If Boolean expression Then
' Statements to execute if the Boolean expression is true
End If
La declaración if verifica que la expresión booleana dada evalúe a true
. Si lo hace, se ejecuta el código dentro del bloque de instrucciones (el código encerrado entre llaves). Si la expresión booleana se evalúa como false
, el código dentro del bloque de declaración se omite.
Ahora, ¿qué pasa si quieres ejecutar algún otro código cuando la condición if es falsa? Ahí es donde entra en juego la sentencia else opcional. La sintaxis de una instrucción if-else
en C# se ve así:
if (Boolean expression)
{
// Statements to execute if the Boolean expression is true
}
else
{
// Statements to execute if the Boolean expression is false
}
if (Boolean expression)
{
// Statements to execute if the Boolean expression is true
}
else
{
// Statements to execute if the Boolean expression is false
}
If Boolean expression Then
' Statements to execute if the Boolean expression is true
Else
' Statements to execute if the Boolean expression is false
End If
En el caso anterior, si la expresión booleana se evalúa como true
, el código del bloque if se ejecuta. Si se evalúa como false
, el código en el bloque else se ejecuta en su lugar.
Veamos un ejemplo real de uso de la sentencia if-else de C#. Imagina que estás escribiendo un programa que comprueba si una persona puede votar. En la mayoría de los países, la edad para votar es de 18 años.
El siguiente ejemplo muestra cómo utilizar la sentencia if-else para determinar la elegibilidad para votar:
using System;
class Program
{
static void Main(string [] args)
{
int age = 21;
if (age >= 18)
{
Console.WriteLine("You are eligible to vote!");
}
else
{
Console.WriteLine("Sorry, you are not eligible to vote.");
}
}
}
using System;
class Program
{
static void Main(string [] args)
{
int age = 21;
if (age >= 18)
{
Console.WriteLine("You are eligible to vote!");
}
else
{
Console.WriteLine("Sorry, you are not eligible to vote.");
}
}
}
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim age As Integer = 21
If age >= 18 Then
Console.WriteLine("You are eligible to vote!")
Else
Console.WriteLine("Sorry, you are not eligible to vote.")
End If
End Sub
End Class
En el código anterior, primero declaramos una variable entera llamada age
y le asignamos el valor de 21. Luego, usamos una declaración if-else para verificar si la edad es mayor o igual a 18. Si la condición es verdadera, el programa imprime "¡Eres elegible para votar!" en la consola. Si es falso, imprime "Lo sentimos, no puede votar".
En C#, puede utilizar varios tipos de expresiones booleanas para crear condiciones más complejas. Algunos de los operadores condicionales más utilizados son:
==
: Igualdad!=
: Desigualdad<
: Menor que>
: Mayor que<=
: Menor o igual que>=
: Mayor o igual que
Veamos un ejemplo. Supongamos que quieres escribir un programa que compruebe si un número es positivo, negativo o cero. El siguiente fragmento de código utiliza sentencias if y operadores condicionales para conseguirlo:
using System;
class Program
{
static void Main(string [] args)
{
int number = 0;
if (number > 0)
{
Console.WriteLine("The number is positive.");
}
else if (number < 0)
{
Console.WriteLine("The number is negative.");
}
else
{
Console.WriteLine("The number is zero.");
}
}
}
using System;
class Program
{
static void Main(string [] args)
{
int number = 0;
if (number > 0)
{
Console.WriteLine("The number is positive.");
}
else if (number < 0)
{
Console.WriteLine("The number is negative.");
}
else
{
Console.WriteLine("The number is zero.");
}
}
}
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim number As Integer = 0
If number > 0 Then
Console.WriteLine("The number is positive.")
ElseIf number < 0 Then
Console.WriteLine("The number is negative.")
Else
Console.WriteLine("The number is zero.")
End If
End Sub
End Class
En el ejemplo anterior, primero declaramos una variable entera llamada number
y le asignamos el valor de 0. Luego usamos una declaración if para verificar si el número es mayor que 0. Para un valor verdadero, imprimimos "El número es positivo." Para valores falsos, pasamos a la declaración else if
, que verifica si el número es menor que 0. Si esta condición es verdadera, imprimimos "El número es negativo." Finalmente, si ninguna de las condiciones anteriores se cumple, llegamos al bloque else, que imprime "El número es cero."
En algunos casos, puede ser necesario comprobar varias condiciones a la vez. C# proporciona operadores lógicos para ayudarle a conseguirlo. Los operadores lógicos más utilizados son:
&&
: AND lógico**`
**: OR lógico
!
: NOT lógico
Veamos un ejemplo de uso de operadores lógicos con sentencias if. Imagine que está escribiendo un programa para determinar si una persona tiene derecho a un descuento especial en una tienda. El descuento está disponible para clientes que sean personas mayores (65 años o más) o estudiantes (entre 18 y 25 años). A continuación se muestra un fragmento de código que demuestra cómo utilizar la sentencia if-else de C# con operadores lógicos para determinar la elegibilidad de un descuento:
using System;
class Program
{
static void Main(string [] args)
{
int age = 23;
bool isStudent = true;
if ((age >= 65)
(isStudent && (age >= 18 && age <= 25)))
{
Console.WriteLine("You are eligible for the discount!");
}
else
{
Console.WriteLine("Sorry, you are not eligible for the discount.");
}
}
}
using System;
class Program
{
static void Main(string [] args)
{
int age = 23;
bool isStudent = true;
if ((age >= 65)
(isStudent && (age >= 18 && age <= 25)))
{
Console.WriteLine("You are eligible for the discount!");
}
else
{
Console.WriteLine("Sorry, you are not eligible for the discount.");
}
}
}
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim age As Integer = 23
Dim isStudent As Boolean = True
If (age >= 65)(isStudent AndAlso (age >= 18 AndAlso age <= 25)) Then
Console.WriteLine("You are eligible for the discount!")
Else
Console.WriteLine("Sorry, you are not eligible for the discount.")
End If
End Sub
End Class
En el código anterior, primero declaramos una variable entera llamada age
y una variable booleana llamada isStudent
. A continuación, utilizamos una sentencia if-else con operadores lógicos para comprobar si la persona tiene derecho al descuento. Si la edad es 65 o más, o si la persona es un estudiante entre 18 y 25 años, el programa imprime "¡Eres elegible para el descuento!" De lo contrario, imprime "Lo siento, no eres elegible para el descuento."
Ahora que tienes un conocimiento sólido sobre la declaración if-else en C#, exploremos una aplicación práctica que involucra la biblioteca IronPDF, la cual te permite trabajar con archivos PDF en aplicaciones C# de manera fluida.
IronPDF es una potente biblioteca .NET que le permite crear, editar y extraer contenido de archivos PDF dentro de sus aplicaciones C#.
En este ejemplo, crearemos un sencillo generador de facturas en PDF que aplica diferentes tipos impositivos en función de la ubicación del cliente. Este escenario ofrece una excelente oportunidad para utilizar sentencias if-else.
En primer lugar, instale IronPDF a través de NuGet ejecutando el siguiente comando:
Install-Package IronPdf
A continuación, vamos a crear un programa sencillo que genere una factura con diferentes tipos impositivos para clientes de diferentes regiones:
using System;
using IronPdf;
class Program
{
static void Main(string [] args)
{
string customerLocation = "Europe";
double taxRate;
if (customerLocation == "USA")
{
taxRate = 0.07;
}
else if (customerLocation == "Europe")
{
taxRate = 0.20;
}
else
{
taxRate = 0.15;
}
double productPrice = 100.0;
double totalTax = productPrice * taxRate;
double totalPrice = productPrice + totalTax;
string invoiceContent = $@"
<h1>Invoice</h1>
<p>Product Price: ${productPrice}</p>
<p>Tax Rate: {taxRate * 100}%</p>
<p>Total Tax: ${totalTax}</p>
<p>Total Price: ${totalPrice}</p>
";
var pdf = new ChromePdfRenderer();
var document = pdf.RenderHtmlAsPdf(invoiceContent);
document.SaveAs("Invoice.pdf");
}
}
using System;
using IronPdf;
class Program
{
static void Main(string [] args)
{
string customerLocation = "Europe";
double taxRate;
if (customerLocation == "USA")
{
taxRate = 0.07;
}
else if (customerLocation == "Europe")
{
taxRate = 0.20;
}
else
{
taxRate = 0.15;
}
double productPrice = 100.0;
double totalTax = productPrice * taxRate;
double totalPrice = productPrice + totalTax;
string invoiceContent = $@"
<h1>Invoice</h1>
<p>Product Price: ${productPrice}</p>
<p>Tax Rate: {taxRate * 100}%</p>
<p>Total Tax: ${totalTax}</p>
<p>Total Price: ${totalPrice}</p>
";
var pdf = new ChromePdfRenderer();
var document = pdf.RenderHtmlAsPdf(invoiceContent);
document.SaveAs("Invoice.pdf");
}
}
Imports System
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim customerLocation As String = "Europe"
Dim taxRate As Double
If customerLocation = "USA" Then
taxRate = 0.07
ElseIf customerLocation = "Europe" Then
taxRate = 0.20
Else
taxRate = 0.15
End If
Dim productPrice As Double = 100.0
Dim totalTax As Double = productPrice * taxRate
Dim totalPrice As Double = productPrice + totalTax
Dim invoiceContent As String = $"
<h1>Invoice</h1>
<p>Product Price: ${productPrice}</p>
<p>Tax Rate: {taxRate * 100}%</p>
<p>Total Tax: ${totalTax}</p>
<p>Total Price: ${totalPrice}</p>
"
Dim pdf = New ChromePdfRenderer()
Dim document = pdf.RenderHtmlAsPdf(invoiceContent)
document.SaveAs("Invoice.pdf")
End Sub
End Class
En este ejemplo de código, utilizamos una sentencia if-else para determinar el tipo impositivo adecuado en función de la ubicación del cliente. Crearemos la factura PDF desde una cadena HTML usando IronPDF. En C#, podemos utilizar una Lista de C# para almacenar y manipular elementos, como los precios de los productos.
A lo largo de este tutorial, hemos cubierto los fundamentos de la sentencia if-else de C#, explorado varios operadores condicionales y lógicos, y examinado ejemplos de la vida real para comprender mejor el concepto. Incluso demostramos una aplicación práctica utilizando la poderosa biblioteca IronPDF, que ofrece una prueba gratuita y opciones de licencia.
Recuerda que la práctica es crucial para dominar los conceptos de programación. Sigue experimentando con diferentes escenarios, aplicando tus nuevos conocimientos sobre las sentencias if-else y otros conceptos relacionados.