Escolar Documentos
Profissional Documentos
Cultura Documentos
Questão Nota
MC102—Algoritmos e Programação de Computadores 1
2
Prova I 3
Turmas K L M N 4 5 6 7 4
5
Primeiro Semestre de 2018 Total
Nome: RA:
Importante: As respostas deverão ser escritas nos espaços demarcados, opcionalmente a lápis. Não é per-
mitida a consulta a qualquer material, nem o uso de celulares ou outros dispositivos eletrônicos de comu-
nicação/computação. Não se esqueça de indentar corretamente os códigos solicitados. Boa prova!
1. (1 ponto) Maria e Marcos irão viajar e precisam escolher o destino da viagem. A filha deles, Carla, está muito
ansiosa para ir para a praia! O casal percebeu que, para a famı́lia poder viajar, as seguintes condições devem ser
atendidas:
O quadro a seguir apresenta uma série de cenários possı́veis. Preencha a coluna “Irão Viajar” com SIM ou
NÃO, indicando se para aquela determinada situação a famı́lia irá ou não viajar. Uma resposta errada, exceto se
deixada em branco, anula uma correta.
0.1 por linha da tabela. Uma resposta errada anula uma certa.
2. (1 ponto) Para cada um dos seguintes trechos de código, indique o que será exibido pelo programa:
0.1 por item no bloco superior e 0.2 por item no bloco inferior. Em itens que pedem a impressão de vários
valores, considerar apenas a pontuação se todos os itens estiverem corretos (pela facilidade de se chutar valores bo-
oleanos). Considerar metade do valor se não constar not c no quarto item ou se constarem strings não solicitadas,
mas valores corretos nos outros itens.
n = 10 - 5 * 3 n = 10 - 5 n = 10 // 5 n = 4**2
c = 9 > n c = 9 > n c = 9 > n c = 9 > n
print(n) print(c) print(n, c) print("not c =", not c)
n = 5 - 10 n = 10 % 2 n = 2 + 3 * 5
c1 = -10 > n c1 = 9 > n r1 = not not True
c2 = -15 > n c2 = 0 > n r2 = not (10 < n or n == 17)
r1 = c1 or c2 r1 = not c1 and c2 c1 = 20 < n or 20 > n and n > 10
r2 = c1 and c2 r2 = c1 or not c2 c2 = n > 0 or 12 <= n and monty python
print(c1, c2) print(c1, c2) print(n, r1, r2)
print(r1, r2) print(r1, r2) print(c1, c2)
3. (2 pontos) Maria recebeu a seguinte especificação: Codifique um programa em Python que leia dois números
inteiros do teclado, exibindo Maior se o primeiro número for maior que o segundo, Igual se ambos os números
forem iguais e Menor se o primeiro número for menor que o segundo. Veja o código de Maria e indique:
• uma entrada que ao ser digitada pelo usuário fará com que ∀ float ou str
a = int(input()) o programa apresente erro de execução.
b = int(input()) 0.2 caso apresente um float ou string.
if (a > b):
print("Menor") • dois possı́veis valores a serem digitados pelo usuário que ∀ int x
if (a == b): farão com que o programa exiba na tela a palavra Maior.
print("Maior") 0.4 caso valores sejam coerentes. x
else:
print("Igual") • o que será impresso caso o usuário digite 4 e 3:
Menor Pontuar 0.4 apenas se a resposta
Igual incluir as duas strings
Reescreva o programa seguindo as especificações dadas e utilizando no máximo duas comparações.
a = int(input())
b = int(input())
if (a > b):
print("Maior")
elif (a == b):
print("Igual")
else:
print("Menor")
1.0 se a estrutura if-elif-else foi utilizada corretamente. A critério do corretor, descontar pontuação caso
outros erros tenham sido inseridos.
4. (3 pontos) Mário quer escrever um programa que imprime todos os números ı́mpares entre 10 e 9
1, um por linha. A saı́da esperada por Mário está indicada na tabela ao lado. Ele se lembra que em 7
Python o uso do operador % retorna o resto da divisão de um número por outro. Por exemplo, 5 % 2 5
resulta em 1. Mário escreveu o programa abaixo. O que será impresso quando o código for executado? 3
1
n = 10 10
while (n >= 1): 10
if (n % 2) == 0: 10
print(n) ...
Loop infinito
0.5 pela impressão de pelo menos um 10 e indicação de loop infinito
Sem usar laços (for ou while), escreva um programa que produza a saı́da esperada por Mário utilizando
um único comando print.
print(“9\n7\n5\n3\n1”)
0.5 para sequência de números com \n e 0.2 para sequência de números sem \n. 0.0 caso tenha utilizado mais
de um comando print.
Escreva um programa que produza a saı́da espe- Considere que Mário quer imprimir os números
rada por Mário imprimindo um número a cada múltiplos de 3 de 1 a 11, em ordem crescente, um
iteração em um laço for. por linha. Escreva um programa que produza esta
saı́da imprimindo um número a cada iteração em
um laço while.
Dica: A função range() gera uma lista de números útil para iteração em laços do tipo for. Você pode usá-la
da seguinte forma: range(fim), range(inı́cio, fim) ou range(inı́cio, fim, passo), como exercitado
na tarefa de laboratório 04. Observe os exemplos:
0 1 3
1 2 2
5. (3 pontos) João codificou o programa abaixo. Mário, que é amigo de João, disse que o programa não iria
compilar, já que a lista declarada na linha 1 é composta por inteiros e strings. Apresente uma justificativa se você
concorda com Mário ou indique qual seria a saı́da do programa.
0
1. lista = [0, 1, "Jo~
ao", "Maria"] 1
2. tamanho = len(lista) João
3. for i in range(tamanho): Maria
4. print(lista[i])
0.6 para impressão dos elementos da lista, um elemento por linha. 0.3 para impressão dos elementos da lista,
um ao lado do outro. 0.0 para justificativa.
Mário escreveu uma variação do programa codificado por João. Indique o que será exibido na tela quando o
programa for executado.
0.6 para impressão de todos os elementos. Para nota parcial cada par 3 4 vale 0.2 e a palavra Fim 0.1. Desconto
de 50% se imprimiu os elementos um ao lado do outro.
Para os dois próximos itens, as caixas de resposta pequenas podem ter induzido as pessoas a não colocar
indentação. Sugiro considerar apenas o range.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números inteiros de 50 (inclusive)
a 60 (inclusive).
Linha 4 for i in range(50,61) :
0.4 para linha completa e range correto. 0.2 para limite superior = 60.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números pares de 50 (inclusive)
a 60 (inclusive).
Linha 4 for i in range(50,61,2) :
0.4 para linha completa e range correto. 0.2 para limite superior = 60. 0.0 se não apresentou passo 2.
O código abaixo lê uma lista com n nomes. Complete o programa para percorrer esta lista e imprimir quantos
nomes têm mais de 9 caracteres. Dica: a função len(s) retorna o número de caracteres da string s.
n = int(input())
lista = []
for i in range(n) :
lista.append(input())
c = 0
for s in lista :
if len(s) > 9 :
print(s)
1.0 para código correto e completo. 0.0 caso não tenha percorrido corretamente os elementos da lista ou
o tamanho comparado seja um número relativo às outras versões da prova. A critério do corretor, descontar
pontuação caso outros erros tenham sido encontrados.
Instituto de Computação Universidade Estadual de Campinas
Questão Nota
MC102—Algoritmos e Programação de Computadores 1
2
Prova I 3
Turmas K L M N 4 5 6 7 4
5
Primeiro Semestre de 2018 Total
Nome: RA:
Importante: As respostas deverão ser escritas nos espaços demarcados, opcionalmente a lápis. Não é per-
mitida a consulta a qualquer material, nem o uso de celulares ou outros dispositivos eletrônicos de comu-
nicação/computação. Não se esqueça de indentar corretamente os códigos solicitados. Boa prova!
1. (1 ponto) Maria e Marcos irão viajar e precisam escolher o destino da viagem. A filha deles, Carla, está muito
ansiosa para ir para a praia! O casal percebeu que, para a famı́lia poder viajar, as seguintes condições devem ser
atendidas:
O quadro a seguir apresenta uma série de cenários possı́veis. Preencha a coluna “Irão Viajar” com SIM ou
NÃO, indicando se para aquela determinada situação a famı́lia irá ou não viajar. Uma resposta errada, exceto se
deixada em branco, anula uma correta.
0.1 por linha da tabela. Uma resposta errada anula uma certa.
2. (1 ponto) Para cada um dos seguintes trechos de código, indique o que será exibido pelo programa:
0.1 por item no bloco superior e 0.2 por item no bloco inferior. Em itens que pedem a impressão de vários
valores, considerar apenas a pontuação se todos os itens estiverem corretos (pela facilidade de se chutar valores bo-
oleanos). Considerar metade do valor se não constar not c no quarto item ou se constarem strings não solicitadas,
mas valores corretos nos outros itens.
n = 6 - 2 * 3 n = 10 - 10 n = 10 // 6 n = 2**3
c = 9 == n c = 9 > n c = 2 > n c = 10 > n
print(n) print(c) print(n, c) print("not c =", not c)
n = 20 - 10 n = 11 % 2 n = 3 + 4 * 5
c1 = 19 > n c1 = 1 > n r1 = not not True
c2 = -12 > n c2 = 0 < n r2 = not (20 < n or n == 23)
r1 = c1 or c2 r1 = not c1 and c2 c1 = 30 < n or 20 > n and n > 10
r2 = c1 and c2 r2 = c1 or not c2 c2 = n > 0 or 12 <= n and monty python
print(c1, c2) print(r1, r2) print(n, r1, r2)
print(r1, r2) print(c1, c2) print(c1, c2)
3. (2 pontos) Maria recebeu a seguinte especificação: Codifique um programa em Python que leia dois números
inteiros do teclado, exibindo Maior se o primeiro número for maior que o segundo, Igual se ambos os números
forem iguais e Menor se o primeiro número for menor que o segundo. Veja o código de Maria e indique:
• uma entrada que ao ser digitada pelo usuário fará com que
o programa apresente erro de execução. ∀ float ou str
a = int(input()) 0.2 caso apresente um float ou string.
b = int(input())
if (b < a): • dois possı́veis valores a serem digitados pelo usuário que ∀ int x
print("Maior") farão com que o programa exiba na tela a palavra Maior.
elif (b < a): 0.4 caso valores sejam coerentes.
print("Menor") ∀ int y < x
if (a >= b): • o que será impresso caso o usuário digite 13 e 10:
print("Igual") Maior Pontuar 0.4 apenas se a resposta
Menor incluir as duas strings
Igual
Reescreva o programa seguindo as especificações dadas e utilizando no máximo duas comparações.
a = int(input())
b = int(input())
if (a > b):
print("Maior")
elif (a == b):
print("Igual")
else:
print("Menor")
1.0 se a estrutura if-elif-else foi utilizada corretamente. A critério do corretor, descontar pontuação caso
outros erros tenham sido inseridos.
4. (3 pontos) Mário quer escrever um programa que imprime todos os números ı́mpares entre 10 e 11
20, um por linha. A saı́da esperada por Mário está indicada na tabela ao lado. Ele se lembra que em 13
Python o uso do operador % retorna o resto da divisão de um número por outro. Por exemplo, 5 % 2 15
resulta em 1. Mário escreveu o programa abaixo. O que será impresso quando o código for executado? 17
19
n = 11
while (n <= 19):
if (n % 2) == 0: Nada. Loop infinito.
print(n)
Sem usar laços (for ou while), escreva um programa que produza a saı́da esperada por Mário utilizando
um único comando print.
print(“11\n13\n15\n17\n19”)
0.5 para sequência de números com \n e 0.2 para sequência de números sem \n. 0.0 caso tenha utilizado mais
de um comando print.
Escreva um programa que produza a saı́da espe- Considere que Mário quer imprimir os números
rada por Mário imprimindo um número a cada múltiplos de 3 de 10 a 20, em ordem decrescente,
iteração em um laço for. um por linha. Escreva um programa que produza
esta saı́da imprimindo um número a cada iteração
em um laço while.
Dica: A função range() gera uma lista de números útil para iteração em laços do tipo for. Você pode usá-la
da seguinte forma: range(fim), range(inı́cio, fim) ou range(inı́cio, fim, passo), como exercitado
na tarefa de laboratório 04. Observe os exemplos:
0 1 3
1 2 2
5. (3 pontos) João codificou o programa abaixo. Mário, que é amigo de João, disse que o programa não iria
compilar, já que a lista declarada na linha 1 é composta por inteiros e strings. Apresente uma justificativa se você
concorda com Mário ou indique qual seria a saı́da do programa.
0
1. lista = [0, 2, "Maria", "José"] 2
2. tamanho = len(lista) Maria
3. for i in range(tamanho): José
4. print(lista[i])
0.6 para impressão dos elementos da lista, um elemento por linha. 0.3 para impressão dos elementos da lista,
um ao lado do outro. 0.0 para justificativa.
Mário escreveu uma variação do programa codificado por João. Indique o que será exibido na tela quando o
programa for executado.
0.6 para impressão de todos os elementos. Para nota parcial cada par 4 5 vale 0.2 e a palavra Fim 0.1. Desconto
de 50% se imprimiu os elementos um ao lado do outro.
Para os dois próximos itens, as caixas de resposta pequenas podem ter induzido as pessoas a não colocar
indentação. Sugiro considerar apenas o range.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números inteiros de 6 (inclusive)
a 160 (inclusive).
Linha 4 for i in range(6,161) :
0.4 para linha completa e range correto. 0.2 para limite superior = 160.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números pares de 28 (inclusive)
a 56 (inclusive).
Linha 4 for i in range(28,57,2) :
0.4 para linha completa e range correto. 0.2 para limite superior = 56. 0.0 se não apresentou passo 2.
O código abaixo lê uma lista com n nomes. Complete o programa para percorrer esta lista e imprimir quantos
nomes têm 7 ou mais caracteres. Dica: a função len(s) retorna o número de caracteres da string s.
n = int(input())
lista = []
for i in range(n) :
lista.append(input())
c = 0
for s in lista :
if len(s) >= 7 :
print(s)
1.0 para código correto e completo. 0.0 caso não tenha percorrido corretamente os elementos da lista ou
o tamanho comparado seja um número relativo às outras versões da prova. A critério do corretor, descontar
pontuação caso outros erros tenham sido encontrados.
Instituto de Computação Universidade Estadual de Campinas
Questão Nota
MC102—Algoritmos e Programação de Computadores 1
2
Prova I 3
Turmas K L M N 4 5 6 7 4
5
Primeiro Semestre de 2018 Total
Nome: RA:
Importante: As respostas deverão ser escritas nos espaços demarcados, opcionalmente a lápis. Não é per-
mitida a consulta a qualquer material, nem o uso de celulares ou outros dispositivos eletrônicos de comu-
nicação/computação. Não se esqueça de indentar corretamente os códigos solicitados. Boa prova!
1. (1 ponto) Maria e Marcos irão viajar e precisam escolher o destino da viagem. A filha deles, Carla, está muito
ansiosa para ir para a praia! O casal percebeu que, para a famı́lia poder viajar, as seguintes condições devem ser
atendidas:
O quadro a seguir apresenta uma série de cenários possı́veis. Preencha a coluna “Irão Viajar” com SIM ou
NÃO, indicando se para aquela determinada situação a famı́lia irá ou não viajar. Uma resposta errada, exceto se
deixada em branco, anula uma correta.
0.1 por linha da tabela. Uma resposta errada anula uma certa.
2. (1 ponto) Para cada um dos seguintes trechos de código, indique o que será exibido pelo programa:
0.1 por item no bloco superior e 0.2 por item no bloco inferior. Em itens que pedem a impressão de vários
valores, considerar apenas a pontuação se todos os itens estiverem corretos (pela facilidade de se chutar valores bo-
oleanos). Considerar metade do valor se não constar not c no quarto item ou se constarem strings não solicitadas,
mas valores corretos nos outros itens.
n = 12 - 7 * 2 n = 20 + 20 n = 19 // 6 n = 10**2
c = 9 < n c = 40 >= n c = 10 > n c = 10 > n
print(n) print(c) print(n, c) print("not c =", not c)
n = 15 + 12 n = 12341 % 2 n = 20 - 4 * 4
c1 = 30 > n c1 = 10 > n r1 = not not False
c2 = 50 > n c2 = 1 == n r2 = not (5 < n or n == 4)
r1 = c1 or c2 r1 = not c1 and c2 c1 = 100 < n or 20 > n and n > 10
r2 = c1 and c2 r2 = c1 or not c2 c2 = n > 0 or 23 <= n and monty python
print(c1, c2) print(c1, c2) print(n, r1, r2)
print(r1, r2) print(r1, r2) print(c1, c2)
3. (2 pontos) Maria recebeu a seguinte especificação: Codifique um programa em Python que leia dois números
inteiros do teclado, exibindo Maior se o primeiro número for maior que o segundo, Igual se ambos os números
forem iguais e Menor se o primeiro número for menor que o segundo. Veja o código de Maria e indique:
• uma entrada que ao ser digitada pelo usuário fará com que ∀ float ou str
a = int(input()) o programa apresente erro de execução.
b = int(input()) 0.2 caso apresente um float ou string.
if (a <= b):
print("Maior") • dois possı́veis valores a serem digitados pelo usuário que ∀ int x
elif (a >= b): farão com que o programa exiba na tela a palavra Igual.
print("Igual") 0.4 caso valores sejam coerentes. y<x
if (a == b):
print("Menor") • o que será impresso caso o usuário digite 25 e 25:
Maior Pontuar 0.4 apenas se a resposta
Menor incluir as duas strings
Reescreva o programa seguindo as especificações dadas e utilizando no máximo duas comparações.
a = int(input())
b = int(input())
if (a > b):
print("Maior")
elif (a == b):
print("Igual")
else:
print("Menor")
1.0 se a estrutura if-elif-else foi utilizada corretamente. A critério do corretor, descontar pontuação caso
outros erros tenham sido inseridos.
4. (3 pontos) Mário quer escrever um programa que imprime todos os números pares de 1 a 11, em
ordem decrescente, um por linha. A saı́da esperada por Mário está indicada na tabela ao lado. Ele 10
se lembra que em Python o uso do operador % retorna o resto da divisão de um número por outro. 8
Por exemplo, 5 % 2 resulta em 1. Mário escreveu o programa abaixo. O que será impresso quando o 6
código for executado? 4
2
n = 11 11
while (n > 1): 11
if (n % 2) == 1: 11
print(n) ...
Loop infinito
0.5 impressão de pelo menos um número 11 e indicação de loop infinito
Sem usar laços (for ou while), escreva um programa que produza a saı́da esperada por Mário utilizando
um único comando print.
print(“10\n8\n6\n4\n2”)
0.5 para sequência de números com \n. 0.2 para sequência de números sem \n. 0.0 caso tenha utilizado mais
de um comando print.
Escreva um programa que produza a saı́da espe- Considere que Mário quer imprimir os números
rada por Mário imprimindo um número a cada múltiplos de 3 de 11 a 22, em ordem crescente, um
iteração em um laço for. por linha. Escreva um programa que produza esta
saı́da imprimindo um número a cada iteração em
um laço while.
Dica: A função range() gera uma lista de números útil para iteração em laços do tipo for. Você pode usá-la
da seguinte forma: range(fim), range(inı́cio, fim) ou range(inı́cio, fim, passo), como exercitado
na tarefa de laboratório 04. Observe os exemplos:
0 1 3
1 2 2
5. (3 pontos) João codificou o programa abaixo. Mário, que é amigo de João, disse que o programa não iria
compilar, já que a lista declarada na linha 1 é composta por inteiros e strings. Apresente uma justificativa se você
concorda com Mário ou indique qual seria a saı́da do programa.
0
1. lista = [0, -1, "Pedro", "Maria"] -1
2. tamanho = len(lista) Pedro
3. for i in range(tamanho): Maria
4. print(lista[i])
0.6 para impressão dos elementos da lista, um elemento por linha. 0.3 para impressão dos elementos da lista,
um ao lado do outro. 0.0 para justificativa.
Mário escreveu uma variação do programa codificado por João. Indique o que será exibido na tela quando o
programa for executado.
0.6 para impressão de todos os elementos. Para nota parcial cada par 5 6 vale 0.2 e a palavra Fim 0.1. Desconto
de 50% se imprimiu os elementos um ao lado do outro.
Para os dois próximos itens, as caixas de resposta pequenas podem ter induzido as pessoas a não colocar
indentação. Sugiro considerar apenas o range.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números inteiros de 22 (inclusive)
a 39 (inclusive).
Linha 4 for i in range(22,40) :
0.4 para linha completa e range correto. 0.2 para limite superior = 39.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números ı́mpares de 29 (inclusive)
a 97 (inclusive).
Linha 4 for i in range(29,98,2) :
0.4 para linha completa e range correto. 0.2 para limite superior = 97. 0.0 se não apresentou passo 2.
O código abaixo lê uma lista com n nomes. Complete o programa para percorrer esta lista e imprimir quantos
nomes têm mais de 5 caracteres. Dica: a função len(s) retorna o número de caracteres da string s.
n = int(input())
lista = []
for i in range(n) :
lista.append(input())
c = 0
for s in lista :
if len(s) > 5 :
print(s)
1.0 para código correto e completo. 0.0 caso não tenha percorrido corretamente os elementos da lista ou
o tamanho comparado seja um número relativo às outras versões da prova. A critério do corretor, descontar
pontuação caso outros erros tenham sido encontrados.
Instituto de Computação Universidade Estadual de Campinas
Questão Nota
MC102—Algoritmos e Programação de Computadores 1
2
Prova I 3
Turmas K L M N 4 5 6 7 4
5
Primeiro Semestre de 2018 Total
Nome: RA:
Importante: As respostas deverão ser escritas nos espaços demarcados, opcionalmente a lápis. Não é per-
mitida a consulta a qualquer material, nem o uso de celulares ou outros dispositivos eletrônicos de comu-
nicação/computação. Não se esqueça de indentar corretamente os códigos solicitados. Boa prova!
1. (1 ponto) Maria e Marcos irão viajar e precisam escolher o destino da viagem. A filha deles, Carla, está muito
ansiosa para ir para a praia! O casal percebeu que, para a famı́lia poder viajar, as seguintes condições devem ser
atendidas:
O quadro a seguir apresenta uma série de cenários possı́veis. Preencha a coluna “Irão Viajar” com SIM ou
NÃO, indicando se para aquela determinada situação a famı́lia irá ou não viajar. Uma resposta errada, exceto se
deixada em branco, anula uma correta.
0.1 por linha da tabela. Uma resposta errada anula uma certa.
2. (1 ponto) Para cada um dos seguintes trechos de código, indique o que será exibido pelo programa:
0.1 por item no bloco superior e 0.2 por item no bloco inferior. Em itens que pedem a impressão de vários
valores, considerar apenas a pontuação se todos os itens estiverem corretos (pela facilidade de se chutar valores bo-
oleanos). Considerar metade do valor se não constar not c no quarto item ou se constarem strings não solicitadas,
mas valores corretos nos outros itens.
n = 32 + 6 % 2 n = 10 * 2 n = 11 // 7 n = 2**4
c = 19 <= n c = 30 <= n c = 0 > n c = 20 > n
print(n) print(c) print(n, c) print("not c =", not c)
n = 15 + 12 n = 12340 % 2 n = 24 - 2 * 0
c1 = 10 > n c1 = 10 > n r1 = not not not False
c2 = 45 > n c2 = 2 <= n r2 = not (30 < n or n == 24)
r1 = c1 or c2 r1 = not c1 and c2 c1 = 56 < n or 20 > n and n > 10
r2 = c1 and c2 r2 = c1 or not c2 c2 = n > 10 or 13 <= n and monty python
print(r1, r2) print(r1, r2) print(n, r1, r2)
print(c1, c2) print(c1, c2) print(c1, c2)
3. (2 pontos) Maria recebeu a seguinte especificação: Codifique um programa em Python que leia dois números
inteiros do teclado, exibindo Maior se o primeiro número for maior que o segundo, Igual se ambos os números
forem iguais e Menor se o primeiro número for menor que o segundo. Veja o código de Maria e indique:
• uma entrada que ao ser digitada pelo usuário fará com que ∀ float ou str
a = int(input()) o programa apresente erro de execução.
b = int(input()) 0.2 caso apresente um float ou string.
if (a >= b):
print("Maior") • dois possı́veis valores a serem digitados pelo usuário que ∀ int x
if (b > a): farão com que o programa exiba na tela a palavra Igual.
print("Igual") 0.4 caso valores sejam coerentes. y>x
elif (a == b):
print("Menor") • o que será impresso caso o usuário digite 35 e 35:
Maior Pontuar 0.4 apenas se a resposta
Igual incluir as duas strings
Reescreva o programa seguindo as especificações dadas e utilizando no máximo duas comparações.
a = int(input())
b = int(input())
if (a > b):
print("Maior")
elif (a == b):
print("Igual")
else:
print("Menor")
1.0 se a estrutura if-elif-else foi utilizada corretamente. A critério do corretor, descontar pontuação caso
outros erros tenham sido inseridos.
4. (3 pontos) Mário quer escrever um programa que imprime todos os números pares entre 1 e 11, um 2
por linha. A saı́da esperada por Mário está indicada na tabela ao lado. Ele se lembra que em Python 4
o uso do operador % retorna o resto da divisão de um número por outro. Por exemplo, 5 % 2 resulta 6
em 1. Mário escreveu o programa abaixo. O que será impresso quando o código for executado? 8
10
n = 1
1
while (n < 11):
1
if (n % 2) == 1:
1
print(n)
Loop infinito.
Sem usar laços (for ou while), escreva um programa que produza a saı́da esperada por Mário utilizando
um único comando print.
print(“2\n4\n6\n8\n10”)
0.5 para sequência de números com \n e 0.2 para sequência de números sem \n. 0.0 caso tenha utilizado mais
de um comando print.
Escreva um programa que produza a saı́da espe- Considere que Mário quer imprimir os números
rada por Mário imprimindo um número a cada múltiplos de 3 de 1 a 11, em ordem decrescente,
iteração em um laço for. um por linha. Escreva um programa que produza
esta saı́da imprimindo um número a cada iteração
em um laço while.
Dica: A função range() gera uma lista de números útil para iteração em laços do tipo for. Você pode usá-la
da seguinte forma: range(fim), range(inı́cio, fim) ou range(inı́cio, fim, passo), como exercitado
na tarefa de laboratório 04. Observe os exemplos:
0 1 3
1 2 2
5. (3 pontos) João codificou o programa abaixo. Mário, que é amigo de João, disse que o programa não iria
compilar, já que a lista declarada na linha 1 é composta por inteiros e strings. Apresente uma justificativa se você
concorda com Mário ou indique qual seria a saı́da do programa.
0
1. lista = [0, 2, "Maria", "José"] 2
2. tamanho = len(lista) Maria
3. for i in range(tamanho): José
4. print(lista[i])
0.6 para impressão dos elementos da lista, um elemento por linha. 0.3 para impressão dos elementos da lista,
um ao lado do outro. 0.0 para justificativa.
Mário escreveu uma variação do programa codificado por João. Indique o que será exibido na tela quando o
programa for executado.
0.6 para impressão de todos os elementos. Para nota parcial cada par 4 5 vale 0.2 e a palavra Fim 0.1. Desconto
de 50% se imprimiu os elementos um ao lado do outro.
Para os dois próximos itens, as caixas de resposta pequenas podem ter induzido as pessoas a não colocar
indentação. Sugiro considerar apenas o range.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números inteiros de 89 (inclusive)
a 100 (inclusive).
Linha 4 for i in range(89,101) :
0.4 para linha completa e range correto. 0.2 para limite superior = 100.
Reescreva a linha 4, de forma que o programa exiba em ordem crescente todos os números ı́mpares de 89 (inclusive)
a 99 (inclusive).
Linha 4 for i in range(89,99,2) :
0.4 para linha completa e range correto. 0.2 para limite superior = 56. 0.0 se não apresentou passo 2.
O código abaixo lê uma lista com n nomes. Complete o programa para percorrer esta lista e imprimir quantos
nomes têm menos de 6 caracteres. Dica: a função len(s) retorna o número de caracteres da string s.
n = int(input())
lista = []
for i in range(n) :
lista.append(input())
c = 0
for s in lista :
if len(s) < 6 :
print(s)
1.0 para código correto e completo. 0.0 caso não tenha percorrido corretamente os elementos da lista ou
o tamanho comparado seja um número relativo às outras versões da prova. A critério do corretor, descontar
pontuação caso outros erros tenham sido encontrados.