Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Cadeia If-Else | Estruturas de Controle
Fundamentos de C#

bookCadeia If-Else

Podemos adicionar condições adicionais usando a palavra-chave else if. As condições adicionais são avaliadas caso as condições anteriores não sejam atendidas.

if (expression) 
{
    // code if first condition is met
}
else if (expression)
{
    // code if second condition is met
} else 
{
    // code if no condition is met
}


Considere um exemplo com cadeia if else:

main.cs

main.cs

copy
1234567891011121314151617181920212223242526
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else if(value_1 == value_2) { Console.WriteLine("Value 1 is equal to Value 2"); } } } }

No programa acima, encadeamos condições usando if-else if. Isso é chamado de encadeamento condicional. A primeira condição value_1 < value_2 é avaliada. Como é false, o programa passa para a próxima condição value_1 > value_2, que é true e, portanto, executa o bloco de código correspondente e interrompe a execução do restante da cadeia.

A principal característica do encadeamento condicional é que ele interrompe a execução da cadeia assim que uma condição é satisfeita.

Considere o seguinte código:

main.cs

main.cs

copy
12345678910111213141516171819202122232425
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } else if(value > 7) { Console.WriteLine("Value is bigger than 7"); } else if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }

Mesmo que todas as três condições sejam true, a execução para na primeira condição, pois trata-se de uma cadeia.

Agora, vamos tentar escrever usando apenas palavras-chave if simples, sem encadeamento:

main.cs

main.cs

copy
123456789101112131415161718192021222324252627
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } if(value > 7) { Console.WriteLine("Value is bigger than 7"); } if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }

No caso acima, cada condição é avaliada individualmente e não é tratada como parte de uma cadeia, portanto, todas as três instruções são exibidas.

Também podemos adicionar a palavra-chave else ao final da cadeia if-else, que será executada se nenhuma condição for satisfeita:

main.cs

main.cs

copy
1234567891011121314151617181920212223242526
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
question mark

Quais linhas serão incluídas na saída do seguinte programa?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 9

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain the difference between using chained if-else and separate if statements?

Can you provide more examples of conditional chaining?

What happens if none of the conditions in the if-else chain are true?

Awesome!

Completion rate improved to 1.59

bookCadeia If-Else

Deslize para mostrar o menu

Podemos adicionar condições adicionais usando a palavra-chave else if. As condições adicionais são avaliadas caso as condições anteriores não sejam atendidas.

if (expression) 
{
    // code if first condition is met
}
else if (expression)
{
    // code if second condition is met
} else 
{
    // code if no condition is met
}


Considere um exemplo com cadeia if else:

main.cs

main.cs

copy
1234567891011121314151617181920212223242526
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else if(value_1 == value_2) { Console.WriteLine("Value 1 is equal to Value 2"); } } } }

No programa acima, encadeamos condições usando if-else if. Isso é chamado de encadeamento condicional. A primeira condição value_1 < value_2 é avaliada. Como é false, o programa passa para a próxima condição value_1 > value_2, que é true e, portanto, executa o bloco de código correspondente e interrompe a execução do restante da cadeia.

A principal característica do encadeamento condicional é que ele interrompe a execução da cadeia assim que uma condição é satisfeita.

Considere o seguinte código:

main.cs

main.cs

copy
12345678910111213141516171819202122232425
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } else if(value > 7) { Console.WriteLine("Value is bigger than 7"); } else if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }

Mesmo que todas as três condições sejam true, a execução para na primeira condição, pois trata-se de uma cadeia.

Agora, vamos tentar escrever usando apenas palavras-chave if simples, sem encadeamento:

main.cs

main.cs

copy
123456789101112131415161718192021222324252627
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } if(value > 7) { Console.WriteLine("Value is bigger than 7"); } if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }

No caso acima, cada condição é avaliada individualmente e não é tratada como parte de uma cadeia, portanto, todas as três instruções são exibidas.

Também podemos adicionar a palavra-chave else ao final da cadeia if-else, que será executada se nenhuma condição for satisfeita:

main.cs

main.cs

copy
1234567891011121314151617181920212223242526
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
question mark

Quais linhas serão incluídas na saída do seguinte programa?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 9
some-alt