Buscar

Lista 2 - Estrutura de Decisão_ Revisão da tentativa

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 1/33
Iniciado em sábado, 14 ago 2021, 18:16
Estado Finalizada
Concluída em segunda, 23 ago 2021, 22:02
Tempo
empregado
9 dias 3 horas
Avaliar 10,00 de um máximo de 10,00(100%)
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 2/33
Questão 1
Correto
Atingiu 1,00 de 1,00
Pares e Ímpares 
Faça um programa que imprima na tela se um número lido do teclado é par ou ímpar. Se for par imprima também o próximo número
par, caso contrário, imprima o próximo ímpar.
Entrada:
Apenas um inteiro.
Saída:
A saída conterá duas linhas, uma informando se o número é par ou ímpar e outra mostrando o próximo par ou ímpar, conforme
exemplo abaixo.
Dica:
Uma maneira de veri�car se um número é par ou ímpar é analisando o resto da divisão inteira do número por 2. Existe um operador
em Python que calcula o resto de uma divisão inteira. Exemplo: A % B.
For example:
Input Result
2 2 é par 
4
3 3 é ímpar 
5
-4 -4 é par 
-2
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
n1 = int(input())
if(n1%2 == 0):
#se o resto de uma divisão por 2 for 0, o resultado é par
print(n1, "é par")
l # ã
1
2 ▼
3
4
5
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 3/33
else: #se não
print(n1, "é ímpar")
print(n1+2)
Input Expected Got
 2 2 é par 4
2 é par 
4 
 3 3 é ímpar 5
3 é ímpar 
5 
 -4 -4 é par -2
-4 é par 
-2 
 1 1 é ímpar 3
1 é ímpar 
3 
 0 0 é par 2
0 é par 
2 
 -5 -5 é ímpar -3
-5 é ímpar 
-3 
 7 7 é ímpar 9
7 é ímpar 
9 
 9 9 é ímpar 11
9 é ímpar 
11 
 -85 -85 é ímpar -83
-85 é ímpar 
-83 
 -50 -50 é par -48
-50 é par 
-48 
5 ▼
6
7
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 4/33
Input Expected Got
 20 20 é par 22
20 é par 
22 
 -1 -1 é ímpar 1
-1 é ímpar 
1 
 -2 -2 é par 0
-2 é par 
0 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 5/33
Questão 2
Correto
Atingiu 1,00 de 1,00
Loja de roupas: valor �nal da compra 
Uma loja de roupas aplica uma regra para determinar o valor de uma compra, de acordo com o número de parcelas escolhido pelo
seu cliente, conforme as seguintes regras:
Número de parcelas Valor �nal da compra
1 Desconto de 5% sobre o valor da compra
2 O próprio valor da compra
3 O valor da compra acrescido de 5%
4 O valor da compra acrescido de 10%
Implemente um programa que leia o valor incial da compra e o número de parcelas e, em seguida, calcule e imprima o valor �nal da
compra e o valor de cada parcela.
Entrada:
Dois valores a respeito de uma compra. O primeiro valor, que é um número real, indica o valor da compra, e o segundo valor, que é
um número inteiro, indica a quantidade de parcelas. Considere que as entradas sempre serão válidas, ou seja, não é necessário fazer
validação das entradas. Todos os valores de entrada devem ser informados em uma única linha e separados por espaço.
Saída:
A primeira saída é o valor �nal da compra e a segunda é o valor de cada prestação. Observe que as saídas são números reais e devem
estar formatadas para duas casas decimais, conforme os exemplos a seguir. Os valores são apresentados na mesma linha e separados
por espaço.
For example:
Input Result
150 4 165.00 41.25
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 6/33
Input Result
200 3 210.00 70.00
45.60 1 43.32 43.32
70.25 2 70.25 35.12
50.01 1 47.51 47.51
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
valor, parcela = input().split()
valor = float(valor)
parcela = float(parcela)
if parcela == 1:
 x1 = float(valor * 0.95)
 print(f'{x1:.2f} {x1:.2f}')
