Neste post vou ensinar como utilizar a estrutura de decisão if then else no Delphi. Provavelmente será uma das instruções que você mais irá utilizar nos seus projetos.
Em Pascal existem duas instruções que realizam tomadas de decisão e desvios de operações:
- a instrução de decisão simples if…then; e
- a instrução de decisão composta if…then…else.
COMO UTILIZAR A ESTRUTURA DE DECISÃO IF THEN ELSE NO DELPHI
If…then
A instrução if…then tem por finalidade tomar uma decisão e efetuar um desvio no processamento, dependendo, é claro, da condição atribuída ser verdadeira ou falsa.
Sendo a condição verdadeira, será executada a instrução que estiver escrita após a instrução if..then. Se a instrução for falsa, serão executadas as instruções que estejam após as instruções consideradas verdadeiras.
Sintaxe:
1. if <condição> then
2. <instrução para condição verdadeira>;
3. <demais instruções>;
4. <demais instruções>;
5. <demais instruções>;
6. <…>;
Repare que na situação acima, como temos apenas uma instrução a ser executada pelo if…then, não temos a necessidade de utilizar o begin…end.
Sendo assim, apenas a instrução da linha 2 será condicionada pelo if…then. Já as demais instruções (linha 3 em diante) serão executadas independentemente da condição ser verdadeira ou falsa.
Veja agora um exemplo com mais de uma instrução dentro da condição if…then:
Sintaxe:
1. if <condição> then
2. begin
3. <instrução para condição verdadeira>;
4. <instrução para condição verdadeira>;
5. <instrução para condição verdadeira>;
6. end;
7. <demais instruções>;
8. <demais instruções>;
9. <…>;
Na situação acima, temos mais de uma instrução condicionada pela estrutura de decisão if…then. Neste caso, tivemos que utilizar o begin…end para fazer o controle do bloco.
Portanto, as linhas 3, 4 e 5 estão dentro do bloco condicionado pelo resultado verdadeiro da estrutura de decisão if…then. Enquanto que as linhas 7 em diante, serão executadas independentemente da condição se verdadeira ou falsa.
If…then…else
Assim como a instrução if…then, a instrução if…then…else tem por finalidade tomar uma decisão e efetuar um desvio no processamento. Se a condição for verdadeira será executada a instrução logo abaixo do if…then.
Sendo a condição falsa, será executada a instrução que estiver posicionada logo após a instrução else. O conceito de blocos de instruções e a forma de utilizar o begin…end valem também para esta instrução.
Sintaxe:
1. if <condição> then
2. <instrução para condição verdadeira>
3. else
4. <instrução para condição falsa>;
5. <demais instruções>;
6. <demais instruções>;
7. <demais instruções>;
8. <…>
Na situação acima temos a linha 2 representando a instrução que será realizada se a condição do if…then for verdadeira. Caso a condição seja falsa, então a linha 4 será executada. As linhas 5 em diante serão executadas independentemente da condição se verdadeira ou falsa.
Caso venha a existir mais de uma instrução verdadeira ou falsa para uma condição, estas deverão estar inseridas em um bloco controlado pelo begin…end.
Sintaxe:
01. if <condição> then
02. begin
03. <instrução para condição verdadeira>;
04. <instrução para condição verdadeira>;
05. end
06. else
07. begin
08. <instrução para condição falsa>;
09. <instrução para condição falsa>;
10. end;
11. <demais instruções>;
12. <demais instruções>;
13. <demais instruções>;
14. <…>;
Na situação acima, as linhas 3 e 4 representam as instruções que serão realizadas se a condição do if…then for verdadeira.
Caso a condição seja falsa, então o else será processado e as linhas 8 e 9 serão executadas. As linhas 11 em diante serão executadas independentemente da condição se verdadeira ou falsa.
Não sei se você reparou, mas observe que nos dois últimos casos abordados acima, qualquer instrução que antecede o comando else está escrita sem o ponto e vírgula (;).
Isto ocorre pelo fato da instrução else ser uma extensão da instrução if…then, e sendo assim, o final da condição somente ocorre após o processamento da instrução else.
Espero que tenha gostado! 🙂
Dúvidas? Deixe seu comentário abaixo.