Buscar

APRENDA PYTHON VOL 5

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 15 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 15 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 15 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

APRENDA PYTHON VOL 5 – VETORES E STRINGS 
INSTITUTO DE COMPUTAÇÃO – ICOMP – UFAM 
Exercícios resolvidos de Linguagem Python. 
Cardoso, A. K. S. 
 
 
1 - VETOR DE UNS 
Escreva um programa que leia um número inteiro N, positivo, este número N 
será relativo a quantidade de posições de um vetor que será criado. Em 
seguida, crie e imprima um vetor de N posições, todas preenchidas com o 
valor 1 (um), do tipo inteiro. 
 
Dicas 
1. Como os elementos do vetor devem ser inteiros, os "uns" não 
podem estar seguidos de ponto; 
2. Use a função ones(), do módulo numpy, bem como sua 
opção dtype=int. 
 
 
2 - INFORMAÇÕES BÁSICAS DE UM VETOR 
Escreva um programa que leia um vetor digitado pelo usuário. O vetor não 
deve ter valores repetidos. Em seguida, o programa deverá imprimir as 
seguintes informações sobre o vetor, necessariamente na ordem indicada: 
1. Valor do primeiro elemento do vetor 
2. Valor do último elemento do vetor 
3. Número de elementos do vetor 
4. Maior elemento do vetor 
5. Índice do maior elemento do vetor 
6. Menor elemento do vetor 
7. Índice do menor elemento do vetor 
8. Soma dos elementos do vetor 
9. Média aritmética dos elementos do vetor (com duas casas decimais de 
precisão). 
Dicas 
1. Use as funções size(), max(), min() e sum(), da biblioteca numpy. 
2. Use a função round(x, n), nativa da linguagem Python, para fazer 
arredondamento do número x com até n casas decimais de precisão. 
3. Na entrada de dados, os elementos do vetor devem estar separados por 
vírgula. O uso de colchetes é opcional. 
4. Para a entrada [20, 10, 50, 40, 30], a saída deverá ser a seguinte: 20 30 
5 50 2 10 1 150 30.0, indicando que: 
• 20 é o primeiro elemento do vetor. 
• 30 é o último elemento do vetor. 
• O vetor tem 5 elementos. 
• O maior elemento do vetor é 50 e seu índice é 2. 
• O menor elemento do vetor é 10 e seu índice é 1. 
• A soma de todos os elementos do vetor é 150. 
• A média aritmética dos elementos do vetor vale 30.0. 
 
3 - CALORIAS EM UM PRATO 
A tabela a seguir mostra a quantidade de calorias de cada alimento, por grama. 
Alimento kcal/grama 
BANANA 0.97 
BIFE 2.95 
FEIJOADA 1.27 
OMELETE 1.04 
TOMATE 0.2 
Faça um programa que tenha como entrada: 
1. Um vetor de nomes de alimentos em um prato (em maiúsculas e 
conforme tabela acima); 
2. Um vetor de quantidades (em gramas) dos alimentos especificados no 
vetor anterior, ou seja, o primeiro elemento indica a quantidade do 
primeiro alimento, e assim por diante. 
Como saída, seu programa deverá imprimir o total de calorias no prato (em 
kcal), com até duas casas decimais de precisão. 
 
Dicas 
1. Verifique se as variáveis associadas ao problema são reais ou inteiras. 
2. Use a função round(x, n) para arredondar o valor x com até n casas 
decimais. 
3. Atenção para o uso de caracteres MAIÚSCULOS. Não use acentos. 
4. Lembre-se de utilizar o comando de importação, import. 
5. Assim como nos exemplos fornecidos, não utilize espaços entre os itens 
do vetor de entrada. 
 
4 - DANOS DE UM EXÉRCITO DE COMBATENTES 
O Rei Gardoc criou um exército de combatentes para enfrentar a terrível 
Quimera. Cada combatente tem uma espada e o dano total que ele é capaz de 
gerar é dado pela fórmula: 
dano_do_combatente = dano_da_espada⋅nível_do_combatente 
O dano da espada vem da seguinte tabela: 
Tipo de 
Espada Dano (pontos de força/nível) 
CENOURA 2 
FERRO 4 
DWARVEN 8 
ELVEN 11 
DAEDRIC 14 
Faça um programa que leia, nesta ordem: 
1. Um vetor de strings, em que o i-ésimo elemento indica o tipo de 
espada do i-ésimo combatente; 
2. Um vetor de inteiros, em que o i-ésimo elemento indica o nível do i-
ésimo combatente; 
Como saída, determine o dano total (em pontos de força) que o exército é 
capaz de causar. 
Dicas 
1. O resultado deve ser um número inteiro. 
2. Use apenas caracteres MAIÚSCULOS. Não use acentos. 
3. Lembre-se de utilizar o comando de importação, import. 
4. Assim como nos exemplos fornecidos, não utilize espaços entre os itens 
do vetor de entrada. 
Observe os dois exemplos adicionais a seguir: 
Entradas de exemplo: 
["FERRO","DWARVEN","ELVEN"] 
[3,7,9] 
Saída de exemplo: 
167 
Entradas de exemplo: 
["CENOURA","DWARVEN","ELVEN","FERRO"] 
[2,5,6,3] 
Saída de exemplo: 
122 
 