elif(parcela == 2):
 x1 = float(valor)
 c = float(valor / parcela)
 print(f'{x1:.2f} {c:.2f}')
elif (parcela == 3):
x1 = float(valor * 1 05)
Input Expected Got
 150 4 165.00 41.25 165.00 41.25 
 200 3 210.00 70.00 210.00 70.00 
 45.60 1 43.32 43.32 43.32 43.32 
 70.25 2 70.25 35.12 70.25 35.12 
1
2
3
4
5 ▼
6
7
8
9 ▼
10
11
12
13
14 ▼
15
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 7/33
Input Expected Got
 50.01 1 47.51 47.51 47.51 47.51 
 1568.36 2 1568.36 784.18 1568.36 784.18 
 550 3 577.50 192.50 577.50 192.50 
 36.45 4 40.10 10.02 40.10 10.02 
 164 1 155.80 155.80 155.80 155.80 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 8/33
Questão 3
Correto
Atingiu 1,00 de 1,00
Empresa: reajuste salarial 
Uma empresa aplicará um reajuste salarial a todos os seus funcionários baseado no cargo ocupado e no tempo de serviço, conforme
as especi�cações a seguir:
Cargo
Tempo de serviço
Até 3 anos
(inclusive)
3 a 6 anos
Acima de 6 anos
(exclusive)
Gerente 12% 13% 15%
Engenheiro 7% 11% 14%
Outros 5% 5% 5%
 
Faça um programa que receba como entrada o cargo, o tempo de serviço e o salário atual de um funcionário, em seguida, calcula e
imprime o reajuste concedido e o salário reajustado. O salário atual não pode ser inferior ao salário mínimo, ou seja, R$ 1039,00, caso
isso ocorra, a mensagem “Salário inválido!” deve ser impressa na tela e o programa deve ser encerrado.
Entrada:
O primeiro valor é uma string e indica o cargo do funcionário. O segundo valor, que é um número inteiro, indica o tempo de serviço do
funcionário. O terceiro valor, que é um número real, representa o salário atual do funcionário. Considere que o tempo de serviço
sempre será um número válido, não é necessário validar. Os valores devem ser lidos um por linha.
Saída:
Dois valores reais, apresentados um por linha. O primeiro valor é o reajuste que será concedido e o segundo é o salário já reajustado.
Observe que os valores de reajuste e salário reajustado são impressos com duas casas decimais de precisão.
For example:
Input Result
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 9/33
Input Result
Engenheiro 
3 
8000 
560.00 
8560.00
Gerente 
6 
7500
975.00 
8475.00
Auxiliar de escritório
7 
1700
85.00 
1785.00
Analista de TI 
4 
2089
104.45 
2193.45
Segurança 
3 
998
Salário inválido!
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
x = str(input())
t = int(input())
salario = float(input())
if salario<1039:
 print("Salário inválido!")
else:
 if (x == 'Engenheiro'):
 if t <=3:
 reajuste = salario*0.07
 novo = salario+reajuste
 print(f'{reajuste:.2f}')
 print(f'{novo:.2f}')
 elif 3<t<=6:
 reajuste = salario*0.11
novo = salario+reajuste
1
2
3
4 ▼
5
6 ▼
7 ▼
8 ▼
9
10
11
12
13 ▼
14
15
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 10/33
Input Expected GotInput Expected Got
 Engenheiro 3 
8000
560.00 
8560.00
560.00 
8560.00 
 Gerente 6 
7500
975.00 
8475.00
975.00 
8475.00 
 Auxiliar de escritório7 
1700
85.00 
1785.00
85.00 
1785.00 
 Analista de TI 4 
2089
104.45 
2193.45
104.45 
2193.45 
 Segurança 3 
998
Salário inválido! Salário inválido! 
 Engenheiro 10 
8350
1169.00 
9519.00
1169.00 
9519.00 
 Auxiliar de limpeza 6 
1050
52.50 
1102.50
52.50 
1102.50 
 Gerente 8 
7650
1147.50 
8797.50
1147.50 
8797.50 
 Engenheiro 4 
8200
902.009102.00
902.00 
9102.00 
 Gerente 1 
