Buscar

Exercícios Programçã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

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

Universidade Federal do Rio de Janeiro - Polo Xerém 
Programação de Computadores I - Período 2018/1 
Professora: Camila Magalhães 
 
Aula de Exercícios 
 
Listas 
 
1. Faça um programa que preencha por leitura uma lista S com 20 números inteiros e: (i) 
imprima S; (ii) inverta o conteúdo de S, dentro da própria lista, sem usar listas auxiliares 
(exemplo abaixo); (iii) leia um número inteiro N1; (iv) 
Procure e imprima a posição da primeira ocorrência de N1 na lista S (ainda invertida). 
 
Exemplo: Inversão de S com 6 números 
S inicial: [2, 4, 5, 6, 9, 0] 
S invertido: [0, 9, 6, 5, 4, 2] 
 
2. Faça um programa para realizar reservas de passagens aéreas de uma empresa de aviação 
que possui apenas um único avião de 200 lugares. Para cada reserva, você precisará ler o 
número do CPF do passageiro e verificar o número de assentos disponíveis no avião. Se 
houver lugar, acomode o passageiro na primeira poltrona livre, armazenando nessa posição 
seu número de CPF. Se o voo estiver lotado, imprima uma mensagem informando o fato. O 
programa encerra com a leitura de um número de CPF negativo. Ao final do programa, 
informar a quantidade de lugares livres no avião e exibir os CPFs dos ocupantes do avião. 
 
3. Faça um programa que leia uma lista de n números reais (n fornecido pelo usuário) e 
determine os números que compõem a sequência e o número de vezes que cada um deles 
ocorre na mesma. 
Exemplo: n = 8 
Lista: -1.7, 3.0, 0.0, 1.5, 0.0, -1.7, 2.3, -1.7 
Saída: -1.7 ocorre 3 vezes 
 3.0 ocorre 1 vez 
 0.0 ocorre 2 vezes 
 1.5 ocorre 1 vez 
 2.3 ocorre 1 vez 
 
4. Faça um programa em Python que leia um número inteiro positivo fornecido pelo usuário 
e mostre o seu correspondente em binário. OBS.: A conversão de decimal para binário pode 
ser feita através de divisões sucessivas por 2, até que o resultado da divisão seja zero. O 
número binário correspondente será formado pelo resto de todas as divisões efetuadas, do 
último para o primeiro. 
Exemplo: 
Número lido: 156 
Número em binário: 10011100 
 
 
 
Matrizes 
 
5. Escreva um programa que leia os elementos inteiros de uma matriz M x N (M, N e os 
elementos devem ser informados pelo usuário), após a leitura, para cada linha da matriz, 
verificar e informar quantos elementos da linha são maiores do que o valor do elemento 
daquela linha que pertence à diagonal principal; 
 
Exemplo: M=3 e N=3 
 
Matriz lida: 
 
2 3 4 
1 3 4 
6 7 4 
 
Saída do programa (usar o formato abaixo): 
 
Linha 0: 2 elemento(s) maior(es) 
Linha 1: 1 elemento(s) maior(es) 
Linha 2: 2 elemento(s) maior(es) 
 
6. Uma pista de Kart permite 10 voltas para cada um de 6 corredores. Faça um programa que 
leia os nomes e os tempos (em segundos) de cada volta de cada corredor e guarde as 
informações em uma matriz. Ao final, o programa deve informar: 
a. De quem foi a melhor volta da prova, e em que volta 
b. Classificação final em ordem (1º. o campeão) 
c. Qual foi a volta com a média mais rápida 
 
7. Faça um programa que peça ao usuário para informar a quantidade de funcionários que 
uma empresa possui (N, fornecido pelo usuário). Em seguida, o programa deve armazenar 
em uma matriz os dados dos funcionários da empresa, como no exemplo abaixo (apenas um 
exemplo para N=3): 
 
[ ['Jose Costa', '112345', 'Contabilidade', '7', '217865-0987'] 
['Carla Saldanha Peixoto', '378091', 'Recursos Humanos', '21', '229876-1235'] 
['Josiane Oliveira', '678921', 'Contabilidade', '2', '219723-4561'] ] 
 
