if/else

Pascal, Object Pascal C, C++, C#, JavaScript VBScript
 
if Condição igual a Verdadeiro then
  Instrução1.1;
 
if (Condição igual a Verdadeiro)
  Instrução1.1;
 
if Condição igual a Verdadeiro then
  Instrução1.1
end if
 
 
if Condição igual a Verdadeiro then
  Instrução1.1
else
  Instrução2.1;
 
if (Condição igual a Verdadeiro)
  Instrução1.1;
else
  Instrução2.1;
 
if Condição igual a Verdadeiro then
  Instrução1.1
else
  Instrução2.1
end if
 
 
if Condição igual a Verdadeiro then begin
  Instrução1.1;
  Instrução1.2;
  ...
  Instrução1.n;
end;
if (Condição igual a Verdadeiro) {
  Instrução1.1;
  Instrução1.2;
  ...
  Instrução1.n;
}
if Condição igual a Verdadeiro then
  Instrução1.1
  Instrução1.2
  ...
  Instrução1.n
end if
 
 
if Condição igual a Verdadeiro then begin
  Instrução1.1;
  Instrução1.2;
  ...
  Instrução1.n;
end
else begin
  Instrução2.1;
  Instrução2.2;
  ...
  Instrução2.n;
end;
if (Condição igual a Verdadeiro) {
  Instrução1.1;
  Instrução1.2;
  ...
  Instrução1.n;
}
else {
  Instrução2.1;
  Instrução2.2;
  ...
  Instrução2.n;
}
if Condição igual a Verdadeiro then
  Instrução1.1
  Instrução1.2
  ...
  Instrução1.n
else
  Instrução2.1
  Instrução2.2
  ...
  Instrução2.n
end if
 




Exemplificando

Pascal, Object Pascal C, C++, C#, JavaScript VBScript
 
if X > 0 then
  X:= X + 1;
 
if (X > 0)
  X= X + 1;
 
if X > 0 then
  X= X + 1
end if
 
 
if X > 0 then
  X:= X +1
else
  X:= X - 1;
 
if (X > 0)
  X= X + 1;
else
  X= X - 1;
 
if X > 0 then
  X= X + 1
else
  X= X - 1
end if
 
 
if X > 0 then begin
  X:= X + 1;
  Y:= Y + 1;
  Z:= Z + 1;
end;
if (X > 0) {
  X:= X + 1;
  Y:= Y + 1;
  Z:= Z + 1;
}
if X > 0 then
  X:= X + 1
  Y:= Y + 1
  Z:= Z + 1
end if
 
 
if X > 0 then begin
  X:= X + 1;
  Y:= Y + 1;
  Z:= Z + 1;
end
else begin
  X:= X - 1;
  Y:= Y - 1;
  Z:= Z - 1;
end;
if (X > 0) {
  X= X + 1;
  Y= Y + 1;
  Z= Z + 1;
}
else {
  X= X - 1;
  Y= Y - 1;
  Z= Z - 1;
}
if X > 0 then
  X= X + 1
  Y= Y + 1
  Z= Z + 1
else
  X= X - 1
  Y= Y - 1
  Z= Z - 1
end if
 




case

Os cases são uma variante do if/else.
Servem pra simplificar alguns tipos de if/else.
Por exemplo→

if DiaDaSemana = 1 then
  Dia:= 'Domingo'
else if DiaDaSemana = 2 then
  Dia:= 'Segunda-feira'
else if DiaDaSemana = 3 then
  Dia:= 'Terça-feira'
else if DiaDaSemana = 4 then
  Dia:= 'Quarta-feira'
else if DiaDaSemana = 5 then
  Dia:= 'Quinta-feira'
else if DiaDaSemana = 6 then
  Dia:= 'Sexta-feira'
else
  Dia:= 'Sábado';


Esse código pode ser facilmente convertido prum case.