7050
846.00 
7896.00
846.00 
7896.00 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00. ???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 11/33
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 12/33
Questão 4
Correto
Atingiu 1,00 de 1,00
Ghost e a Escada 
No caminho para encontrar Jon Snow em Dragonstone, o lobo Ghost enfrenta um problema: uma grande escada. Os degraus da escada
são numeradas de 1 até in�nito. Sendo um lobo esperto, Ghost decidiu calcular dois valores, o número de degraus percorridos com
números pares e ímpares.
Você precisa checar se o número de passos em degraus pares e ímpares encontrados pelo Ghost estão corretos. Considere que ele não
pula nenhum degrau e que ele sobe pelo menos o degrau de número 1.
Entrada:
Em uma única linha são dados dois inteiros a, b (0   a,b  100), o número de passos pares e ímpares, respectivamente.
Saída:
Em uma única linha, imprima "a b ok", se Ghost calculou corretamente os valores e "a b errados" caso contrário.
Comentários:
Ao começar a contagem de passos com um número ímpar (degrau de número 1) e percorrer os degraus de maneira consecutiva, o
número de passos ímpares contados ou é igual ao número de passos pares ou é maior e difere deste por no máximo 1.
Lembre-se que para ler vários valores em uma mesma linha, use input().split(). Se o argumento de split for vazio, o separador das
variáveis é um espaço em branco. Porém, input lê apenas strings do teclado, portanto você deverá converter as strings em inteiros. No
exemplo a seguir, o usuário digita valores separados por um espaço em branco e aperta enter para enviá-los, então, o programa lê esses
valores separados por espaços como strings (na ordem em que aparecem), guardados nas variáveis correspondentes e os converte para
inteiros:
A, B = input().split()
A, B = [int(A), int(B)]
For example:
Input Result
2 3 2 3 ok
3 1 3 1 errados
5 5 5 5 ok
≤ ≤
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 13/33
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
x,y = input().split()
x, y = [int (x), int(y)]
if (x >= 0 and y <= 100):
 if (x > y):
 print(f'{x}' , f'{ y} errados')
 elif (y>=0 and (y-x)>1):
 print(f'{x}', f'{y} errados')
 elif(y == 0 and x== 0):
 print(f'{x}' , f'{ y} errados')
 elif (y >= x and (y - x) <= 1):
 print(f'{x}', f'{y} ok')
else:
 print(f'{x}' , f'{ y} errados')
Input Expected Got
 2 3 2 3 ok 2 3 ok 
 3 1 3 1 errados 3 1 errados 
 5 5 5 5 ok 5 5 ok 
 5 4 5 4 errados 5 4 errados 
 5 4 5 4 errados 5 4 errados 
 9 9 9 9 ok 9 9 ok 
 0 0 0 0 errados 0 0 errados 
 0 1 0 1 ok 0 1 ok 
1
2
3
4 ▼
5 ▼
6
7 ▼
8
9 ▼
10
11 ▼
12
13 ▼
14
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 14/33
Input Expected Got
 1 0 1 0 errados 1 0 errados 
 89 25 89 25 errados 89 25 errados 
 4 5 4 5 ok 4 5 ok 
 10 12 10 12 errados 10 12 errados 
 10 11 10 11 ok 10 11 ok 
 11 10 11 10 errados 11 10 errados 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 15/33
