Condicionales con C++ ¿Cómo funciona if?
Capítulo 10: El condicional if
Hemos llegado a un punto de lo más interesante en el curso, se trata de los condicionales. Con ellos, podrás hacer cosas que doten de cierta "inteligencia" a tus programas.
Podrás crear código que se ejecute solo bajo ciertas condiciones.
El flujo de ejecución de C++
Antes de empezar con los condicionales y con los bucles (tema que empezaremos al acabar con los condicionales), es importante que sepas que es el flujo de ejecución.
El flujo de ejecución es la forma en que se ejecuta un programa. El código se va leyendo desde la línea 1 hasta la última.
Este es el flujo de ejecución normal en C++, sin embargo, los condicionales y los bucles son capaces de alterarlo. En los próximos capítulos verás como.
El condicional if de C++
El condicional if de c++ es capaz de ejecutar un trozo de código solo si se cumple una condición. En caso de que no se cumpla, se va a ignorar.
El operador > mayor qué
Empecemos con un ejemplo utilizando el operador mayor qué >
, el cual, permite hacer una comparación entre dos valores. ¿Es numero1
mayor que numero2
?
if (10 > 5) {
cout << "El número 10 es mayor que 5";
}
Puesto que 10 es mayor que 5, se ejecuta el código que hay dentro del if
. Solo tiene una línea, pero podrían ser las que quisieras.
El número 10 es mayor que 5
En la lógica de C++, internamente, al ejecutarse el condicional if
, se devuelve únicamente un valor booleano (boolean
). Recuerda del capítulo 6, cuando mostré los tipos de datos, que un tipo boolean
, puede dar un valor de true
o false
.
En el caso del ejemplo anterior, devuelve un true
, la condición es verdadera. En el caso de que sea false, no se ejecutará nada del if.
if (10 > 150) {
cout << "El número 10 es mayor que 150";
}
En la consola, no se ejecuta nada, puesto que la expresión del if es falsa.
Para que lo tengas claro, estas condiciones, solo afectan al código propio del if
. El resto de código trabaja con normalidad.
El operador igual
Veamos un ejemplo utilizando todo lo que has aprendido hasta este punto. Voy a escribir un programa que permita que el usuario introduzca el número que quiera evaluar. Esto será como un mini juego muy simple.
El operador igual en C++ se expresa con el símbolo doble igual ==
. Un solo igual (asignación) =
, tal y como has visto hasta ahora, se utiliza para asignar valores.
// Declaración de variables
int numero1;
// Se solicita un número
cout << "Escribe un número del 1 al 10." << endl;
// Se almacena el número
cin >> numero1;
// Se informa de su evaluación
cout << "Se va a evaluar tu número..." << endl;
// Se compara el número del usuario con el número en el programa
if (numero1 == 7) {
cout << "Enhorabuena, has acertado." << endl;
}
// Independientemente del resultado, se imprime este mensaje
cout << "Fin del juego.";
Probemos un número que no sea 7, para que el if
devuelva false
.
Escribe un número del 1 al 10.
10
Se va a evaluar tu número...
Fin del juego.
He introducido un 10. La condición no se ha cumplido y por lo tanto, se ejecuta todo, excepto el código que lleva el if
.
Ahora probemos con un 7.
Escribe un número del 1 al 10.
7
Se va a evaluar tu número...
Enhorabuena, has acertado.
Fin del juego.
Aunque muy rudimentario de momento, ya tienes tu primer programa en C++ que toma decisiones.
En el siguiente capítulo, veremos otras condiciones lógicas y añadiremos la posibilidad de que el programa realice alguna acción en el caso de que la condición del if
de false
.
Comentarios
Si te quedan dudas sobre el temario, sobre C++, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.