Buscar

2016.1 Primeira Prova de Computação I

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

Prévia do material em texto

P1 - Computação I 
Allan Goulart 
03 de Junho de 2016 
A prova é individual e sem consulta. Responda as questões na folha de respostas a lápis. Se 
tiver qualquer dúvida consulte o professor. Coloque comentários no seu código explicando o 
que sua função faz. Escolha nomes elucidativos para suas funções, parâmetros e variáveis. 
Atenção com o retorno da sua função. 
 
Nome:___________________________________________________________DRE:__________ 
1º Questão: (2,5 pontos) 
Faça uma função que receba uma string no formato: “nome+espaço+sobrenome”, como por 
exemplo: “ALLAN GOULART” ou “josé silva”. Ela deve retornar outra string em que apenas a 
primeira letra do nome e do sobrenome fique maiúscula e o restante minúsculo. 
Exemplos: “ALLAN GOULART”  “Allan Goulart”. “josé silva”  “José Silva”. 
 
2º Questão: (2,5 pontos) 
 
a) (1,5 ponto) Faça uma função que recebe 3 números a, b e c como parâmetros. Ela deve 
retornar uma tupla com 2 elementos. O primeiro elemento será o maior dentre os 3 
números e o segundo a média aritmética de a, b e c. Sua função receberá apenas números e 
deverá usar apenas condicional. Não se preocupe em validar os parâmetros. 
b) (1,0 ponto) Faça uma função com os mesmos parâmetros da questão a, mas o retorno será 
uma tupla com 3 elementos, sendo o primeiro o maior número, o segundo o menor e o 
terceiro a média aritmética de a, b e c. Utilize listas e suas funções para descobrir esses 
valores. 
 
3º Questão: (2,5 pontos) 
 
Leia o código abaixo e responda: 
def funcao_auxiliar(a,b): 
 return (a+b,a-b,a%b) 
 
def func(d,a=2,b=3): 
 a = funcao_auxiliar(a,b)(0) 
 b = funcao_auxiliar(a,b)(1) 
 a = funcao_auxiliar(a,b)(1) 
 c = funcao_auxiliar(a,b)(2) 
 d += funcao_auxiliar(a,b)(0) 
 return (a,b,c,d) 
 
print func(0) 
 
Ocorrerá algum erro ao rodar o código? Se sim, justifique sua resposta, corrija o código e diga o 
que ele irá imprimir. Se não apenas diga o que será impresso. 
4º Questão: (2,5 pontos) 
 
Faça uma função que receba 3 números a,b e c representando lados de um possível triângulo. 
Sua função deverá retornar uma string informando se os lados passados podem formar um 
triângulo ou não. Para que a, b e c formem um triângulo é necessário que as seguintes 
condições sejam satisfeitas: 
|b – c | < a < b+c 
|a – c | < b < a+c 
| a –b | < c < a+b 
 
Crie uma função auxiliar para calcular o valor absoluto de uma variável x, necessária para 
verificar as condições acima. 
 
BONUS (2,0 pontos extras): 
 
Joãozinho irá realizar um dos seus sonhos e viajará para a Disney. O problema é que ele não 
sabe muito bem inglês e pediu para você, seu melhor amigo e um aluno muito bom de 
computação, uma ajuda para conseguir se comunicar lá. Ele precisa que você dê a tradução do 
português para o inglês e vice-versa de algumas palavras. Ficou combinado que você traduziria 
as seguintes palavras em português: “Oi”, “Obrigado”, “Por favor” e “Legal”. As palavras “Hello”, 
“Thank you”, “Please” e ”Cool” são as correspondentes em inglês. Caso ele tente traduzir uma 
palavra diferente dessas, você deve informar “Nao sei traduzir”. 
 
OBS: NÃO serão admitidas soluções com condicionais para cada palavra. Você deverá usar 
condicional apenas para um grupo de palavras. 
 
Entrada 
A sua função receberá apenas um parâmetro que é a palavra a ser traduzida. Ela pode ser tanto 
em inglês quanto em português. 
 
Saída 
 
Sua função deve retornar a correspondente tradução da palavra passada. Caso a palavra não 
seja uma das 8 palavras, retornar “Não sei traduzir”. 
 
Exemplos 
Por favor  Please 
Cool  Legal 
Fantastico  Nao sei traduzir 
 
 
 
 
BOA PROVA!

Outros materiais