Questão 5
Correto
Atingiu 1,00 de 1,00
A Mais Longa Subsequência Incomum
Uma subsequência de uma string é uma sequência de caracteres que aparece na mesma ordem da string. As ocorrências não precisam
ser consecutivas, por exemplo, "ac", "bc", "abc" e "a" são subsequências da string "abc", enquanto as strings "abbc" e "acb" não são. A
string vazia é subsequência de qualquer string. Qualquer string é subsequência dela mesmo.
A maior subsequência incomum entre duas strings é a maior string que é subsequência de uma das duas e não é subsequência da outra. 
Dada duas strings x e y, encontre o tamanho da maior subsequência incomum.  
Entrada:
A primeira linha contém a string x e a segunda linha contém a string y. As duas strings não são vazias e são compostas apenas por letras
minúsculas.
Saída:
Se não houver nenhuma subsequência incomum, imprima "-1". Caso contrário imprima o tamanho da maior subsequência incomum de
a e b.
Comentários:
A maior subsequência de uma string é ela mesma. No primeiro exemplo abaixo "abcd" e "defgh" são as maiores subsequências das
strings de entrada,  "abcd" e "defgh", respectivamente. Essas duas maiores subsequências são incomuns, ou seja, diferentes? Nesse
caso, imprima o tamanho da maior.  Caso contrário, imprima "-1". 
Dica:
Existe uma função em Python que retorna o tamanho de uma string qualquer dada como parâmetro. Exemplo: len(A).
For example:
Input Result
abcd 
defgh
5
a 
a
-1
aaaaaaaaaacccccccccc 
aaaaaaaaaadddddddddd
20
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 16/33
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
a = input()
b = input()
if(a == b):# condição se
 print(-1)
elif(len(a) > len(b)):#retorna o número de caracteres no stri
 print(len(a))
else:
print(len(b))
Input Expected Got
 abcd defgh
5 5 
 a a
-1 -1 
 aaaaaaaaaaccccccccccaaaaaaaaaadddddddddd
20 20 
 abcde fghij
5 5 
 abcde abcdf
5 5 
 abcde bbcde
5 5 
 abcdef eabcdf
6 6 
1
2
3
4 ▼
5
6 ▼
7
8 ▼
9
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 17/33
Input Expected Got
 abcdefgh abdcefgh
8 8 
 mmm mnm
3 3 
 mmm mmm
-1 -1 
 a ab
2 2 
 raphael raphael
-1 -1 
 ab ba
2 2 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 18/33
Questão 6
Correto
Atingiu 1,00 de 1,00
Calendário
Raphael quer fazer um calendário para o mês atual. Para isso, ele desenha um tabela aonde as colunas correspondem às semanas
(uma semana são 7 dias consecutivos de segunda até domingo), linhas  correspondem aos dias da semana, e as células contém datas.
Por exemplo, o calendário para Janeiro de 2017 seria como na imagem abaixo:
 
Raphael quer saber quantas colunas sua tabela deve ter, dado o mês e o dia da semana do primeiro dia do mês. Você pode fazer um
programa para ajudá-lo, assumindo que o ano não é bissexto?
Entrada:
A entrada consiste de uma única linha contendo dois inteiros m e d (1  m  12, 1 d  7). O inteiro m é o número do mês (de janeiro
à dezembro) e o inteiro d é o dia da semana do primeiro dia do mês (1 é segunda, 2 terça, até 7 domingo).
Saída:
Imprima um único inteiro: o número de colunas que a tabela terá. O primeiro exemplo corresponde a janeiro de 2017, mostrado na
�gura acima.
Dica:
Analise, caso a caso, cada mês e cada possibilidade de dia de início de semana usando if's encadeados ou aninhados.  
≤ ≤ ≤ ≤
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 19/33
For example:
Input Result
1 7 6
1 1 5
11 6 5
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
mes, dia = input().split()
mes, dia = int(mes), int(dia)
#saber numero de colunas na tabela do mes dadomes e dia da
# do primeiro dia do mes
if (mes==2):
 if dia==1:
 print(f'{4}')
 elif (dia > 1 and dia <= 7):
 print(f'{5}')
elif (mes == 4 or mes == 6 or mes == 9 or mes == 11):
 if (dia >= 1 and dia <= 6):
 print(f'{5}')
elif (dia == 7):
Input Expected Got
 1 7 6 6 
 1 1 5 5 
 11 6 5 5 
 2 7 5 5 
1
2
3
4
5
6
7 ▼
8 ▼
9
10 ▼
11
12 ▼
13 ▼
1415
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 20/33
Input Expected Got
 2 1 4 4 
 8 6 6 6 
 1 1 5 5 
 1 2 5 5 
 1 3 5 5 
 3 6 6 6 
 5 7 6 6 
 12 3 5 5 
 9 7 6 6 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 21/33
