switch

O switch é usado para comparar uma expressão a uma série de constantes.

Sintaxe:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
switch(expressão)
{
constante1:
      comando1;
      break;
constante2:
      comando2;
      break;
constanteN:
      comandoN;
      break;
default:
      comandoX;
}

Observações:

  • Você pode associar mais de uma constante a cada bloco de código;
  • Os blocos de código devem ser mutuamente exclusivos; isto deve ser garantido pela presença de uma cláusula “break” (ou goto);
  • O bloco “default” é opcional e chamado caso nenhuma das opções seja tomada;
  • Você pode usar qualquer tipo “por valor” ou string na expressão;

Veja um exemplo:

1
2
3
4
5
6
7
8
9
10
11
switch(i)
{
case 0:
      CaseZero();
       break;
case 1:
      CaseZeroOrOne();
      break;
default:
      CaseAny () ;
}

if/else

O comando “if” permite executar condicionalmente algum código. Ele pode ser seguido opcionalmente de uma cláusula “else”.

Sintaxe:

1
2
3
4
if (expressão)
      comando1;
else
      comando2;

Observações:

  • A expressão deve retornar um valor “bool”;
  • A cláusula “else” é opcional e indica o que deve ser feito caso a expressão seja falsa;
  • Caso seja desejado usar vários comandos, utilize um bloco com {};
  • Existe a sintaxe “else if” para encadear várias decisões. Observe que o comando “switch”, abaixo, pode ser utilizado com strings. Veja a sintaxe do “else if’ abaixo:
1
2
3
4
5
6
7
8
9
if (Condicao1)
      Comando1;
else if (Condicao2)
      Comando2;
else if (Condicao3)
      Comando3;
...
else
      ComandoN;

A estrutura acima funciona da seguinte maneira: o programa começa a testar as condições começando pela 1 e continua a testar até que ele ache uma expressão cujo resultado seja verdadeiro (true). Neste caso ele executa a declaração correspondente. Só uma declaração será executada, ou seja, só será executada a declaração equivalente à primeira condição que der verdadeiro. A última declaração (ComandoN) é a que será executada no caso de todas as condições retornarem false e é opcional.

ifs aninhados

O if aninhado é simplesmente um if dentro da declaração de um outro if externo. O único cuidado que devemos ter é o de saber exatamente a qual if um determinado else está ligado. Vejamos um exemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
using System;
public class Class1
{
	public static void Main()
	{
		int num;
		Console.WriteLine("Digite um numero: ");
		num = Console.Read();
		if (num == 10)
	        {
	        	Console.WriteLine("Voce acertou!");
	        	Console.WriteLine("O numero e igual a 10.");
	        }
		else
	        {
	        	if (num > 10)
        	        {
                		Console.WriteLine("O numero e maior que 10.");
                	}
	        	else
        	        {
                		Console.WriteLine("O numero e menor que 10.");
	                }
        	}
	}
}