Escolar Documentos
Profissional Documentos
Cultura Documentos
/40 pontos
Professor: Jesús P. Mena-Chalco Data: 14/03/2024
Nome completo: RA:
Questão 1 (8 pontos): Para cada função selecione uma opção (Resposta correta +2, incorreta -1).
def funcao01() -> int: (a) A função devolve o inteiro 0.
r = 2
r = r // 2 * 2
(b) A função devolve o inteiro 2.
r = r + 2 * r (c) A função devolve o inteiro 4.
return r
(d) A função devolve o inteiro 6.
(e) Nenhuma das anteriores.
def funcao02() -> int: (a) A função devolve o inteiro 10.
k = 10
t = 16
(b) A função devolve o inteiro 12.
while k <= 12 and False: (c) A função devolve o inteiro 14.
t = k
(d) A função devolve o inteiro 16.
k = k + 2
return k (e) Nenhuma das anteriores.
def funcao03() -> int: (a) A função devolve o inteiro 67.24.
return 41 // (3 + 2) ** 2
(b) A função devolve o inteiro 1.
(c) A função devolve o inteiro 1.64.
(d) A função devolve o inteiro 64.
(e) Nenhuma das anteriores.
def funcao04() -> bool: (a) A função devolve somente true .
return 1 + 20 == 5 * 4 + 1 or 10 <= 5
(b) A função devolve somente false.
(c) A função devolve os valores true e true.
(d) A função devolve os valores true e false.
(e) A função devolve os valores false e false.
Questão 3 (8 pontos)
Complete a função triangulo de tal maneira que,
def triangulo(n:int):
para um ímpar n, seja impressa uma sequência de
caracteres de ‘*’ e ‘o’ na forma triangular. for i in range(1, n + 1):
for j in range(1, n + 1):
Por exemplo, para n igual a 7 a função deverá de
imprimir: if i <= j and (i + j) > n:
******o
print("o", end = "")
*****oo
****ooo else:
***oooo print("*", end = "")
****ooo print("")
*****oo
******o
Questão 4 (6 pontos)
Indique o valor que devolverá a seguinte função. Considere como parâmetro de entrada, para a função, o
seu número de matricula (isto é, seu RA).
def enigmaRA (ra:int) -> int: ra: _________________________
i = 1 Valor que devolve a função enigmaRA: _______
t = 0 O que realiza a função?
while i <= 8:
O programa examina os 4 primeiros dígitos nas
aux = ra % 10 posições ímpares (do menos significativo ao mais
ra = ra // 100 significativo) e verifica quantos deles são menores ou
i = i + 2 iguais a três.
if aux <= 3:
t = t + 1 Para ra=123456789 → 1
Para ra=987654321 → 2
return t % 10
Para ra=112019112233 → 3
Questão 5 (6 pontos)
Indique o valor que devolverá a seguinte função.
def FN(nome: str) -> str: Para “Larissa Fernandes de Santos”
Devolve “Fernandes”
resposta = '' # nao tem espaço em branco
k = len(nome) - 1
Para “Mariana Gonçalves de Souza”
while k > 0:
Devolve “Gonçalves”
acc = '' # nao tem espaço em branco
p = k
O que realiza a função?
while p >= 0 and nome[p] != ' ': # espaço
acc = nome[p] + acc A função FN, dada uma frase (ou um nome
p = p - 1 completo), determina a última palavra de
maior comprimento.
if len(resposta) < len(acc):
resposta = acc Carlos da Silva Santos → Santos
Carlosh da Silva Santos → Carlosh
k = p
k = k-1
return resposta