(C++) Operador condicional


Construções algorítmicas

Quer aprender a criar programas poderosos, "inteligentes", versáteis e úteis?

Então você precisa aprender as três principais formas de controle de execução do programa. De acordo com a teoria de sistemas computacionais, uma boa linguagem de programação deve proporcionar a implementação de três formas de controle sobre a execução de programas.
 
1. Sequência (a seguir)
Execução de instruções sequenciais - já vimos isso em cursos anteriores. Todos os nossos programas anteriores eram uma sequência de instruções.

 
2. Seleção (ramificação)
Se a condição for atendida,  em seguida, execute uma ação,  caso contrário, execute outra ação.   
3. Repetição (loop)
Desde que a condição seja atendida fazer ações
Os programas estão ficando mais inteligentes.

Neste módulo, trataremos da estrutura de ramificação algorítmica.
 

Declaração condicional (if)
No problema de encontrar o número máximo de dois, encontramos um novo operador que começava com a palavra if.  Esta é uma instrução condicional
A palavra if é traduzida do inglês como "if" e a palavra else como "else" ;. Se a condição após a palavra if for verdadeira (true), todos os comandos (operadores) após a condição entre chaves {} serão executados . Se a condição for falsa (false), então os comandos entre chaves após a palavra else serão executados.
 
Visão geral do operador condicional
if ( condition ) // cabeçalho com condição
{
  ... // bloco "if" — declarações que são executadas
      // se a condição no cabeçalho for verdadeira

}
senão
{
   ... // bloco "else" — declarações que são executadas
       // se a condição entre colchetes for falsa

}
 
É preciso lembrar!
1. if ... else -  ESTA É UMA DECLARAÇÃO!
   Portanto, entre os parênteses que terminam o bloco "if" ( } ) e a palavra else não pode conter outros operadores.
2. A palavra else nunca é seguida por uma condição. A condição é colocada somente depois das palavras if. O bloco "caso contrário" é executado quando a condição principal especificada após a palavra if é falsa, ou seja, não executado.
3. Se no bloco "if" ou no bloco "else" há apenas um operador, então as chaves podem ser omitidas.
4. Uma condição é uma expressão contra a qual pode ser considerada verdadeira (ou seja, é atendida) ou falsa (ou seja, não é satisfeita).
Você pode usar sinais de relações lógicas na condição:
> , <                mais menos;
>=, <=            maior ou igual a, menor ou igual a;
==                   igual;
!=                 diferente.

5. Na linguagem de programação C, qualquer número que não seja igual a zero denota uma condição verdadeira e zero denota uma condição falsa.

 

Declaração condicional incompleta

Se no campo "caso contrário" você não precisa fazer nada (por exemplo: "se houver sorvete em promoção, compre sorvete" e, se não ...), o bloco inteiro "caso contrário" você pode omitir e usar uma forma abreviada (incompleta) do operador condicional:
if (condição) { ... // o que fazer se a condição for verdadeira } Vamos considerar um exemplo de resolução do problema de encontrar o máximo de dois números, usando a forma incompleta do operador condicional.