En el primer ejercicio con if, el resultado que arroja es del descuento de una sola unidad. Una alternativa de código que hice fue ésta: #include using namespace std; int main() { float precio; int unidades; float total; cout > precio; cout > unidades; if (unidades>2) precio-=precio*0.1; total==precio*unidades; cout
@blackfay04 жыл бұрын
Todo me pareció muy bien explicado e ilustrativo, aunque no entendí bien el switch... ¿Porqué el switch salta hacia los otros casos si no se pone break?
4 жыл бұрын
Es la forma en que decidieron que se comporte C++, pero no es un capricho sino que tiene una explicación, y es que podría darse que en algún algoritmo necesites ejecutar más de un case. Supongamos que estamos evaluando el valor de una variable de tipo int y queremos hacer algo si vale 1, otra cosa si vale 2, otra si vale 3, etc. Pero si vale 1 necesitamos ejecutar el bloque de código que pusimos para cuando el valor es 1 y luego también el del valor 2, entonces podríamos hacer: case 1: //un bloque de código case 2: //otro bloque break; Otro ejemplo podría ser que para el caso 1, 2 y 3 quieras ejecutar el mismo bloque de código, pero en el case de un switch en C++ no podemos poner expresiones (no podríamos escribir algo como "case 1 or 2 or 3" porque no es válido). Entonces, podemos hacer algo así: case 1: case 2: case 3: //bloque de código break; Más en detalle, lo que sucede con switch es que, al traducirse al lenguaje de máquina, se convierte en un "jump" o un salto. Si no se indica otro salto (con el break) el código simplemente continúa ejecutándose de manera lineal.
@blackfay04 жыл бұрын
@ Perfecto entonces. Gracias por aclararme esa duda :).
@melvinrodriguez64714 жыл бұрын
EXCELENTE EXPLICACIÓN,.. PODRIAN PONER UN VIDEO SOBRE RUBY