Este sitio web usa cookies de terceros para analizar el tráfico y personalizar los anuncios. Si no está de acuerdo, abandone el sitio y no siga navegando por él. ×


3.5. Los valores "booleanos"

En C# tenemos también un tipo de datos llamado "booleano" ("bool"), que puede tomar dos valores: verdadero ("true") o falso ("false"):

bool encontrado;
encontrado = true;

Este tipo de datos hará que podamos escribir de forma sencilla algunas condiciones que podrían resultar complejas. Así podemos hacer que ciertos fragmentos de nuestro programa no sean "if ((vidas == 0) || (tiempo == 0) || ((enemigos == 0) && (nivel == ultimoNivel)))" sino simplemente "if (partidaTerminada) ..."

A las variables "bool" también se le puede dar como valor el resultado de una comparación:

// Ejemplo básico
partidaTerminada = false;
if (vidas == 0) partidaTerminada = true;
// Notación alternativa, sin usar "if"
partidaTerminada = vidas == 0;

// Ejemplo más desarrollado
if (enemigos ==0) && (nivel == ultimoNivel)
    partidaTerminada = true;
else
    partidaTerminada = true;
// Notación alternativa, sin usar "if"
partidaTerminada = (enemigos ==0) && (nivel == ultimoNivel);

Lo emplearemos a partir de ahora en los fuentes que usen condiciones un poco complejas (es la alternativa más natural a los "break"). Un ejemplo que pida una letra y diga si es una vocal, una cifra numérica u otro símbolo, usando variables "bool" podría ser:

// Ejemplo_03_05a.cs
// Variables bool
// Introducción a C#, por Nacho Cabanes

using System;

public class Ejemplo_03_05a
{
    public static void Main()
    {
        char letra;
        bool esVocal, esCifra;

        Console.WriteLine("Introduce una letra");
        letra = Convert.ToChar(Console.ReadLine());

        esCifra = (letra >= '0') && (letra <='9');

        esVocal = (letra == 'a') || (letra == 'e') || (letra == 'i') ||
            (letra == 'o') || (letra == 'u');

        if (esCifra) 
            Console.WriteLine("Es una cifra numérica.");
        else if (esVocal) 
            Console.WriteLine("Es una vocal.");
        else
            Console.WriteLine("Es una consonante u otro símbolo.");
    }
}

Ejercicios propuestos:

Ejercicio propuesto 3.5.1: Crea un programa que use el operador condicional para dar a una variable llamada "iguales" (booleana) el valor "true" si los dos números que ha tecleado el usuario son iguales, o "false" si son distintos.
Ejercicio propuesto 3.5.2: Crea una versión alternativa del ejercicio 3.5.1, que use "if" en vez del operador condicional.
Ejercicio propuesto 3.5.3: Crea un programa que use el operador condicional para dar a una variable llamada "ambosPares" (booleana) el valor "true" si dos números introducidos por el usuario son pares, o "false" si alguno es impar.