Desafío: Declaración Else
La sentencia else es un elemento crucial para controlar el flujo del programa. Complementa la sentencia if permitiendo que un programa tome diferentes acciones dependiendo de si una condición dada es true o false. Esencialmente, permite que el programa elija entre dos caminos alternativos.
else.h
12345678if (condition) { // Code to be executed if the condition is true } else { // Code to be executed if the condition is false }
Si la condición es false, el código dentro del primer bloque (el que sigue a if) se omite, y el código dentro del segundo bloque (el que sigue a else) se ejecuta.
Al ejecutarse, parece funcionar como se espera. Dado que la variable x es menor que 10, la salida indica correctamente: X is not greater than 10.
main.cpp
12345678910111213#include <iostream> int main() { int x = 5; if (x > 10) { std::cout << "X is greater than 10" << std::endl; } std::cout << "X is not greater than 10" << std::endl; }
Intenta modificar el valor de una variable x a un número mayor que 10 y luego ejecuta nuevamente el fragmento de código proporcionado. Como puedes observar, hay dos mensajes distintos: uno que indica que X is greater than 10, y otro que especifica que X is not greater than 10.
Lo fundamental a comprender es que la segunda instrucción std::cout no forma parte del bloque if, sino que siempre se ejecuta incondicionalmente después del bloque if, lo que resulta en la impresión de ambos mensajes. Por supuesto, esto debe corregirse y este problema puede resolverse utilizando la palabra clave else.
main.cpp
123456789101112131415#include <iostream> int main() { int x = 5; if (x > 10) { std::cout << "X is greater than 10" << std::endl; } else { std::cout << "X is not greater than 10" << std::endl; } }
Ahora todo funciona como se espera y solo una de las dos instrucciones se ejecutará dependiendo del valor de x.
La palabra clave else puede ir seguida de cualquier instrucción, incluyendo otro bloque if, y esta cadena puede extenderse según sea necesario, pero es importante no abusar de esta construcción porque puede dificultar la comprensión del flujo del programa.
Swipe to start coding
Está desarrollando un calculador de envíos que determina el costo de entrega según el peso de un paquete.
- Dentro de la función
calculateShippingCost, cree una variablecostpara almacenar el precio del envío. - Utilice declaraciones condicionales para determinar el costo:
- Si
weightKges menor o igual a 2, establezca el costo en 5.0. - Si
weightKges menor o igual a 5, establezca el costo en 10.0. - De lo contrario, establezca el costo en 20.0.
- Si
- Devuelva el valor de
costdesde la función.
Solución
solution.cpp
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 7.69
Desafío: Declaración Else
Desliza para mostrar el menú
La sentencia else es un elemento crucial para controlar el flujo del programa. Complementa la sentencia if permitiendo que un programa tome diferentes acciones dependiendo de si una condición dada es true o false. Esencialmente, permite que el programa elija entre dos caminos alternativos.
else.h
12345678if (condition) { // Code to be executed if the condition is true } else { // Code to be executed if the condition is false }
Si la condición es false, el código dentro del primer bloque (el que sigue a if) se omite, y el código dentro del segundo bloque (el que sigue a else) se ejecuta.
Al ejecutarse, parece funcionar como se espera. Dado que la variable x es menor que 10, la salida indica correctamente: X is not greater than 10.
main.cpp
12345678910111213#include <iostream> int main() { int x = 5; if (x > 10) { std::cout << "X is greater than 10" << std::endl; } std::cout << "X is not greater than 10" << std::endl; }
Intenta modificar el valor de una variable x a un número mayor que 10 y luego ejecuta nuevamente el fragmento de código proporcionado. Como puedes observar, hay dos mensajes distintos: uno que indica que X is greater than 10, y otro que especifica que X is not greater than 10.
Lo fundamental a comprender es que la segunda instrucción std::cout no forma parte del bloque if, sino que siempre se ejecuta incondicionalmente después del bloque if, lo que resulta en la impresión de ambos mensajes. Por supuesto, esto debe corregirse y este problema puede resolverse utilizando la palabra clave else.
main.cpp
123456789101112131415#include <iostream> int main() { int x = 5; if (x > 10) { std::cout << "X is greater than 10" << std::endl; } else { std::cout << "X is not greater than 10" << std::endl; } }
Ahora todo funciona como se espera y solo una de las dos instrucciones se ejecutará dependiendo del valor de x.
La palabra clave else puede ir seguida de cualquier instrucción, incluyendo otro bloque if, y esta cadena puede extenderse según sea necesario, pero es importante no abusar de esta construcción porque puede dificultar la comprensión del flujo del programa.
Swipe to start coding
Está desarrollando un calculador de envíos que determina el costo de entrega según el peso de un paquete.
- Dentro de la función
calculateShippingCost, cree una variablecostpara almacenar el precio del envío. - Utilice declaraciones condicionales para determinar el costo:
- Si
weightKges menor o igual a 2, establezca el costo en 5.0. - Si
weightKges menor o igual a 5, establezca el costo en 10.0. - De lo contrario, establezca el costo en 20.0.
- Si
- Devuelva el valor de
costdesde la función.
Solución
solution.cpp
¡Gracias por tus comentarios!
single