Nested Conditionals · Condicionales Anidados
| English | Español |
|---|---|
| nested conditional/ˈnestɪd kənˈdɪʃənl/ | condicional anidado |
| three or more/θriː ɔː mɔː/ | tres o más |
| outcomes/ˈaʊtkʌmz/ | resultados |
| else-if/els ɪf/ | else-if |
| execution path/ˌeksɪˈkjuːʃn pæθ/ | ruta de ejecución |
| readability/ˌriːdəˈbɪlɪti/ | legibilidad |
When two paths aren't enough
- Sometimes one decision is not enough.
- A nested conditional 嵌套条件语句 places one conditional inside another.
- This lets a program select among three or more 三个或更多 outcomes 结果, not just two.
- Think grades A, B, C, F — four outcomes from one score.
Cuando dos caminos no son suficientes
- A veces una sola decisión no es suficiente.
- Una condicional anidada 嵌套条件语句 coloca una condicional dentro de otra.
- Esto permite que un programa seleccione entre tres o más 三个或更多 resultados 结果, no solo dos.
- Piensa en las calificaciones A, B, C, F — cuatro resultados a partir de una sola puntuación.
A nested conditional lets a program: · Un condicional anidado permite a un programa:
Nesting adds more branches than a single IF/ELSE. · Anidar añade más ramas que un único IF/ELSE.
A nested conditional selects among three or more possible ______. · Un condicional anidado selecciona entre tres o más posibles ______.
Each branch leads to a different outcome. · Cada rama conduce a un resultado diferente.
The else-if structure
- A clean way to write this is an else-if 否则如果 structure, testing conditions in sequence:
- IF the first is true, do the first thing;
- ELSE IF the second is true, do the second thing;
- ELSE do the last thing.
La estructura else-if
- Una forma limpia de escribir esto es una estructura else-if 否则如果, evaluando las condiciones en secuencia:
- SI la primera es verdadera, haz lo primero;
- SINO SI la segunda es verdadera, haz lo segundo;
- SINO haz lo último.
An else-if chain for grades · Una cadena else-if para calificaciones
Drag the score and watch which branch runs. An else-if chain tests top to bottom and takes the FIRST condition that is true. · Arrastra la puntuación y observa qué rama se ejecuta. Una cadena else-if prueba de arriba hacia abajo y toma la PRIMERA condición que sea verdadera.
An else-if chain stops testing: · Una cadena else-if deja de probar:
It takes the first true branch and skips the rest. · Toma la primera rama verdadera y omite el resto.
Order how the program checks the grade conditions. · Ordena cómo el programa verifica las condiciones de calificación.
It tests from the top down and stops at the first true one. · Prueba de arriba hacia abajo y se detiene en la primera verdadera.
Trace the path
- The program checks conditions from top to bottom.
- It stops at the first one that is true.
- To understand nested conditionals, trace the execution path 执行路径 for given inputs.
- Follow each true-or-false result to see which branch wins.
Rastrea el camino
- El programa verifica las condiciones de arriba hacia abajo.
- Se detiene en la primera que sea verdadera.
- Para comprender las condicionales anidadas, rastrea el camino de ejecución 执行路径 para entradas dadas.
- Sigue cada resultado verdadero o falso para ver qué rama gana.
With the grade chain (≥90 A, ≥80 B, ≥70 C, else F), score 85 gives: · Con la cadena de calificaciones (≥90 A, ≥80 B, ≥70 C, else F), una puntuación de 85 da:
85 ≥ 90 is false; 85 ≥ 80 is true → "B", and testing stops. · 85 ≥ 90 es falso; 85 ≥ 80 es verdadero → "B", y la prueba se detiene.
Simplifying deeply nested conditionals improves readability and reduces errors. · Simplificar los condicionales anidados profundamente mejora la legibilidad y reduce errores.
Fewer, clearer branches are easier to get right. · Menos ramas, más claras, son más fáciles de acertar.
Keep it readable
- Deeply nested logic can become hard to read.
- Simplify overly complex nesting to improve readability 可读性 and reduce errors.
Score to grade. IF score ≥ 90 → "A"; ELSE IF ≥ 80 → "B"; ELSE IF ≥ 70 → "C"; ELSE → "F". For score 85: 85 ≥ 90 is false, so move on; 85 ≥ 80 is true → grade "B", and testing stops. Order matters — we already know it is below 90.
Mantén la legibilidad
- La lógica profundamente anidada puede volverse difícil de leer.
- Simplifica los anidamientos excesivamente complejos para mejorar la legibilidad 可读性 y reducir errores.
Puntuación a calificación. SI puntuación ≥ 90 → "A"; SINO SI ≥ 80 → "B"; SINO SI ≥ 70 → "C"; SINO → "F". Para puntuación 85: 85 ≥ 90 es falso, así que continúa; 85 ≥ 80 es verdadero → calificación "B", y la evaluación se detiene. El orden importa — ya sabemos que está por debajo de 90.
A nested conditional chooses among three or more outcomes, usually with an else-if chain that tests top to bottom and stops at the first true condition. Trace the execution path to find which branch runs (score 85 → "B"), and keep nesting shallow for readability.
Una condicional anidada 嵌套条件语句 selecciona entre tres o más 三个或更多 resultados 结果, generalmente con una cadena else-if 否则如果 que evalúa de arriba hacia abajo y se detiene en la primera condición verdadera. Rastrea el camino de ejecución 执行路径 para encontrar qué rama se ejecuta (puntuación 85 → "B"), y mantén los anidamientos poco profundos para la legibilidad 可读性.