
"Si no" (Programación)

Actualiza para más contenido
¿Verdadero o falso? Al usar la instrucción "If else", como en el ejemplo del vídeo, sólo se necesita una condición.
Lena ha comprado una caja de bombones con bombones de chocolate con leche y chocolate negro. Le ha enseñado a su robot a darles a María y a Leon su variedad preferida. Éste es el pseudocódigo de las instrucciones de Lina a su robot: Coger un bombón. Si es chocolate con leche, dárselo a María. Si es chocolate negro, dárselo a Leon. Veamos cómo funciona el pseudocódigo.
El robot coge un bombón, que resulta ser de chocolate con leche. La primera condición es "chocolate con leche", que se cumple, así que... el robot le da el bombón a María. El robot ya no tiene ningún bombón en la mano. Aun así, pasa a la siguiente instrucción que dice: "Si chocolate negro" Pero el robot no tiene ningún bombón en la mano.
No hace falta comprobar si es negro. ¿Qué instrucción al respecto le puede dar Lina al robot? El pseudocódigo de Lina tiene dos condiciones: "Si chocolate con leche" y "Si chocolate blanco". La caja de bombones contiene sólo dos tipos de bombones. Si no es de chocolate con leche el bombón que coge el robot, tiene que ser de chocolate negro. Se puede cambiar el pseudocódigo a: "Si chocolate con leche, Dar bombón a María Si no, Dar bombón a Leon".
Por tanto sólo se necesita una condición para que María y Leon reciban su bombón favorito. Pongamos a prueba el pseudocódigo de Lina. El robot coge un bombón y es de chocolate con leche. La condición "chocolate con leche" se cumple. El robot le da el bombón a María.
Y luego.... ¿Has visto lo que ha pasado? Cumplida la condición "chocolate con leche", el robot se ha saltado las dos instrucciones "Si no" y también la instrucción "Dar bombón a Leon". El programa finaliza después de que el robot le haya dado el bombón a María. Reiniciemos el programa. El robot coge otro bombón.
Esta vez es de chocolate negro. La condición es falsa y el programa se salta la instrucción "Dar bombón a María". Como el robot sabe que no es de chocolate con leche, se llevan a cabo las instrucciones "Si no" y "Dar bombón a Leon". Basta con que el robot compruebe si es de chocolate con leche para saber quién va a recibir el bombón. Al usar menos condiciones, el código se vuelve más eficaz.
Basta con probar una vez, y no dos, si una condición es verdadera. Resulta más sencillo interpretar el código de Lina. Es un código más elegante. Sí, de hecho, los programadores hablan de "códigos elegantes". El pseudocódigo nuevo es mejor para resolver la tarea.
Es un algoritmo mejor para repartir bombones. El código ahora es más elegante que al principio. ¡Nada de códigos chapuceros!