Codificación aprenderaprogramar.com: CU00142A
INSTRUCCIONES SI ... ENTONCES SI Y SI ... ENTONCES - SINO
La instrucción Si ... Entonces permite controlar qué procesos tienen lugar en función del valor de una o varias variables o de las decisiones del usuario. Escribiremos esta instrucción de la siguiente manera:
Si [Condición] Entonces Instrucción 1 Instrucción 2 · · · Instrucción n FinSi |
Se podrán introducir instrucciones a realizarse en caso de no cumplirse la condición:
Si [Condición] Entonces Instrucción 1 Instrucción 2 · · · Instrucción n SiNo Instrucción A Instrucción B · · · Instrucción Z FinSi |
Nótese que el uso de sangrías permite identificar el bloque de sentencias a ejecutar. Gráficamente:
Instrucción Si - Entonces
Instrucción Si - Entonces - SiNo
Recordemos que para expresar condiciones disponemos de símbolos matemáticos como =, >, <, etc. así como de los operadores y (and) y ó (or).
Si A > 7 y B < 5 Entonces Instrucción 1 Instrucción 2 FinSi |
Si A > 7 Entonces B = 33 y M = 17 FinSi |
En cuanto a los diagramas de flujo, si una condición compuesta es de gran longitud, consideraremos válido achatar el rombo para adecuarlo al texto.
EJEMPLO
Válido
Válido
La instrucción Si ... Entonces es anidable dentro de sí misma. Esto significa que puede haber un bloque Si ... Entonces dentro de otro. Se hace más necesario que nunca el sangrado para que el pseudocódigo sea legible. Ha de verificarse que todo Si se cierra con un FinSi.
Anidamiento simple (pseudocódigo y diagrama de flujo) |
Si [Condición 1] Entonces Instrucción 1 Instrucción 2 Si [Condición 2] Entonces Instrucción 3 Instrucción 4 SiNo Instrucción 5 Instrucción 6 FinSi SiNo Instrucción 7 Instrucción 8 FinSi |
Anidamiento doble (pseudocódigo y diagrama de flujo) |
Si [Condición 1] Entonces Instrucción 1 Instrucción 2 Si [Condición 2] Entonces Instrucción 3 Instrucción 4 Si [Condición 3] Entonces Instrucción 5 Instrucción 6 SiNo Instrucción 7 Instrucción 8 FinSi SiNo Instrucción 9 Instrucción 10 FinSi SiNo Instrucción 11 Instrucción 12 FinSi |
Los anidamientos se pueden convertir en triples, cuádruples, quíntuples, etc. lo cual convierte en farragosa la lectura y seguimiento del pseudocódigo. Habrá que tratar de evitar excesos usando otros recursos, desviando a módulos independientes, etc.
Cuando sea necesario por la complejidad en la toma de decisiones, se recurrirá a una tabla de decisión como paso previo a la confección del pseudocódigo o diagrama de flujo.
Para hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.