SóProvas


ID
2158153
Banca
FCC
Órgão
SEGEP-MA
Ano
2016
Provas
Disciplina
Programação
Assuntos

Considere os seguintes comandos da linguagem Java:


boolean f, g, h;

int b = 1, a = 2, c = 10, d = 5 ;

f = ! ((a + c) ! = (d + d + a)) ;

g = ((a + d) < = (c - d) || (c - d) > (a * d)) ;

h = ! ((c/d-b*a) < (a+d) && (c/a) > (a+b)) ;

Os valores que serão armazenados nas variáveis f, g e h são, respectivamente,

Alternativas
Comentários
  • Pessoal eu coloquei essas expressoes pra rodar e me retornou true true false, façam o teste.

  • A primeira expressão é:

    f = ! ((a + c) ! = (d + d + a)) ;

    f = ! ((2+ 10) != (5 + 5 + 2)) => f = ! (12 != 12)) => verdadeiro, é só observar a negação
     

    A segunda expressão é:

    g = ((a + d) < = (c - d) || (c - d) > (a * d)) ;

    g = ((2 + 5) < = (10 - 5) || (10 - 5) > (2 * 5)) => g = ((7 < = 5) || (5 > 10)) => falso, é só ver que os valores dentro de cada expressão e depois computar o 'ou'

     

    A terceira expressão é:

    h = ! ((c/d-b*a) < (a+d)  &&  (c/a) > (a+b)) ;

    h = ! ((10/5-1*2) < (2+5)  &&  (10/2) > (2+1))  => h = ! ((2-2) < (7)  &&  (5) > (3))  => h = ! ((0 < 7)  &&  (5 > 3)) => falso, é só ver que os valores dentro de expressão e observar a negação após a resolução interna da expressão

  •     boolean f, g, h;

        int  b  = 1, a  = 2, c  = 10, d  = 5 ;

        f = ! ((a + c) != (d + d + a)) ;

        g = ((a + d) <= (c - d) || (c - d) > (a * d)) ;

        h = ! ((c/d-b*a) < (a+d)  &&  (c/a) > (a+b)) ;
        
        System.out.println("F: "+f);
        System.out.println("G: "+g);
        System.out.println("H: "+h);

    F: true
    G: false
    H: false

    Letra C)