Você está na página 1de 8

14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

TI Selvagem
ASP .Net MVC, C#, Entity Framework
Quem Somos »
Membros »

Go to... Lisboa -

São Paulo Reserve já


A partir de

EUR 543,-

IF aninhado em C# ( Múltiplos IF em C#)


mai 08

Share Tweetar Curtir 22 Compartilhar

Muitas vezes, em algumas aplicações, sentiremos a necessidade de tomar outras decisões dentro de uma das
alternativas da estrutura do if; a isso chamamos de ifs aninhados.

Vale lembrar que os exemplos aqui não são a única forma correta de fazer a mesma coisa! Muitas das vezes
escolho o que é mais didático para ser apresentado. E muitas das coisas aqui apresentada a própria biblioteca
do C# faz com métodos nativos.

Acesse agora mesmo todos os artigos desta série sobre C#, algoritmo e programação.

Vejamos um exemplo clássico de algoritmos:

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 1/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

Armazene e imprima na variável max o maior número entre 3


informados.

1 using System;
2 class Program
3 {
4 static void Main(string[] args)
5 {
6 double a, b, c, max = 0;
7 Console.Write("Digite primeiro número: ");
8 a = double.Parse(Console.ReadLine());
9 Console.Write("Digite segundo número: ");
10 b = double.Parse(Console.ReadLine());
11 Console.Write("Digite terceiro número: ");
12 c = double.Parse(Console.ReadLine());
13 if ( a > b)
14 {
15 if (a > c)
16 { max = a; }
17 else
18 { max = c; }
19 }
20 else
21 {
22 if (b > c)
23 { max = b; }
24 else
25 { max = c; }
26 }
27 Console.WriteLine("O maior número é: {0}", max);
28 }
29 }

Saída:

1 Digite primeiro número: 7


2 Digite segundo número: 9
3 Digite terceiro número: 3
4 O maior número é: 9
5
6 Digite primeiro número: 4
7 Digite segundo número: 2
8 Digite terceiro número: 6
9 O maior número é: 6

Ler um número e imprimir se ele é positivo, negativo ou nulo

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 2/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

1 using System;
2 class Program
3 {
4 static void Main(string[] args)
5 {
6 double num = 0;
7 Console.Write("Digite um número: ");
8 num = double.Parse(Console.ReadLine());
9
10 if ( num > 0)
11 {
12 Console.WriteLine("POSITIVO");
13 }
14 else
15 {
16 if (num < 0)
17 {
18 Console.WriteLine("NEGATIVO");
19 }
20 else
21 {
22 Console.WriteLine("NULO");
23 }
24 }
25 }
26 }

Saída:

1 Digite um número: -5
2 NEGATIVO
3 Digite um número: 4
4 POSITIVO
5 Digite um número: 0
6 NULO

Você deve estar fazendo algumas perguntas:

1.Porque não se perguntou se o número era igual a zero?


Resposta: Quando temos a possibilidade de três respostas, só precisamos fazer duas perguntas, pois a segunda
pergunta nos dá as duas últimas respostas. Veja bem: se descartarmos a possibilidade de o número ser maior do
que 0, ficamos com duas possibilidades: o número ser igual 0 ou menor do que 0; dessa forma, uma pergunta é
satisfatória.

2.Mas se eu fizer estarei errado(a)?


Resposta: Não, mas não é necessário, e lembre-se de uma coisa em algoritmos existem muitas maneiras de
resolver o mesmo problema! Cada pessoa tem a sua própria lógica.

3.Por que a solução não poderia ser como a seguir?

1 using System;
2 class Program
3 {
4 static void Main(string[] args)
5 {
6 double num = 0;
7 Console.Write("Digite um número: ");
8 num = double.Parse(Console.ReadLine());
9 if (num > 0)
www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 3/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

10 { Console.WriteLine("POSITIVO"); }
11 if (num < 0)
12 { Console.WriteLine("NEGATIVO"); }
13 if (num == 0)
14 { Console.WriteLine("NULO"); }
15 }
16 }

Resposta: Esta solução, embora você consiga atingir os objetivos do algoritmo, apresenta um grande
inconveniente: sempre serão executados três testes, mesmo quando já tivermos classificado o número.
Entretanto, na 1ª solução, outro texto só será executado se ainda não tivermos chegado a uma conclusão sobre o
número.
Essa estrutura precisa de vários ciclos para ser executada; portanto, evite usá-la desnecessariamente.

