Skip to content

Latest commit

 

History

History
105 lines (76 loc) · 4.01 KB

File metadata and controls

105 lines (76 loc) · 4.01 KB

Requisitos para estar aqui:

  • Ter finalizado a Lista de Exercícios Obrigatória sobre Estrutura de Decisão [If...Else]!
  • Caso não tenha feito, CLIQUE AQUI.

Estruturas de Decisão - Operador Ternário

Operador ternário - O que é?

  • Conditional Ternary Operator
  • Existem operações unárias, binárias, ternárias...

Operações Unárias

  • Contém apenas um operando!
    • Significa que contém apenas uma variável de entrada.
    • Exemplos:
      • Raiz Quadrada: √4
      • Negação: !x
      • Fatorial: n!

Operações Binárias

  • Contém dois operandos!
    • Ou seja, contém duas variáveis de entrada.
    • Exemplos:
      • Adição: x + y
      • Multiplicação: x * y

Operações Ternárias

  • Contém três operandos!
    • Consequentemente, três variáveis de entrada.
    • Exemplos:
      • Estruturas de Decisão - Programação (JavaScript)
      • Equivalente ao if...else
        • <condição> ? <valor_se_verdadeiro> : <valor_se_falso>
        • <condição> ? <instruções "if"> : <instruções "else">
      • Equivalente ao if...else aninhado
        • <condição> ? <instruções "if"> : <outra_condição> ? <intruções "else...if"> : <instruções "else">

Objetivo é, com operador ternário, obter a seguinte estrutura:*

condição ? valor verdadeiro : valor falso

Ou então, quando necessário aninhar operador ternário: condição ? valor verdadeiro : nova condição ? valor verdadeiro : valor falso

O maior ganho ao utilizar operador ternário é a economia de linhas!

Vale ressaltar que todo if, em um operador ternário, deve ser acompanhado de um else.

Exemplos

Aqui demonstraremos alguns exemplos de utilização do operador ternário.

Exemplo 1: Peça para o usuário informar o seu ano de nascimento. Caso o ano de nascimento do usuário tenha sido anterior ao ano 2000, deverá mostrar a mensagem "Viu o Bug do Milênio". Caso contrário, deverá mostrar a mensagem "Não viu o Bug do Milênio".

O código necessário para resolver o problema descrito acima é o seguinte:

<meta charset="UTF-8">
<script>
    //Entrada
    const anoNascimento = parseInt(prompt("Informe o seu ano de nascimento: "));

    //Processamento
    let mensagemFinal = "";
    (anoNascimento < 2000) ? mensagemFinal = "Viu o Bug do Milênio" : mensagemFinal = "Não viu o Bug do Milênio";
    
    //Saída
    document.write(mensagemFinal);
</script>

Exemplo 2: Colocando um nível a mais de complexidade no problema anteriormente descrito, considere que:

  • Se o usuário nasceu antes do ano 1900, o programa deverá apresentar a mensagem: Você é Imortal!
  • Se o usuário nasceu após o ano 1900 (inclusive) mas anterior ao ano 2000, o programa deverá apresentar a mensagem: Viu o Bug do Milênio.
  • Se o usuário nasceu após o ano 2000, o programa deverá apresentar a mensagem: Não viu o Bug do Milênio.

O código necessário para resolver o problema descrito acima é o seguinte:

<meta charset="UTF-8">
<script>
    //Entrada
    const anoNascimento = parseInt(prompt("Informe o seu ano de nascimento: "));

    //Processamento
    let mensagemFinal = "";
    (anoNascimento < 1900) ? mensagemFinal = "Você é Imortal!" : (anoNascimento < 2000) ? mensagemFinal = "Viu o Bug do Milênio" : mensagemFinal = "Não viu o Bug do Milênio";

    //Saída
    document.write(mensagemFinal);
</script>

Bóra praticar...

Colocando em prática o conhecimento apresentado sobre Operador Ternário, vamos para uma pequena lista de exercícios.