Article image
Roberto Filho
Roberto Filho23/08/2024 11:02
Compartilhe

Operadores Condicionais em C#: Como o if, if aninhado, e switch Moldam o Fluxo do Seu Programa para Respostas Inteligentes.

  • #.NET
  • #.NET C#

Introdução operadores condicionais

Operadores Condicionais

O if é uma estrutura de controle em C# que permite que o programa tome decisões baseadas em condições. Isso significa que você pode dizer ao seu programa para fazer uma coisa se uma condição for verdadeira e fazer outra se a condição for falsa.

Como o if Funciona:

Pense no if como uma pergunta que o programa faz a si mesmo: "Isso é verdade ou não?". Dependendo da resposta, o programa decide o que fazer a seguir.

Aqui está um exemplo simples em diagrama:

image

Neste exemplo, o programa verifica se a caneca está vazia. Se estiver vazia, ele executa a ação de "colocar mais café". Caso contrário, ou seja, se a caneca não estiver vazia, o programa executa chamando "continuar trabalhando".

image

Explicação do Exemplo:

Declaração da Variável:

  • Aqui, criamos uma variável chamada canecaVazia do tipo bool. Variáveis do tipo bool podem ter dois valores: true (verdadeiro) ou false (falso).
  • canecaVazia = true; significa que a variável canecaVazia está armazenando o valor true, ou seja, a caneca está vazia.

Estrutura Condicional if...else:

  • if (canecaVazia): Esta linha verifica se a variável canecaVazia é true. Se for true (ou seja, se a caneca estiver vazia), o programa executa o código dentro das chaves { } logo após o if.
  • Console.WriteLine("Colocar mais café");: Esta linha imprime a mensagem "Colocar mais café" na tela. Ela é executada se a caneca estiver vazia.
  • else: Se a condição canecaVazia for false (ou seja, se a caneca não estiver vazia), o programa pula o bloco if e executa o código dentro das chaves { } logo após o else.
  • Console.WriteLine("Continuar Trabalhando!");: Esta linha imprime a mensagem "Continuar Trabalhando!" na tela. Ela é executada se a caneca não estiver vazia.

Resumindo a explicação sobre a condicional if:

  • if (condição): Verifica se a condição é verdadeira.
  • { código a ser executado se for verdadeiro }: Executa este código se a condição for verdadeira.
  • else { código a ser executado se for falso }: Executa este código se a condição for falsa.

O if é como uma bifurcação na estrada: se a condição for verdadeira, você segue por um caminho; se for falsa, você segue por outro. É uma maneira simples e poderosa de controlar o fluxo do seu programa, permitindo que ele reaja de diferentes maneiras com base nas condições que você define.

If Aninhado e Switch

O que é um If Aninhado?

Um if aninhado é quando colocamos um if dentro de outro if. Isso permite que o programa faça verificações mais complexas, onde uma condição depende do resultado de outra.

Por que Usar If Aninhado?

Às vezes, você precisa verificar várias condições que dependem umas das outras. O if aninhado ajuda a organizar essas verificações em etapas, garantindo que cada condição seja checada somente se a anterior for verdadeira.

Como Funciona?

Imagine que você está verificando várias condições sobre a venda de um determinado produto em um e-commerce:

  1. Primeiro, você quer se a quantidade de produtos solicitada pelo cliente tem valor 0 (zero).
  2. Depois, se a quantidade solicitada pelo cliente é menor que a quantidade disponível em estoque.

Nesse caso, o segundo if só deve ser verificado se o primeiro if for falso.

Exemplo:

image

Esse código faz uma verificação sobre a possibilidade de realizar uma venda com base na quantidade disponível em estoque e a quantidade que o cliente deseja comprar. Vamos explicar o funcionamento de cada parte.

1. Declaração de Variáveis

  • quantidadeEstoque = 4;: Define que há 4 unidades do produto disponíveis em estoque.
  • quantidadeCompra = 10;: Define que o cliente deseja comprar 10 unidades.

2. Verificação da Possibilidade de Venda

  • Aqui, a variável booleana possivelVenda verifica se a quantidade disponível em estoque é maior ou igual à quantidade que o cliente quer comprar.
  • Se for, possivelVenda será true (verdadeiro), indicando que a venda é possível. Caso contrário, será false (falso), indicando que não há estoque suficiente.

3. Exibição de Informações

  • Essas linhas imprimem no console as informações sobre o estoque, a quantidade que o cliente quer comprar, e se a venda é possível ou não com base na verificação feita anteriormente.

