Difference between revisions of "Basic Pascal Tutorial/Chapter 3/CASE/es"
m |
m (Text replace - "delphi>" to "syntaxhighlight>") |
||
Line 3: | Line 3: | ||
Suponga que quiere ejecutar una acción si <tt>b</tt> es <tt>1, 7, 2037,</tt> ó <tt>5</tt>; y otra distinta en caso contrario. Puede hacer esto: | Suponga que quiere ejecutar una acción si <tt>b</tt> es <tt>1, 7, 2037,</tt> ó <tt>5</tt>; y otra distinta en caso contrario. Puede hacer esto: | ||
− | < | + | <syntaxhighlight> |
if (b = 1) or (b = 7) or (b = 2037) or (b = 5) then | if (b = 1) or (b = 7) or (b = 2037) or (b = 5) then | ||
Sentencia1 | Sentencia1 | ||
else | else | ||
Sentencia2; | Sentencia2; | ||
− | </ | + | </syntaxhighlight> |
Pero en ese caso, sería más sencillo establecer la acción para la lista de números utilizando una sentencia <tt>case</tt>: | Pero en ese caso, sería más sencillo establecer la acción para la lista de números utilizando una sentencia <tt>case</tt>: | ||
− | < | + | <syntaxhighlight> |
case b of | case b of | ||
1,7,2037,5: Sentencia1; | 1,7,2037,5: Sentencia1; | ||
otherwise Sentencia2 | otherwise Sentencia2 | ||
end; | end; | ||
− | </ | + | </syntaxhighlight> |
La forma general de uso de la sentencia case es: | La forma general de uso de la sentencia case es: | ||
− | < | + | <syntaxhighlight> |
case selector of | case selector of | ||
List1: Sentencia1; | List1: Sentencia1; | ||
Line 29: | Line 29: | ||
otherwise Sentencia | otherwise Sentencia | ||
end; | end; | ||
− | </ | + | </syntaxhighlight> |
La parte <tt>otherwhise</tt> es opcional. Cuando está disponible, es diferente entre compiladores. En algunos se usa la palabra <tt>else</tt> en vez de <tt>otherwise</tt>. | La parte <tt>otherwhise</tt> es opcional. Cuando está disponible, es diferente entre compiladores. En algunos se usa la palabra <tt>else</tt> en vez de <tt>otherwise</tt>. |
Revision as of 13:56, 24 March 2012
Case inicia una sentencia case. La sentencia case compara el valor de la expresión ordinal para cada elemento, que puede ser una constante, un subrango, o una lista de ellas separadas por comas. Los campos se separan de la acción mediante dos puntos ":"
Suponga que quiere ejecutar una acción si b es 1, 7, 2037, ó 5; y otra distinta en caso contrario. Puede hacer esto:
if (b = 1) or (b = 7) or (b = 2037) or (b = 5) then
Sentencia1
else
Sentencia2;
Pero en ese caso, sería más sencillo establecer la acción para la lista de números utilizando una sentencia case:
case b of
1,7,2037,5: Sentencia1;
otherwise Sentencia2
end;
La forma general de uso de la sentencia case es:
case selector of
List1: Sentencia1;
List2: Sentencia2;
...
Listn: Sentencian;
otherwise Sentencia
end;
La parte otherwhise es opcional. Cuando está disponible, es diferente entre compiladores. En algunos se usa la palabra else en vez de otherwise.
selector es cualquier variable o un tipo de dato ordinal. No se pueden usar números reales.
Tenga en cuenta que las listas deben consistir en valores literales. Es decir, debe utilizar constantes - no se pueden utilizar variables.
previo | índice | siguiente |