Bom pessoal com isso acabamos a estrutura de seleção IF em C#, como costumo falar: Só se aprende a
programar, programando! Por isso não perca o próximo post da série que teremos uma nova lista de exercícios
em C# e claro que serão todos resolvidos em breve!

Não perca as próximas publicações, então? Siga nossa página TI Selvagem no Google Plus, Twitter ou no
Facebook e se gostou do conteúdo compartilhe e ajude nossa comunidade!

€ 105 € 253

Giorgio Fedon 1919 - Chronograph Space


Explorer Meteorite Dial Limited Edition 250 - …
Info!
€ 133
€ 105 € 9,950

Comentarios
2 comentarios

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 4/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

2 comentários Classificar por Mais antigos

Adicione um comentário...

Rodrigo Hajj
Voce sempre explicando com muita facilidade.
Parabens..
Eu ainda usaria uma outra logica,
if(num > 0){
}else if (num < 0){
}else{
//valor e 0
}

Mas como voce disse, todas estao certas, e cada um tem uma logica..
Curtir · Responder · 1·4a

Raniere Silva
Excelente explicação! Acredito que ajudará realmente quem está aprendendo.
Curtir · Responder · 3 a

Plugin de comentários do Facebook

Share Tweetar Curtir 22 Compartilhar

Posted by Cleyton Ferrari C# Permalink


Estruturas de Seleção – IF/SE Sintaxes Lista de Exercícios em C# – Lista 02

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 5/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

0 Comentários Ti Selvagem 
1 Entrar

 Recomendar t Tweet f Compartilhar Ordenar por Mais votados

Iniciar a discussão...

FAZER LOGIN COM


OU REGISTRE-SE NO DISQUS ?

Nome

Seja o primeiro a comentar.

TAMBÉM EM TI SELVAGEM

Padrão de Artigo para publicar na Desativando o uso de XML em serviços


comunidade TI Selavagem Web API - TI Selvagem
1 comentário • 5 anos atrás 1 comentário • 5 anos atrás
rafael nicoletti — Ola Cleyton, gostaria de tirar Luís Gabriel Nascimento Simas — Show
Avataruma duvida.poderia explicar uma maneira de Avatar
alimentar uma grid, sem usar …

Expressões Aritméticas, Relacional e Lista de Exercícios em C# - Lista 02


Lógica TI Selvagem 1 comentário • 4 anos atrás
2 comentários • 5 anos atrás Henrique — Ótima ideia, seria legal se
angelo silva — Parabéns pela iniciativa! Avatarpostarem exercícios nível avançado e
Avatar futuramente sua correção.Abs

✉ Inscreva-se d Adicione o Disqus no seu siteAdicionar DisqusAdicionar

Slack

Slack 1/122

Pesquisar

GO

Melhor da semana

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 6/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

Lista de Exercícios resolvidos em C# – 01

Constantes, Variáveis e Tipos de Dados

Comando de Entrada em C# em 2 passos

Validação de Data e Moeda (ASP.Net MVC + JQuery Validation) em Português

Neo4j – Banco de Dados orientado a Grafos

Categorias

.NET
Android
Arduino
Artigos Científicos
ASP.NET
Banco de Dados
C#
CakePHP
Certificações
Comunidade
Desenvolvimento
www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 7/8
14/07/2019 IF aninhado em C# ( Múltiplos IF em C#)

Eventos
Faculdade
Flex
Geral
Gestão de TI
git
Infraestrutura
iOS
Mobile
PHP
Rails
Redes
Robótica
Storage
Windows
WP7

Tags
adbandroid arduino armazenamento externo ASP.NET ASP.NET 5 backup banco de dados c#
cakephp certificações CSharp das deploy desastre EF Entity Framework flash builder flex Instalar Android SDK
jQuery lógica mcp microsoft Migrations mobile MVC nas NoSQL php rails rails installer rails no windows

restauração ruby on rails san sql sql management studio sql server technet Visual Studio Vídeo Vídeo-
Aula Web API windows

www.tiselvagem.com.br/c-sharp/if-aninhado-em-c-multiplos-if-em-c/ 8/8