5 - OPERAÇÕES BÁSICAS ENVOLVENDO STRINGS 
Escreva um programa que leia uma string digitada pelo usuário. Em seguida, 
imprima as seguintes informações sobre a string, nesta ordem: 
1. Primeiro caractere da string; 
2. Último caractere da string; 
3. Quantidade de caracteres da string; 
4. Toda a string em caracteres minúsculos; 
5. Toda a string em caracteres maiúsculos; 
6. Impressão de 500 cópias da string. 
 
Dicas 
1. Use as funções e métodos que operam sobre 
strings: len(), upper() e lower(); 
2. Use os operadores de concatenação (+) e replicação (*) de strings. 
 
 
6 - DATA POR EXTENSO 
Escreva um programa que leia do teclado uma data no formato “ddmmaaaa” e 
imprima essa data por extenso (suponha valores sempre válidos). 
Dicas 
Exemplo (não exaustivo) com a data de fundação da UFAM: 
Entrada: 17011909 
Saída: 17 de janeiro de 1909 
 
 
7 - TOTAL DE COMPRAS 
A tabela a seguir mostra o nome e o valor dos produtos vendidos no 
supermercado Super Duper Mart. 
Produto Custo (R$) 
ARROZ 1.25 
FEIJAO 2.60 
BIS 1.80 
MIOJO 0.85 
FANTA 3.20 
Faça um programa que tenha como entrada: 
1. Um vetor de nomes de produtos que o cliente está comprando (em 
maiúsculas e conforme tabela acima); 
2. Um vetor de quantidades (inteiro) dos produtos especificados no vetor 
anterior, ou seja, o primeiro elemento indica a quantidade do primeiro 
produto, e assim por diante. 
Como saída, seu programa deverá imprimir o total da conta do cliente (em 
R$), com duas casas decimais de precisão. 
Dicas 
1. Verifique se as variáveis associadas ao problema são reais ou inteiras. 
2. Use a função round(x, n) para arredondar o valor x com até n casas 
decimais. 
3. Atenção para o uso de caracteres MAIÚSCULOS. Não use acentos. 
4. Lembre-se de utilizar o comando de importação, import. 
5. Assim como nos exemplos fornecidos, não utilize espaços entre os itens 
do vetor de entrada. 
 
8 - TIRO AO ALVO MULTIPLICADO 
Em uma competição de tiro ao alvo, o alvo é dividido em quatro anéis conforme 
figura a figura abaixo: 
 
Todo competidor começa com 200.0 pontos. Quando um competidor acerta 
um anel, a pontuação dele muda conforme a seguir: 
• Anel 1: a pontuação dele é multiplicada por 4; 
• Anel 2: a pontuação dele é multiplicada por 2; 
• Anel 3: a pontuação dele é permanece como está; 
• Anel 4: a pontuação dele é dividida por 2; 
Faça um programa que tenha como entrada um vetor de números indicando 
os anéis acertados pelo jogador. Seu programa deverá imprimir a pontuação 
total do jogador, com duas casas decimais. 
Dicas 
1. Verifique se as variáveis associadas ao problema são reais ou inteiras. 
2. Use a função round(x, n) para arredondar o valor x com até n casas 
decimais. 
3. Use uma variável acumuladora para computar a pontuação do jogador. 
4. Inicie a pontuação do competidor como o valor real 200.0 
 
 
9 - CONTANDO VOGAIS E CONSOANTES 
Escreva um programa que leia uma string digitada pelo usuário. Em seguida, 
imprima a quantidade de vogais e de consoantes. 
Dicas 
1. Use as os comandos upper() ou lower() para padronizar a string e evitar 
mais de uma comparação para a mesma vogal/consoante; 
2. Considere que a string de entrada não possui espaços, símbolos de 
pontuação, acentos e nem cedilha; 
3. Use o comando count() para contar um determinado caracter em uma 
string. 
 
10 - LÍNGUA DO P MODIFICADA 
A língua do P é uma cifra fonética, geralmente utilizada por 
crianças, acrescentando a letra P antes de cada sílaba, como uma forma de 
código para dificultar que outras pessoas entendam a conversa. 
Genoveva decidiu criar sua própria língua do P, substituindotodas as 
consoantes de uma palavra por P. Desta forma, a frase gosto de pudim se 
transforma em poppo pe pupip. 
Escreva um programa que leia uma string digitada pelo usuário. Em 
seguida, aplique as regras da língua do P de Genoveva. A string de saída 
deverá deverá conter apenas caracteres minúsculos. 
Dicas 
1. Use o método s.lower() para deixar a string s com caracteres 
minúsculos. 
2. Use o método s.replace('c1', 'c2') para substituir, em toda a string s, as 
ocorrências do caractere c1 pelo caractere c2. 
 
 
 
11 - DISTÂNCIA EUCLIDIANA 
A distância Euclidiana d entre os pontos P = (p1, p2, …, pn) e Q = (q1, q2, …, 
qn) é definida como: 
d(P,Q)=√ (p1−q1)2+(p2−q2)²+...+(pn−qn)² 
 
Escreva um programa que leia dois vetores P e Q. Como saída, imprima a 
distância euclidiana d(P, Q) com até quatro casas decimais de precisão. 
 
 
Dicas 
1. Use a função eval() para ler os vetores. 
2. Use a função round(x, n) para arredondar um número x com 
até n casas decimais de precisão.

Continue navegando