case DiaDaSemana of
  1: Dia:= 'Domingo';
  2: Dia:= 'Segunda-feira';
  3: Dia:= 'Terça-feira';
  4: Dia:= 'Quarta-feira';
  5: Dia:= 'Quinta-feira';
  6: Dia:= 'Sexta-feira';
else
  Dia:= 'Sábado';
end;


Como se nota o resultado vai dar na mesma, porém o código fica mais claro.



Pascal, Object Pascal C, C++, C#, JavaScript VBScript
 
case Valor of
  Constante1: Instrução1.1;
  Constante2: Instrução1.2;
  ...
  Constanten: Instrução1.n;
else
  Instrução2.1;
end;
switch (Valor) {
  case Constante1:
    Instrução1.1;
    break;
  case Constante2:
    Instrução1.2;
    break;
  ...
  case Constanten:
    Instrução1.n;
    break;
  default:
    Instrução2.1;
    break;
}
select case Valor
  case Constante1
    Instrução1.1
  case Constante2
    Instrução1.2
  ...
  case Constanten
    Instrução1.n
  case else
    Instrução2.1
end select
 
 
case Valor of
  Constante1: begin
                Instrução1.1;
                Instrução1.2;
                ...
                Instrução1.i;
              end;
  Constante2: begin
                Instrução2.1;
                Instrução2.2;
                ...
                Instrução2.j;
              end;
  ...
  Constantek: begin
                Instruçãok.1;
                Instruçãok.2;
                ...
                Instruçãok.m;
              end;
else
  Instruçãon.1;
  Instruçãon.2;
  ...
  Instruçãon.p;
end;  
switch (Valor) {
  case Constante1:
    Instrução1.1;
    Instrução1.2;
    ...
    Instrução1.i;
    break;
  case Constante2:
    Instrução2.1;
    Instrução2.2;
    ...
    Instrução2.j;
    break;
  ...
  case Constantek:
    Instruçãok.1;
    Instruçãok.2;
    ...
    Instruçãok.m;
    break;
  default:
    Instruçãon.1;
    Instruçãon.1;
    ...
    Instruçãon.p;
    break;
}
select case Valor
  case Constante1.1
    Instrução1.1
    Instrução1.2
    ...
    Instrução1.i
  case Constante1.2
    Instrução2.1
    Instrução2.2
    ...
    Instrução2.j
  ...
  case Constante1.n
    Instruçãok.1
    Instruçãok.2
    ...
    Instruçãok.m
  case else
    Instruçãon.1
    Instruçãon.1
    ...
    Instruçãon.p
end select




Exemplificando

Pascal, Object Pascal C, C++, C#, JavaScript VBScript
 
case X of
  0: X:= X + 1;
  1: Y:= Y + 1;
else
  Z:= Z + 1;
end;
switch (X) {
  case 0:
    X= X + 1;
    break;
  case 1:
    Y= Y + 1;
    break;
  default:
    Z= Z + 1;
    break;
}
select case X
  case 0
    X= X + 1
  case 1
    Y= Y + 1
  case else
    Z= Z + 1
end select
 
 
case X of
  0: begin
       X:= X + 1;
       Y:= Y + 1;
       Z:= Z + 1;
     end;
  1: begin
       X:= X - 1;
       Y:= Y - 1;
       Z:= Z - 1;
     end;
else
  X:= X*2;
  Y:= Y*2;
  Z:= Z*2;
end;  
switch (X) {
  case 0:
    X= X + 1;
    Y= Y + 1;
    Z= Z + 1;
    break;
  case 1:
    X= X - 1;
    Y= Y - 1;
    Z= Z - 1;
    break;
  default:
    X= X*2;
    Y= Y*2;
    Z= Z*2;
    break;
}
select case X
  case 0
    X= X + 1
    Y= Y + 1
    Z= Z + 1
  case 0
    X= X - 1
    Y= Y - 1
    Z= Z - 1
  case else
    X= X*2
    Y= Y*2
    Z= Z*2
end select





http://transeberiano.brinkster.net