Questão 7
Correto
Atingiu 1,00 de 1,00
Índice de Massa Corporal 
Usando como dados de entrada altura h (em metros) e peso p (em quilos), elabore um programa que calcule o IMC (índice de massa
corporal) do usuário, usando a fórmula:
IMC =p/h
Depois interprete e informe o resultado, da seguinte forma:
Baixo peso: IMC abaixo de 18,5 kg/m
Peso normal: IMC entre 18,5 (inclusive) e 24,9 (inclusive) kg/m
Sobrepeso: IMC entre 24,9 e 29,9 (inclusive) kg/m
Obesidade grau I: IMC entre 29,9 e 34,9 (inclusive) kg/m
Obesidade grau II: IMC entre 34,9 e 39,9 (inclusive) kg/m 
Obesidade grau III: IMC maior que 39,9 kg/m 
Caso ele esteja acima da faixa de peso normal informe também o mínimo de quilos que serão necessários perder para chegar à faixa
peso normal (24,9). Para isso basta subtrair do peso o mínimo de quilos que serão necessários perder (peso_normal_máximo * altura
* altura).
Entrada:
Duas linhas de dados: peso (em kg) e altura (em metros).
Saída:
Caso o usuário esteja na faixa Baixo peso ou Peso normal apenas imprima a mensagem informando o IMC e, na próxima linha, a sua
classi�cação correspondente usando a tabela, conforme exemplo fornecido abaixo. Caso contrário, imprima também o peso
mínimo necessário a se perder para chegar à faixa peso normal com 2 casas decimais após a vírgula.
For example:
Input Result
79 
1.84
23.33 
Peso normal
84.4 
1.85
24.66 
Peso normal
2 
2 
2
2
2
2
2
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 22/33
Input Result
85 
1.60
33.20 
Obesidade grau I 
21.26
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
peso1 = float(input())
x = float(input())
indice = peso1/(x**2)
print('%.2f'%indice)
if(indice < 18.5):
 print('Baixo peso')
elif(indice >= 18.5 and indice <= 24.9):
 print('Peso normal')
elif(indice >24.9 and indice <= 29.9):
 print('Sobrepeso')
 peso_preciso = 24.9*(x**2)
print('% 2f'%(peso1 peso preciso)) #peso mínimo para a
Input Expected Got
 79 1.84
23.33 
Peso normal
23.33 
Peso normal 
 84.4 1.85
24.66 
Peso normal
24.66 
Peso normal 
 85 1.60
33.20 
Obesidade grau I 
21.26
33.20 
Obesidade grau I 
21.26

 80 1.84
23.63 
Peso normal
23.63 
Peso normal 
1
2
3
4
5
6
7
8 ▼
9
10 ▼
11
12 ▼
13
14
15
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 23/33
Input Expected Got
 55 1
55.00 
Obesidade grau III
30.10
55.00 
Obesidade grau III
30.10

 90 1.90
24.93 
Sobrepeso 
0.11
24.93 
Sobrepeso 
0.11

 100 1.90
27.70 
Sobrepeso 
10.11
27.70 
Sobrepeso 
10.11

 85.54 1.84
25.27 
Sobrepeso 
1.24
25.27 
Sobrepeso 
1.24

 60 1.50
26.67 
Sobrepeso 
3.98
26.67 
Sobrepeso 
3.98

 62.5 1.67
22.41 
Peso normal
22.41 
Peso normal 
 50 1.40
25.51 
Sobrepeso 
1.20
25.51 
Sobrepeso 
1.20

 50 1.75
16.33 
Baixo peso
16.33 
Baixo peso 
 45 1.45
