La sentencia if-else
puede existir de dos formas: con o
sin el else
. Las dos formas son:
if (expresión) sentencia
ó
if (expresión) sentencia else sentencia
La «expresión» se evalúa como true
o
false
. La «sentencia» puede ser una simple
acabada en un punto y coma, o bien una compuesta, lo que no es
más que un grupo de sentencias simples encerradas entre
llaves. Siempre que se utiliza la palabra
«sentencia», implica que la sentencia es simple o
compuesta. Tenga en cuenta que dicha sentencia puede ser incluso
otro if
, de modo que se pueden anidar.
//: C03:Ifthen.cpp // Demonstration of if and if-else conditionals #include <iostream> using namespace std; int main() { int i; cout << "type a number and 'Enter'" << endl; cin >> i; if(i > 5) cout << "It's greater than 5" << endl; else if(i < 5) cout << "It's less than 5 " << endl; else cout << "It's equal to 5 " << endl; cout << "type a number and 'Enter'" << endl; cin >> i; if(i < 10) if(i > 5) // "if" is just another statement cout << "5 < i < 10" << endl; else cout << "i <= 5" << endl; else // Matches "if(i < 10)" cout << "i >= 10" << endl; } ///:~
Listado 3.2. C03/Ifthen.cpp
Por convenio se indenta el cuerpo de una sentencia de control de flujo, de modo que el lector puede determinar fácilmente donde comienza y dónde acaba [39].
[39] Fíjese en que todas las convenciones parecen acabar estando de acuerdo en que hay que hacer algún tipo de indentación. La pelea entre los estilos de formateo de código no tiene fin. En el Apéndice A se explica el estilo de codificación que se usa en este libro.