Cada linha da matriz possui 5 dados, referentes ao nome, número de registro, setor, tempo 
de admissão na empresa (em anos) e telefone de um funcionário, nesta ordem. Todos os 
dados da matriz devem ser armazenados em formato string. Após a leitura da matriz, o 
programa deve realizar sequencialmente as operações pedidas abaixo, na ordem em que são 
pedidas: 
 
 (i) Exibir na tela o nome do funcionário que trabalha há menos tempo na empresa. Na 
matriz do exemplo acima, a saída do programa seria: 'Josiane Oliveira'. 
 
(ii) Fazer uma busca por setor, ou seja, deve pedir ao usuário para informar o nome do setor 
que deseja buscar e em seguida apresentar todos os dados de todos os funcionários daquele 
setor. Se nenhum registro for encontrado o programa deverá exibir na tela a mensagem 
'Nenhum registro encontrado'. 
 
8. Um tabuleiro de xadrez pode ser visto como uma matriz 8x8 onde cada elemento da 
matriz (número inteiro de 0 a 6) corresponde à uma determinada peça de xadrez posicionada 
no tabuleiro. Para a indicação das peças, vamos convencionar: 1= PEÕES, 2=CAVALOS, 
3=TORRES, 4=BISPOS, 5=REIS, 6=RAINHAS e 0=AUSÊNCIA DE PEÇAS. 
 Faça um programa que faça a leitura de um tabuleiro (matriz 8x8) e determine 
quantas peças de cada um dos tipos acima existem no tabuleiro. 
Exemplo de saída: 
 
PEÕES com 17 peças 
CAVALOS com 6 peças 
 ... ... 
 
Strings 
 
9. Faça um programa que leia um conjunto de 30 nomes completos de pessoas. Após a 
leitura o programa deve exibir cada nome no formato: "Sobrenome, iniciais do primeiro 
nome" (como nos exemplos abaixo). 
Exemplo: 
Nome: Joaquim José de Oliveira Saída do programa: Oliveira, JJd 
Nome: Marcela Oliveira Dutra Carvalho Saída do programa: Carvalho, MOD 
 
 
10. Faça um programa que leia uma sequência de resíduos de aminoácidos de uma 
determinada proteína e armazene o número de repetições de cada aminoácido diferente. 
Imprima um histograma para a frequência de cada aminoácido. A sequência pode ser 
digitada em maiúsculas ou minúsculas. Por exemplo, a string 
“MAAGGASGAEASAPPTPSMASSLPLAALNV” deve retornar: 
 
M - ** 
A - ********* 
G - *** 
S - ***** 
E - * 
P - **** 
T - * 
L - *** 
N - * 
V - * 
 
11. Um pangrama é uma sentença com sentido e que contém todas as letras do alfabeto, por 
exemplo: 
 Jane quer LP, fax, CD, giz, TV e bom whisky. (30 letras) 
 Zebras caolhas de Java querem passar fax para moças gigantes de New York. (60 
letras) 
 
Faça um programa que leia uma sentença e imprima se ela é um pangrama ou não. Assuma 
que a frase digitada pelo usuário possui sentido. 
 
12. Faça um programa que leia uma lista de valores de qualquer tipo e exiba ao final uma 
string com o conteúdo da lista lida separado por vírgula e espaço. Exemplo: Se a lista lida 
for ["A", "B", 1, 3, "%", 1.4], a string a ser exibida será "A, B, 1, 3, %, 1.4". Observe que 
após o último elemento não há vírgula e nem espaço. 
 
13. (Fazer no caderno primeiro e depois conferir no Python) Dado o programa abaixo: 
 
frase = input ("Digite uma frase: ") 
a = eval(input("Digite um número inteiro: ")) 
while a < len(frase) and frase[a] != ' ': 
 a += 1 
print(a) 
 
Qual será o valor a ser impresso na tela, caso sejam digitados os valores abaixo para as 
variáveis frase e a, respectivamente (apenas para o item 1, escreva um passo a passo da 
execução do programa, justificando a sua resposta): 
 
1. "But are we all lost stars trying to light up the dark?", 0 
2. "O que a vida quer da gente é coragem", 13 
3. "Eu quase que nada não sei. Mas desconfio de muita coisa...", 5

Continue navegando