Expressão (computação): diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Substituição de predefinições obsoletas
DannyS712 (discussão | contribs)
m <source> -> <syntaxhighlight> (phab:T237267)
Linha 21:
A linguagem [[Ada (linguagem de programação)|Ada]] dispões de dois operadores lógicos que implementam explicitamente a avaliação curto-circuito. São os operadores '''and then''' e '''or else'''.<ref name="smith">{{Citar livro|autor=SMITH, James F.; FRANK, Thomas S|título=Introduction to Programming Concepts and Methods with Ada|subtítulo=|idioma=inglês|edição=|local=New York|editora=McGraw- Hill|ano=1994|páginas=328|volumes=|volume=|id=ISBN 0-07-911725-2}}</ref> Por exemplo, ambas as partes das expressões abaixo serão avaliadas pois os operadores '''and''' e '''or''' em Ada não fazem avaliação curto-circuito:
 
<sourcesyntaxhighlight lang="ada">
( a = 0 ) and ( c/a < d ) -- para a = 0 (dará erro de divisão por zero)
( a > b ) or ( c < d ) -- para a > b
</syntaxhighlight>
</source>
 
Contudo, nos casos abaixo, apenas a primeira parte das expressões será avaliada uma vez que a avaliação curto-circuito saltara a segunda parte de ambas as expressões:
 
<sourcesyntaxhighlight lang="ada">
( a = 0 ) and then ( c/a < d ) -- para a = 0 (não dará erro de divisão por zero, pois a segunda expressão não será avaliada)
( a > b ) or else ( c < d ) -- para a > b
</syntaxhighlight>
</source>
 
==Ver também==