|
CarlosPes.com
> Curso
de Diseño de Algoritmos
> Instrucción ir_a |
|
Instrucción
ir_a
|
|
|
|
|
¿Qué es
una instrucción de control de salto ir_a?
|
|
En
pseudocódigo, para escribir una instrucción
de salto ir_a, se utiliza la sintaxis: |
|
ir_a
<nombre_de_la_etiqueta> |
|
|
La
instrucción de salto ir_a se puede usar en cualquier parte
del cuerpo de un algoritmo, para transferir incondicionalmente el
control del algoritmo (o programa) a la primera instrucción
después de una etiqueta, o dicho de otra forma, al ejecutar
una instrucción ir_a, el control del programa se transfiere
(salta) a la primera instrucción después de una
etiqueta. Una etiqueta se define mediante su nombre (identificador)
seguido del carácter dos puntos (:).
Ejemplo 1: En el siguiente algoritmo se utiliza
la
instrucción ir_a para resolver el mismo problema que el del
ejemplo 1 del apartado "Instrucción
interrumpir": |
|
algoritmo
Numeros_opuestos_del_menos_10_al_mas_10
variables
entero n, a
inicio
a ← 0
hacer
escribir(
"Introduzca un número entero: " )
leer( n )
si ( n = 0 )
escribir( "ERROR: El cero no tiene opuesto." )
ir_a etiqueta_1
/* En el caso de que n sea un cero,
el control del programa salta a la primera
instrucción después de etiqueta_1. */
fin_si
escribir( "El
opuesto es: ", -n )
a ← a + n
mientras ( n >= -10 y n <= 10 )
etiqueta_1:
escribir( "Suma: ", a )
fin |
|
|
Los
resultados por pantalla de este algoritmo son idénticos a
los de los algoritmos de los ejemplos 1 y 2 del apartado "Instrucción
interrumpir".
En pantalla: |
|
Introduzca un número
entero: -4
El opuesto es: 4
Introduzca un número entero: 12
El opuesto es: -12
Introduzca un número entero: 0
ERROR: El cero no tiene opuesto.
Suma: 8 |
|
|
La
traza del algoritmo es: |
|
|
|
Normalmente,
al igual que ocurre con las instrucciones interrumpir y continuar,
cuando en un algoritmo se utiliza una instrucción ir_a, la
ejecución de ésta también se condiciona. |
|