Tenho 7 If e quero fazer um desvio em cada um. Como ?

Delphi

25/02/2003

Exemplo :
If cor = ´azul´
procedure azuk......
If cor = ´amarelo´
procedure amarelo....

procedure azul...
read
if ...
exit
end

Como fazer essas chamadas de procedures.
Depois que a procudure for chama, não retornara mais para o If, porque o programa vai fazer umas leituras e vai encerrar (Exit).
Apenas queria fazer esse desvio para ficar mais organizado.
Obrigado


Anonymous

Anonymous

Curtidas 0

Respostas

Anonymous

Anonymous

25/02/2003

vc pode fazer uso do else assi:


if cor = ´azul´ then
procedure Tal
else
if cor = ´amarela´ then
procedure tal
else
if cor = ´verde´ then
procedure tal;


Falou.
Leandro
ICQ 128124370


GOSTEI 0
Anonymous

Anonymous

25/02/2003

O jeito mais organizado de fazer é esse:

Case Cor Of
[color=green:2d70cbbaac]AZUL[/color:2d70cbbaac]: [color=red:2d70cbbaac]ProcAzul[/color:2d70cbbaac];
[color=green:2d70cbbaac]AMARELO[/color:2d70cbbaac]: [color=red:2d70cbbaac]ProcAmarelo[/color:2d70cbbaac];
[color=green:2d70cbbaac]VERDE[/color:2d70cbbaac]: [color=red:2d70cbbaac]ProcVerde[/color:2d70cbbaac]
...
... // Todas as outras cores
...

End;

Não esqueça de colocar o End no final do Case.
As cores em letras maiúsculas e letras verdes são os nomes das constantes de cores.
Ex:
Const
AZUL = 1;
AMARELO = 2;
VERDE =3;

Os nomes em vermelho são as chamadas dos procedimentos.
Ex:
procedure ProcAzul;
begin
... // Aqui vai o seu código
end;

Não precisa colocar o exit, porque no final do procedimento, a execução retorna para o case. Como não há mais nada referente àquela cor, sai do case e vai em frente.

Entendeu?


GOSTEI 0
Anonymous

Anonymous

25/02/2003

Bem, vejo que você esta aprendendo no escuro e não tem os fundamentos basicos de algoritimos nem de estrutura de dados. Os devios condicionais como o IF e o CASE são padrões em todas as linguagens de progremação e seus fundamentos vem da algebra de Boole, onde todas as tecnologias do momento são fundadas. Pra o que você quer é o seguinte :

If Cor = ´Azul´ Then
Procedure Azul
else if Cor = preto then
Procedure Preto
Else
Exit;


Não existe desvios dentro do If, porque ele proprio é um desvio. No While você pode interromper um processamento subtamente sem satisfazer a condição (O que não é elegante) mas no if Isso seria uma aberração. Compre um livro de algoritimos com pascal ou C que vc vai aprender estes fundamentos.


Exemplo : If cor = ´azul´ procedure azuk...... If cor = ´amarelo´ procedure amarelo.... procedure azul... read if ... exit end Como fazer essas chamadas de procedures. Depois que a procudure for chama, não retornara mais para o If, porque o programa vai fazer umas leituras e vai encerrar (Exit). Apenas queria fazer esse desvio para ficar mais organizado. Obrigado



GOSTEI 0
POSTAR