SóProvas


ID
3189502
Banca
COPEVE-UFAL
Órgão
UFAL
Ano
2016
Provas
Disciplina
Programação
Assuntos

Considere a seguinte instrução na linguagem Python:

resultado = [(x, y) for x in range(1, 100) for y in range(1, 50)

if x % y == 0 and x % 2 == 0 and y % 2 == 0].

Com relação à execução dessa instrução, assinale a alternativa correta.

Alternativas
Comentários
  • Com calma resolveremos a questão.

    Primeiramente, vamos relembrar a representação gráfica de tupla, lista e dicionário:

    >>> lista = [1, 2, 3, 4]

    >>> tupla = (1, 2, 3, 4) 

    >>> dicionário = {"a":1, "b":2}

    Ou seja,

    lista usa colchetes

    tupla usa parenteses

    dicionário usa chaves

    Observamos o código:

    resultado = [(x, y) for x in range(1, 100) for y in range(1, 50)

    if x % y == 0 and x % 2 == 0 and y % 2 == 0]

    Ou seja a variável resultado receberá uma lista, sabendo disto já somos capazes de encontrar o gabarito da questão ( alternativa c), porém vamos ver toda a sentença:

    c) A variável resultado armazenará uma estrutura de dados do tipo Lista: o trecho resultado = [...]

    que contém um conjunto de dados do tipo Tupla  : o trecho (x,y) dentro da lista

    com os pares de dados x e y: o trecho for x in range(1,100) e for y in range(1,50)

    , ambos números pares, o trecho and x % 2 == 0 and y % 2 == 0, pois definimos números pares como sendo .... número que ao ser dividido por dois têm resto zero 

    com x divisível por y. o trecho x % y == 0

    GABARITO ALTERNATIVA C