4. Verificação e Resposta de Venda

  • Primeiro if: if (quantidadeCompra == 0):
  • Verifica se a quantidade de compra é 0. Se for, imprime "Venda Invalida", pois não faz sentido tentar comprar 0 unidades.
  • else if (possivelVenda):
  • Verifica se a venda é possível (ou seja, se possivelVenda é true). Se for, imprime "Venda Realizada com sucesso", confirmando a venda.
  • else:
  • Se nenhuma das condições anteriores for verdadeira, isso significa que o estoque não é suficiente para atender ao pedido. Neste caso, imprime "Desculpe não temos a quantidade suficiente para realizar a sua venda".

O que é um Switch?

O switch é uma estrutura de controle em C# que permite executar diferentes blocos de código dependendo do valor de uma expressão. Ele é muito útil quando você tem várias condições que dependem do valor de uma única variável.

Exemplo de switch para Verificação de Vogais

Vamos supor que você queira verificar se uma letra é uma vogal (a, e, i, o, u) ou não. Usando o switch, você pode fazer isso de forma simples e organizada.

Aqui está o exemplo:

string letra = 'a'; - Essa é a letra que vamos verificar

image

Como Funciona o código exemplificado:

Variável para Verificação:

  • string letra = “a”; — Esta é a letra que queremos verificar. Neste caso, é a letra 'a', mas pode ser qualquer letra.

Estrutura switch:

  • switch (letra) — O switch vai verificar o valor da variável letra.
  • Casos (case):
  • case “a”:, case “e”:, case “i”:, case “o”:, case “u”: — Cada um desses case verifica se a variável letra corresponde a uma das vogais.
  • Se letra for igual a qualquer uma dessas vogais, o código dentro desse bloco será executado.
  • No nosso exemplo, a letra é 'a', então o código dentro do bloco de case “a”: será executado.
  • Console.WriteLine("É uma vogal"); — Isso imprime "É uma vogal" na tela, porque a letra 'a' é uma vogal.
  • Quebra (break):
  • break; — Após executar o código do case, o break impede que o switch continue verificando os outros casos.
  • Padrão (default):
  • default: — Se letra não corresponder a nenhum dos case, o código dentro do default será executado.
  • Console.WriteLine("Não é uma vogal"); — Isso imprime "Não é uma vogal" na tela se a letra não for nenhuma das vogais especificadas.

Quando usar o Switch:

O switch é ideal quando você tem múltiplas condições que dependem de uma única variável, como no caso de verificar se uma letra é uma vogal.

Pedindo e Armazenando a Resposta do Usuário

Quando queremos que o programa faça algo com base em uma entrada do usuário, primeiro precisamos solicitar essa entrada e, em seguida, capturá-la para usá-la no código. No C#, usamos o Console.ReadLine() para ler o que o usuário digita no console.

Passo a Passo:

Solicitando a Entrada:

  • Para começar, mostramos uma mensagem no console para informar ao usuário o que queremos que ele faça.
  • Usamos Console.WriteLine("Digite uma letra:"); para exibir uma mensagem pedindo que o usuário digite uma letra.

Capturando a Entrada:

  • Após mostrar a mensagem, o programa espera que o usuário digite algo e pressione Enter.
  • Usamos string letra = Console.ReadLine(); para capturar o que o usuário digitou.
  • O Console.ReadLine() lê tudo o que foi digitado até o Enter e retorna esse valor como uma string.
  • Em seguida, armazenamos esse valor na variável letra.

Por que Usar Console.ReadLine()?

  • Console.ReadLine() é uma função que permite ao programa interagir com o usuário, aguardando a entrada de dados.
  • Sem essa função, o programa não teria como saber o que o usuário digitou, tornando a interação limitada.

Exemplo Completo:

image

Conclusão:

Os operadores condicionais, como if, if aninhado e switch, são ferramentas essenciais em C# para controlar o fluxo de execução do programa com base em diferentes condições. Eles permitem que o programa tome decisões, respondendo de maneiras específicas conforme as condições verificadas. O if é útil para verificar condições simples, enquanto o if aninhado e o switch são ideais para cenários mais complexos ou com múltiplas opções. Com o domínio desses operadores, você consegue criar programas mais inteligentes e dinâmicos, que podem reagir a uma vasta gama de situações e entradas do usuário.

Compartilhe
Comentários (1)
Melquiedes Franco
Melquiedes Franco - 23/08/2024 17:17

Parabéns!!! Muito bem explicado!!!!