z or x // z < y) and not (x - z < y * 2) e2 = x % z == 0 and y + z

z or x // z < y) and not (x - z < y * 2) e2 = x % z == 0 and y + z


z or x // z < y) and not (x - z < y * 2) e2 = x % z == 0 and y + z <= x print(e1, e2) ---------------------------------- "> Considerando o código escrito em Python e a ordem de precedência dos operadores, marque a opção que apresenta a saída correta.

---------------------------------- x = 25 y = 10 z = 3 e1 = (x % y > z or x // z < y) and not (x - z < y * 2) e2 = x % z == 0 and y + z <= x print(e1, e2) ----------------------------------

🚀 Desbloqueie a explicação completa

Veja comentários detalhados e resoluções exclusivas para entender o gabarito desta questão.

  • Sumaia Santana
    Sumaia Santana
    31/12/1969 • 21:00
    Gabarito: Alternativa B
    A pergunta exige o conhecimento sobre a prioridade dos operadores em Python e sobre o modo como expressões booleanas são interpretadas pela linguagem. Para lidar com esse tipo de problema, é essencial saber qual operação é executada primeiro e como cada parte da expressão contribui para o resultado final.

    Analisando cada expressão separadamente.
    Expressão e1:
    (x % y > z or x // z < y) and not (x - z < y * 2)
    Primeiro, considere x % y: o operador módulo retorna o resto da divisão. Para os valores dados, 25 % 10 = 5.
    Comparando: 5 > 3 → True.

    Em seguida, x // z, que faz divisão inteira: 25 // 3 = 8.
    Comparando: 8 < 10 → True.

    Como a parte esquerda usa or, e temos True or True, o resultado desse bloco é True.

    Agora, analisando not (x - z < y * 2):
    x - z = 22
    y * 2 = 20
    A comparação 22 < 20 é False, portanto not False = True.
    Juntando tudo: True and True = True.
    Assim, e1 avalia para True.
🔒
Conteúdo restrito

Cadastre-se para visualizar comentários e resoluções.

Criar conta grátis

Utilizamos cookies e tecnologias semelhantes para aprimorar sua experiência. Política de Privacidade.