poo 04 operadores logicos e condicionais

Upload: fernando-kenji-kamei

Post on 07-Jul-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    1/26

    Programação Orientada a Objetos

    Aula 04 – Comandos de

    Seleção, expressõesrelacionais e lógicas

    Fernando Kenji Kamei

    [email protected]

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    2/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    O Que vimos na aula passada…

    2 de 26

    ! Variáveis

    ! Tipos de dados

    ! Expressões em Java

    ! Aritméticas! Comandos de entrada e saída

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    3/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Hoje veremos…

    3 de 26

    ! Comandos de Seleção

    ! Expressões em Java

    ! Relacionais

    !

    Lógicas

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    4/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    4 de 26

    Vamos pensar no seguinte jogo:

    ! Jogo Adivinhação: descobrir se acertou ou errou umnúmero secreto.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    5/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    5 de 26

    O que precisamos fazer?

    Precisamos tomar decisões: ouerrou, ou acertou o chute!

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    6/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    Condicional

    6 de 26

    Então temos..

    Um número secretoUm chute do usuário

    E algumas condições:

    ! Acertou

    ! Errou

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    7/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    Condicional

    7 de 26

    Númerosecreto

    Acertou?

    if 

    Sim

    true

    Acertou!

    Não (else)

    false

    Nãoacertou

    Chute

    Condição

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    8/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    Condicional

    8 de 26

    Númerosecreto

    Acertou?

    if 

    Sim

    true

    Acertou!

    Chute

    CondiçãoSEM O

    ELSE

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    9/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    Condicional

    9 de 26

    Então percebemos que toda condição

    booleana é qualquer expressão queretorne true ou false

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    10/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Comandos de Seleção

    Condicional

    10 de 26

    Para analisar uma condição, podemos

    utilizar as Expressões Relacionais ouLógicas.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    11/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei 11 de 26

    Seis operadores são utilizados em expressões relacionais:

    Símbolo Função Exemplo Resultado

    == igual 5==2 false!= diferente 2 != 3 true

    > maior que 10 > 9 true

    < menor que 9 < 8 false

    >= maior igual 10 >= 9 true

    = 20 false

    Expressões em Java

    Relacionais

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    12/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Relacionais

    12 de 26

    Voltando ao exemplo do Número Secreto poderíamos

    utilizar os seguintes operadores realacionais nas

    condições:

    chute == número secreto ?

    chute > número secreto ?

    chute < número secreto ?

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    13/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Relacionais

    13 de 26

    public class NumeroSecreto {public static void main(String args[]) {

    int numeroSecreto = 20;

    Scanner in = new Scanner(System.in);

    int chute = in.nextInt();

    if(chute == numeroSecreto) {

    System.out.println(“Acertou o chute!”);

    }

    else {

    System.out.println(“Errou o chute”);

    }}

    }

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    14/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Relacionais – Exercício 01

    14 de 26

    Sistema de Boate (maior de idade)

    Uma pessoa só pode entrar na boate se for maior de idade, paraisso, o sistema deve pedir a idade da pessoa.

    OBS.: para ser maior de idade tem que possuir 18 anos ou mais.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    15/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Relacionais – Exercício 01 (Resolução)

    15 de 26

    if (idade >= 18)

    System.out.println(“Entra porque é maior de idade”);

    else

    System.out.println(“Não entra, menor de idade”);

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    16/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei 16 de 26

    As expressões Relacionais também podem ser

    concatenadas através de operadores Lógicos

    “E” e “OU”.

    Expressões em Java

    Relacionais

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    17/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei 17 de 26

    Seis operadores são utilizados em expressões relacionais:

    Símbolo Função Exemplo Resultado

    && Conjunção (AND) true && false false

    || Disjunção (OR) true || false true

    ! Negação (NOT) !true false

    Expressões em Java

    Lógicas

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    18/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 02

    18 de 26

    Sistema de Boate (idade e amigo)

    Uma pessoa pode entrar na boate se for maior de idade, e, se elafor amigo do dono da boate.

    OBS.: para ser maior de idade tem que possuir 18 anos ou mais.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    19/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 02 (Resolução)

    19 de 26

    if(idade >= 18 && amigoDono == 1)System.out.println(“Entra”);

    else

    System.out.println(“Não entra”);

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    20/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 03

    20 de 26

    Sistema de Boate (idade ou amigo)

    Uma pessoa pode entrar na boate se for maior de idade, ou, seela for amigo do dono da boate, mesmo que menor de idade.

    OBS.: para ser maior de idade tem que possuir 18 anos ou mais.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    21/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 03 (Resolução 1)

    21 de 26

    if(idade >= 18 || amigoDono == 1)

    System.out.println(“Entra. Maior de idade, ou é amigodo dono”);

    else

    System.out.println(“Não entra”);

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    22/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 03 (Resolução 2)

    22 de 26

    if(idade >= 18)

    System.out.println(“Entra por que é maior de idade);

    else if(amigoDono == 1)

    System.out.println(“Entra porque é amigo do dono”);

    else

    System.out.println(“Não entra porque é menor deidade e não é amigo do dono”);

    …Percebam que surgiu mais uma novidade:

    else if()

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    23/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 04

    23 de 26

    Sistema de Boate (só amigo)

    Uma pessoa só pode entrar na boate se for amigo do dono.

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    24/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    Lógicas – Exercício 04 (Resolução)

    24 de 26

    boolean amigoDono;

    Scanner in = new Scanner(System.in);

    int amigoDono= in.nextBoolean();

    if(!amigoDono)System.out.println(“Não entra”);

    else

    System.out.println(“Entra, amigo do dono”);

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    25/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Expressões em Java

    25 de 26

    Por quê não utilizamos as chaves “ { “ e “ } ” nos

    comandos condicionais if, else if, else ?

    Porque esses só possuem uma única linha de

    instrução de bloco!

  • 8/18/2019 POO 04 Operadores Logicos e Condicionais

    26/26

    Programação Orientada a Objetos | Prof. Fernando Kenji Kamei

    Perguntas?

    26 de 26

    Não esqueçam deler os slides dapróxima aula