21.40 
Peso normal
21.40 
Peso normal 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 24/33
Questão 8
Correto
Atingiu 1,00 de 1,00
Tipos de Triângulos
Leia 3 valores de ponto �utuante A, B e C e ordene-os de modo que A representa o maior dos 3 lados. A seguir, determine o tipo de
triângulo que estes três lados formam, com base nos seguintes casos, sempre escrevendo uma mensagem adequada:
Se A B + C, apresente a mensagem: NAO FORMA TRIANGULO 
Se A  = B  + C , apresente a mensagem: TRIANGULO RETANGULO 
Se os três lados forem iguais, apresente a mensagem: TRIANGULO EQUILATERO
Se apenas dois dos lados forem iguais, apresente a mensagem: TRIANGULO ISOSCELES
Caso contrário, apresente a mensagem: TRIANGULO ACUTANGULO OU OBTUSANGULO
Entrada:
A entrada contém 3 valores reais todos maiores que zero em linhas separadas. Não terá como entrada um valor tal que o triângulo seja
retângulo e isósceles ao mesmo tempo.
Saída:
Imprima a classi�cação do triângulo.
Comentários:
Note que o valor A, representando o maior lado, não corresponde necessariamente ao primeiro dos valores de entrada. É necessário
determiná-lo dentre as várias possibilidades de entrada e, em seguida, classi�car o triângulo.
For example:
Input Result
7.0 
5.0 
7.0
TRIANGULO ISOSCELES
6.0 
6.0 
6.0
TRIANGULO EQUILATERO
1.0 
3.0 
1.0
NAO FORMA TRIANGULO
≥
2 2 2
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 25/33
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
a = float(input())
maior = a
teste1 = 0
b = float(input())
if (b > maior):
 maior = b
 teste1 = 1
c = float(input())
if(c > maior):
 maior = c
 teste = 2
# saber maior lado, saber qual é o maior lado.
# Pela variável teste1 saberei o maior lado
Input Expected Got
 7.0 5.0 
7.0
TRIANGULO ISOSCELES TRIANGULO ISOSCELES 
 6.0 6.0 
6.0
TRIANGULO EQUILATERO TRIANGULO EQUILATERO 
 1.0 3.0 
1.0
NAO FORMA TRIANGULO NAO FORMA TRIANGULO 
 7.0 7.0 
7.0
TRIANGULO EQUILATERO TRIANGULO EQUILATERO 
 3.0 4.0 
5.0
TRIANGULO RETANGULO TRIANGULO RETANGULO 
1
2
3
4
5 ▼
6
7
8
9 ▼
10
11
12
13
14
15
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 26/33
Input Expected Got
 3 2 
1
NAO FORMA TRIANGULO NAO FORMA TRIANGULO 
 1.50 1.45 
1.30
TRIANGULO ACUTANGULO OU OBTUSANGULO TRIANGULO ACUTANGULO OU OBTUSANGULO 
 3.0 3.5 
4.95
TRIANGULO ACUTANGULO OU OBTUSANGULO TRIANGULO ACUTANGULO OU OBTUSANGULO 
 3.0 3.5 
4.25
TRIANGULO ACUTANGULO OU OBTUSANGULO TRIANGULO ACUTANGULO OU OBTUSANGULO 
 7.5 3 
4.5
NAO FORMA TRIANGULO NAO FORMA TRIANGULO 
 4 4 
4
TRIANGULO EQUILATERO TRIANGULO EQUILATERO 
 5 5 
4
TRIANGULO ISOSCELES TRIANGULO ISOSCELES 
 3.0 3.0 
