Las estructuras de control permiten dar decisiones y realizar un proceso repetidas veces. Son los denominados bifurcaciones y bucles. Este tipo de estructuras son comunes en cuanto a concepto en la mayoría de de los lenguajes de programación, aunque su sintaxis puede variar de un lenguaje de programación a otro.
°IF....
°THEN....
°ELSE..
°SELECT CASE FOR..
°NEXT DO..
°LOOP..
°WHILE..
°WEND..
°FOR EACH...
NEXT....
Bifurcaciones if e if....else.
por ejemplo,
numero =53´se inicializa la variable. if
Numero<10 then
Digitos =1
elself numero <100 then
´En este caso la condicion se cumple (then )
luego se ejecuta lo siguiente .
digitos =2
else ´ En el caso en que no se cumplan los
dos anteriores se asigna 3
digitos =3
end if
Sentencia SELECT CASE
Esta sentencia permite ejecutar una de entre varias acciones una de entre varias acciones en función
del valor de una expresión .
Es una alternativa a if ...then... ...elself
diferentes
valores. Su forma general es la siguiente :
SELECT CASE expresión
CASE etiq1
[sentencias]
Case Else
sentencian
End Select
POR EJEMPLO:
NUMERO = 8 ´ SE inicializan las variable.
Select Case Numero ´ Se va a evaluar la variable Numero .
case 1 to 5´ numero esta entre 1y 5.
resultado = "se encuentra entre 1 y 5"
´Lo siguiente se ejecuta si es true la expresion.
case 6,7, 8´ numero es uno de los tres valores .
resultado ="se encuentra entre 6 y 8"
CASE is = 9, is = 10 ´ numero es 9 o 10 .
resultado = " el valor es 9 o 10 "
case else ´ resto de valores.
resultado = " EL NUMERO no se encuentra
entre 1 y 10"
end select
SENTENCIA FOR... NEXT
La sentencia for da lugar a un lazo o bucle, y permite ejecutar un conjunto de sentencias cierto
numero de veces. Su forma general es :
FOR variable = exprcion 2
[step exprsion 3] [sentencias]
exit for
[sentencias]
next [variables]
La sentencia exit for es opcional y permite salir de un bucle for .... next antes de que
este
finalice. POR EJEMPLO:
MyString ="informática"
for word =3 to 1 step - ´3 veces decrementado de 1 en 1.
for chars = words & chars ´ se añade el
numero chars al string .
next chars ´ se incrementa el contador MyString & """ ´ se añade un
espacio .
next words
´ El valor de mystring es : informática 34567
234556 12345
SENTENCIA DO.... LOOP
Un loop (bucle ) repite la ejecución de un conjunto de sentencias mientras una
condición dada sea
cierta, o hasta que una condición dada sea cierta. la condición puede ser verificada
antes o
después de ejecutarse el conjunto de sentencias. sus posibles formas son las
siguientes :
´´FORMATO 1:
DO [{WHILE/UNTIL} condición ]
loop
´formato 2:
do
[sentencias ] [exit do] [sentencias ]
loop [{while /until}condición]
la sentencias opcional exit do permite salir
de una bucle do... loop antes de que
finalice
este. por ejemplo:
check= true ´ se inicializan las variables.
counts = 0
do ´ empieza sin comprobar ninguna
condicion.
do while counts < 20 ´ bucle que acaba si
counts >=20 o con exit do.
counts = counts + 1 ´ se incrementa counts .
if counts = 10 then ´ si counts es 10 .
false.
exit do ´ se acaba el segundo do.
end if
loop
loop until check = false ´ salir del " loop "si
check es false.
SENTENCIA WHILE ...... WEND
Esta sentencia es otra forma de generar bucles que se recorren mientras se cumplan
la condicion
inicial. su estructura es la siguiente:
while condicion
[sentencias]
wend
POR EJEMPLO
Counts = 0 ´ se inicializa la variable.
while counts<20´ se comprueba el valor
de counts
counts = counts + 1´ se incrementa el valor
de counts.
wend ´ se acaba el bucle cuando counts >
19.
SENTENCIA FOR EACH.... NEXT
Esta construcción es similar al bucle for , con la diferencia de que la variable que controla la
repetición del bucle no toma valores entre un mínimo y un máximo, sino a partir de los elementos de
un array ( o de una colección de objetos ).
La forma general es la siguiente :
for each variable in grupo
[sentencias ]
next variable
con array variable tiene que ser de tipo
variant
o una variable de tipo object. esta
construcción es muy útil cuando no se sabe
el numero de
elementos que tiene el arra y o la colección de objetos
No hay comentarios:
Publicar un comentario