sábado, 27 de junho de 2015

C++ me ensina o operador condicional ternário (?)

Eu tive pelo menos três professores de C e de C++ e nenhum deles conseguiram me explicar como é que funciona e como é que se aplica o operador condicional ternário (?), talvez, por que eles mesmos nunca souberam como é que o tal funciona.

No livro Treinamento em C++ tem a seguinte explicação:
Para quem está iniciando os estudos de C++, convenhamos isto não explica muito. Os exemplos são melhores do que as explicações.

No Microsoft Excel, existe uma função muito utilizada que é a função condicional SE(). A função SE() no MS Excel tem a seguinte estrutura:

=SE(TESTE_LÓGICO;"VALOR SE VERDADEIRO";"VALOR SE FALSO")

É isto ai o operador condicional ternário. Veja o exemplo abaixo.

No código acima, é solicitado que o usuário digite dois números.

No código nMaior = (n1>n2) ? n1:n2; quer dizer exatamente o seguinte: SE o teste de comparação entre o número digitado em N1 for MAIOR DO QUE o número digitado em N2; N1 é verdade; N2 é falso. Igual o uso da função SE no Excel.

No código nMaior = (n1<n2) ? n1:n2; quer dizer exatamente o seguinte: SE o teste de comparação entre o número digitado em N1 for MENOR DO QUE o número digitado em N2; N1 é verdade; N2 é falso. Igual o uso da função SE no Excel.

O exemplo abaixo utiliza o operador condicional ternário ? para diferenciar um número impar de um número par; o programa é repetido até que você digitar o número zero.


 Observe o código ((n1%2) ? "IMPAR":"PAR"). Neste código está escrito: Se o número não é divisivel por 2; ele é IMPAR, se for divisivel por 2, é PAR.

Nenhum comentário:

Postar um comentário