1.5
TRIANGULO ISOSCELES TRIANGULO ISOSCELES 
Passou em todos os teste! 
Correto
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 27/33
Questão 9
Correto
Atingiu 1,00 de 1,00
Duração do Jogo 
Leia a hora inicial, minuto inicial, hora �nal e minuto �nal de um jogo. A seguir calcule a duração do jogo, considerando que o jogo pode
acabar em um dia e terminar em outro, tendo uma duração máxima de 24 horas.
Entrada:
Quatro números inteiros representando a hora e minuto de início e �m do jogo.  Todos os valores são apresentados na mesma linha.
Saída:
Mostre a seguinte mensagem: "O jogo durou XX hora(s) e YY minuto(s)."
For example:
Input Result
7 5 7 4 O jogo durou 23 hora(s) e 59 minuto(s).
7 7 7 7 O jogo durou 24 hora(s) e 0 minuto(s).
7 10 8 9 O jogo durou 0 hora(s) e 59 minuto(s).
Answer: (penalty regime: 0, 0, 0, 1, 2, 3, ... %)
hr1, mn1, hrf, mnf = input().split()
hr1, mn1, hrf, mnf = [int (hr1),int (mn1),int (hrf),int (m
horas = 0
minutos = 0
if (hr1 >= hrf): #resolver por casos, pois, o jogo terá 
 horas = (hrf-hr1) + 24
 if (mn1 > mnf):
 horas =horas - 1
 minutos = ( mnf - mn1) + 60
 else:
 minutos = mnf -mn1
else:
horas = hrf - hr1
1
2
3
4
5 ▼
6
7 ▼
8
9
10 ▼
11
12 ▼
13
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 28/33
 horas hrfhr1
 if (mn1 >= mnf):
horas = horas 1
Input Expected Got
 7 5 7 4 O jogo durou 23 hora(s) e 59 minuto(s). O jogo durou 23 hora(s) e 59 minuto(s). 
 7 7 7 7 O jogo durou 24 hora(s) e 0 minuto(s). O jogo durou 24 hora(s) e 0 minuto(s). 
 7 10 8 9 O jogo durou 0 hora(s) e 59 minuto(s). O jogo durou 0 hora(s) e 59 minuto(s). 
 6 5 6 4 O jogo durou 23 hora(s) e 59 minuto(s). O jogo durou 23 hora(s) e 59 minuto(s). 
 7 5 6 4 O jogo durou 22 hora(s) e 59 minuto(s). O jogo durou 22 hora(s) e 59 minuto(s). 
 8 8 8 8 O jogo durou 24 hora(s) e 0 minuto(s). O jogo durou 24 hora(s) e 0 minuto(s). 
 8 10 8 5 O jogo durou 23 hora(s) e 55 minuto(s). O jogo durou 23 hora(s) e 55 minuto(s). 
 8 5 9 3 O jogo durou 0 hora(s) e 58 minuto(s). O jogo durou 0 hora(s) e 58 minuto(s). 
 6 4 7 1 O jogo durou 0 hora(s) e 57 minuto(s). O jogo durou 0 hora(s) e 57 minuto(s). 
 7 5 6 5 O jogo durou 23 hora(s) e 0 minuto(s). O jogo durou 23 hora(s) e 0 minuto(s). 
 7 5 6 6 O jogo durou 23 hora(s) e 1 minuto(s). O jogo durou 23 hora(s) e 1 minuto(s). 
 7 5 8 4 O jogo durou 0 hora(s) e 59 minuto(s). O jogo durou 0 hora(s) e 59 minuto(s). 
 7 8 9 10 O jogo durou 2 hora(s) e 2 minuto(s). O jogo durou 2 hora(s) e 2 minuto(s). 
Passou em todos os teste! 
Correto
13
14 ▼
15
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 29/33
Notas para este envio: 1,00/1,00.
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 30/33
Questão 10
Correto
Atingiu 1,00 de 1,00
Rally
Uma competição de rally consiste de dois trechos que devem ser percorridos a velocidades médias distintas. Ganha a equipe que
perder menos pontos durante os trechos. Pontos são descontados por passar atrasado ou adiantado pelos Postos de Controle (PC) e
por ultrapassar limite máximo de velocidade conforme descrito a seguir.
O trecho 1 tem que ser percorrido em 30 minutos. No �nal do trecho existe um PC que registra o tempo da equipe. Cada segundo a mais
(atraso) do tempo ideal a equipe perde 1 ponto e cada segundo a menos (adiantado) a equipe perde 2 pontos. A velocidade máxima no
trecho é de 60 Km/h. Se a equipe passar por um radar com velocidade acima de 60 Km/h, para cada Km/h acima do permitido é
descontado 10 pontos.
O trecho 2 tem que ser percorrido em 60 minutos. Da mesma forma que no trecho 1, existe um PC no �nal do trecho 2 que registra o
tempo da equipe. Cada segundo a mais (atraso) do tempo ideal a equipe perde 1 ponto e cada segundo a menos (adiantado) a equipe
perde 2 pontos. A velocidade máxima no trecho é de 40 Km/h. Se a equipe passar por um radar com velocidade acima de 40 Km/h,
para cada Km/h acima do permitido é descontado 20 pontos.
A equipe que não conseguir cumprir um trecho perde mais 1000 pontos para cada trecho, além das penalidades já descritas. Neste
caso, o tempo registrado pela equipe no trecho não cumprido é zero.
Faça um programa que leia o tempo que a equipe levou para percorrer o trecho 1, a velocidade com que passou pelo radar do trecho
1, o tempo que a equipe levou para percorrer o trecho 2 e a velocidade com que passou pelo radar do trecho 2. Calcule os pontos
perdidos da equipe no trecho1 sem levar em conta a velocidade máxima, no trecho1 levando em conta a velocidade máxima, no
trecho 2 sem levar em conta a velocidade máxima e no trecho 2 levando em conta a velocidade máxima. Calcule também a pontuação
total (perdida) da equipe sem levar em conta a velocidade máxima e levando em conta a velocidade máxima.
Entrada:
Quatro valores inteiros, em uma linha e separados por espaços, nessa ordem: o tempo que a equipe levou para percorrer o trecho 1
em segundos, a velocidade com que passou pelo radar do trecho 1 em Km/h, o tempo que a equipe levou para percorrer o trecho 2 em
segundos e a velocidade com que passou pelo radar do trecho 2 em Km/h.
Saída:
Seis inteiros um por linha, com os pontos (perdidos) da equipe:
no trecho 1 sem levar em conta a velocidade máxima,
no trecho 1 levando em conta a velocidade máxima,
no trecho 2 sem levar em conta a velocidade máxima,
no trecho 2 levando em conta a velocidade máxima, ???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 31/33
a pontuação total da equipe sem levar em conta a velocidade máxima, e
a pontuação total da equipe levando em conta a velocidade máxima.
For example:
Input Result
1790 70 3610 50 -20 
-120 
-10 
-210 
-30 
-330
Answer: (penalty regime: 0, 0, 0, 1, 2, ... %)
a,b,c,d = input().split()
n1 = [int(a), int(b),int(c),int(d)]
x = 0
y = 0
# tempo que a equipe levou para percorrer o trecho 1,
# a velocidade com que passou pelo radar do trecho 1,
# o tempo que a equipe levou para percorrer
# o trecho 2 e a velocidade com que passou pelo radar do t
if n1[0] >= 1800:
 x= 1800 - n1[0]
 print(x)
elif n1[0] < 1800:
Input Expected Got
1
2
3
4
5
6
7
8
9
10
11
12 ▼
13
14
15
 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 32/33
Input Expected Got
 1790 70 3610 50 -20 -120 
-10 
-210 
-30 
-330
-20 
-120 
-10 
-210 
-30 
-330

 1780 80 3620 60 -40 -240 
-20 
-420 
-60 
-660
-40 
-240 
-20 
-420 
-60 
-660

 1780 60 3620 40 -40 -40 
-20 
-20 
-60 
-60
-40 
-40 
-20 
-20 
-60 
-60

 1780 50 3620 100 -40 -40 
-20 
-1220 
-60 
-1260
-40 
-40 
-20 
-1220
-60 
-1260

 1780 110 3620 30 -40 -540 
-20 
-20 
-60 
-560
-40 
-540 
-20 
-20 
-60 
-560

 1805 90 3550 75 -5 -305 
-100 
-800 
-105 
-1105
-5 
-305 
-100 
-800 
-105 
-1105

Passou em todos os teste! 
???
04/09/2021 Lista 2 - Estrutura de Decisão: Revisão da tentativa
https://aprender3.unb.br/mod/quiz/review.php?attempt=808957&cmid=426975 33/33
Correto
Notas para este envio: 1,00/1,00.
 
???
https://aprender3.unb.br/mod/resource/view.php?id=426974&forceview=1
https://aprender3.unb.br/mod/resource/view.php?id=426976&forceview=1

Continue navegando