Prévia do material em texto
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 1/20
1.1. Escreva um programa que armazene em um vetor todos os números inteiros de 200 a 100
(em ordem decrescente). Após isso, o programa deve imprimir todos os valores armazenados.
import numpy as np
A = []
i = 200
while i >= 100:
A.append(i)
i -= 1
print(f'Números inteiros do vetor em ordem decrescente : {A}')
Números inteiros do vetor em ordem decrescente : [200, 199, 198, 197, 196, 195, 194,
1.2. Escreva um programa que armazene em um vetor todos os números múltiplos de 5, no
intervalo fechado de 1 a 500. Após isso, o programa deve imprimir todos os valores
armazenados.
vetor2 = []
for c in range(1, 501):
if (c % 5 == 0):
vetor2.append(c)
print(f'Os múltiplos de 5 no intervalo de 1 á 500 são : {vetor2}')
Os múltiplos de 5 no intervalo de 1 á 500 são : [5, 10, 15, 20, 25, 30, 35, 40, 45, 5
1.3. Escreva um programa que armazene em um vetor o quadrado dos números ímpares no
intervalo fechado de 1 a 20. Após isso, o programa deve imprimir todos os valores
armazenados.
vetor3 = []
print('O quadrado dos números ímpares no intervalo de 1 á 20 são:')
for i in range(0, 21):
if (i % 2 != 0):
vetor3.append(i**2)
print(vetor3)
O quadrado dos números ímpares no intervalo de 1 á 20 são:
[1, 9, 25, 49, 81, 121, 169, 225, 289, 361]
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 2/20
1.4. Escreva um programa que receba a altura de 10 atletas. Esse programa deve imprimir a
altura daqueles atletas que tem altura maior que a média.
tam4 = 10
vetor4 = [0.0] * tam4
soma = 0
for i in range(tam4):
vetor4[i]= float(input(f'Altura do {i+1}° atleta = '))
soma += vetor4[i]
media= (soma/tam4)
for i in range(tam4):
if vetor4[i] > media:
print(f'O {i+1}° atleta possui altura: ', end='')
print(vetor4[i], end=' ')
print('maior que a média %.2f'%media)
Altura do 1° atleta = 1.65
Altura do 2° atleta = 1.64
Altura do 3° atleta = 1.59
Altura do 4° atleta = 1.70
Altura do 5° atleta = 1.81
Altura do 6° atleta = 1.69
Altura do 7° atleta = 1.59
Altura do 8° atleta = 1.49
Altura do 9° atleta = 1.67
Altura do 10° atleta = 1.57
O 1° atleta possui altura: 1.65 maior que a média 1.64
O 4° atleta possui altura: 1.7 maior que a média 1.64
O 5° atleta possui altura: 1.81 maior que a média 1.64
O 6° atleta possui altura: 1.69 maior que a média 1.64
O 9° atleta possui altura: 1.67 maior que a média 1.64
1.5. A série de Fibonacci é formada pela seqüência: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... Escreva um
programa que armazene em um vetor os 50 primeiros termos da série de FIBONACCI. Após
isso, o programa deve imprimir todos os valores armazenados.
posi1 = 1
posi2 = 1
atual = 0
vetor5 = []
for i in range(0, 50):
if i > 1:
atual = posi1 + posi2
vetor5.append(atual)
posi2 = posi1
posi1 = atual
else:
vetor5.append(posi1)
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 3/20
print(vetor5)
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 676
1.6. Implementar um programa para calcular o sen(X). O valor de X deverá ser digitado em
graus. O valor do seno de X será calculado pela soma dos 15 primeiros termos da série a seguir:
Os termos da série devem ser armazenados em um vetor
import math
sn = 0
x = float(input("Informe o valor de X° = "))
x = (math.pi * x)/ 180
vetor6 = []
for i in range(0, 15):
fat = 1
for j in range(1, 2*i - 1):
fat = fat* j
# Termos Pares:
if (i % 2 == 0):
sn = sn - (x**(2* i-1))/fat
vetor6.append(-(x**(2* i-1))/fat)
# Termos impares:
else:
sn = sn + (x**(2** i-1))/fat
vetor6.append(+(x**(2** i-1))/fat)
print('Sen(%d°) = %.3f' %(x*180/math.pi, sn))
Informe o valor de X° = 45
Sen(45°) = -0.723
1.7. Em uma cidade do interior, sabe-se que, de janeiro a abril de 1976 (121 dias), não ocorreu
temperatura inferior a 15ºC nem superior a 40ºC. As temperaturas veri�cadas em cada dia
estão disponíveis em uma unidade de entrada de dados. Fazer um programa que calcule e
imprima:
A menor temperatura ocorrida;
A maior temperatura ocorrida;
A temperatura média;
O número de dias nos quais a temperatura foi inferior à temperatura média.
import random
vetor7 = [random.randint(15, 40) for p in range(0, 121)]
menort = 0
maiort = 0
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 4/20
ndias = 0
somat = 0
print('Temperaturas registradas : ')
for c in range(0, 121):
print(f'Temperatura do {c+1}° dia = {vetor7[c]}°C')
if (vetor7[c] < menort) or (c == 0):
menort = vetor7[c]
if (vetor7[c] > maiort) or (c == 0):
maiort = vetor7[c]
somat += vetor7[c]
mediat = somat / 121
for c in range(0, 121):
if (vetor7[c] < mediat):
ndias += 1
print('\n')
print(f"A menor temperatura ocorrida foi = {menort} °C")
print(f"A maior temperatura ocorrida foi = {maiort} °C")
print("A temperatura média = %.2f °C" %mediat)
print(f"N° de dia em que a temperatura foi menor que a média = {ndias} dias")
Temperaturas registradas :
Temperatura do 1° dia = 27°C
Temperatura do 2° dia = 26°C
Temperatura do 3° dia = 23°C
Temperatura do 4° dia = 16°C
Temperatura do 5° dia = 29°C
Temperatura do 6° dia = 22°C
Temperatura do 7° dia = 32°C
Temperatura do 8° dia = 33°C
Temperatura do 9° dia = 29°C
Temperatura do 10° dia = 30°C
Temperatura do 11° dia = 20°C
Temperatura do 12° dia = 30°C
Temperatura do 13° dia = 17°C
Temperatura do 14° dia = 24°C
Temperatura do 15° dia = 24°C
Temperatura do 16° dia = 18°C
Temperatura do 17° dia = 18°C
Temperatura do 18° dia = 38°C
Temperatura do 19° dia = 17°C
Temperatura do 20° dia = 26°C
Temperatura do 21° dia = 38°C
Temperatura do 22° dia = 29°C
Temperatura do 23° dia = 35°C
Temperatura do 24° dia = 19°C
Temperatura do 25° dia = 15°C
Temperatura do 26° dia = 28°C
Temperatura do 27° dia = 22°C
Temperatura do 28° dia = 25°C
Temperatura do 29° dia = 21°C
Temperatura do 30° dia = 26°C
Temperatura do 31° dia = 19°C
Temperatura do 32° dia = 22°C
Temperatura do 33° dia = 27°C
Temperatura do 34° dia = 34°C
Temperatura do 35° dia = 26°C
Temperatura do 36° dia = 34°C
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 5/20
Temperatura do 37° dia = 39°C
Temperatura do 38° dia = 38°C
Temperatura do 39° dia = 31°C
Temperatura do 40° dia = 37°C
Temperatura do 41° dia = 39°C
Temperatura do 42° dia = 17°C
Temperatura do 43° dia = 15°C
Temperatura do 44° dia = 26°C
Temperatura do 45° dia = 25°C
Temperatura do 46° dia = 24°C
Temperatura do 47° dia = 21°C
Temperatura do 48° dia = 21°C
Temperatura do 49° dia = 25°C
Temperatura do 50° dia = 22°C
Temperatura do 51° dia = 27°C
Temperatura do 52° dia = 21°C
Temperatura do 53° dia = 28°C
Temperatura do 54° dia = 31°C
Temperatura do 55° dia = 16°C
Temperatura do 56° dia = 20°C
Temperatura do 57° dia = 40°C
1.8. Fazer um programa que: a) Leia o valor inteiro de n (n <= 1000) e os n valores de uma
variável composta A de valores numéricos, ordenados de forma crescente; b) Determine e
imprima, para cada número que se repete no conjunto, a quantidade de vezes em que ele
aparece repetido; c) Elimine os elementos repetidos, formando um novo conjunto; d) Imprima o
conjunto obtido no item c.
import random
vetor_o8 = []
vetorn8 = []
#Lendo n aleatóriamente no intervalo de 1 a 20:
n8 = random.randint(1,1000)
print(f'O valor de n = {n8}')
print('\n')
# Lendo os N valores de n, restingindo a variávelcomposta no intervalo de 1 á 100:
vetor8 = [random.randint(1, 100) for p in range(0, n8)]
print(f'Intervalo de {n8} valores:')
print(vetor8)
print('\n')
print(f'Intervalo em ordem crescente :')
# ordenando o vetor (crescente):
for c in range(0, n8):
if (c == 0) or (vetor8[c] > vetor_o8[-1]):
vetor_o8.append(vetor8[c])
else:
pos =0
while pos < n8:
if (vetor8[c]) <= (vetor_o8[pos]):
vetor_o8.insert(pos, vetor8[c])
break
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 6/20
pos += 1
print(vetor_o8)
# Quantidade de repetições:
print('\n')
print('Repetições de cada número:')
nvezes = 1
for c in range (0, n8-1):
if (vetor_o8[c] == vetor_o8[c+1]) or (vetor_o8[c] == vetor_o8[-1]):
nvezes += 1
if (c == len(vetor_o8)-2) and (nvezes > 1):
print(f' O numero {vetor_o8[c]} se repete {nvezes} vezes.')
if nvezes == 1 :
vetorn8.append(vetor_o8[c])
else:
if nvezes > 1:
print(f' O numero {vetor_o8[c]} se repete {nvezes} vezes.')
nvezes = 1
if nvezes == 1 :
vetorn8.append(vetor_o8[c])
vetorn8.append(vetor_o8[-1])
print('\n')
print('O vetor sem números repetidos é :')
print(vetorn8)
O valor de n = 17
Intervalo de 17 valores:
[97, 51, 4, 60, 18, 92, 14, 46, 63, 29, 13, 13, 8, 70, 81, 22, 86]
Intervalo em ordem crescente :
[4, 8, 13, 13, 14, 18, 22, 29, 46, 51, 60, 63, 70, 81, 86, 92, 97]
Repetições de cada número:
O numero 13 se repete 2 vezes.
O vetor sem números repetidos é :
[4, 8, 13, 14, 18, 22, 29, 46, 51, 60, 63, 70, 81, 86, 92, 97]
1.9. Dado um conjunto de 100 valores numéricos disponíveis num meio de entrada qualquer,
fazer um algoritmo em para armazená-los numa variável composta B, e calcular e imprimir o
valor do somatório dado a seguir:
import random
# Restingindo o conjunto de 100 números no intervalo de 1 a 100:
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 7/20
vetor9 = [random.randint(0, 100) for p in range(0, 100)]
soma = 0
print('O conjunto de valores é : ')
print(vetor9)
for c in range(0, 50):
soma += ((vetor9[c]-vetor9[-(c+1)])**3)
print(f"O valor do somatório é = {soma}")
O conjunto de valores é :
[32, 58, 73, 94, 77, 59, 65, 34, 36, 89, 31, 58, 56, 70, 6, 30, 43, 7, 31, 64, 65, 62
O valor do somatório é = 13007
1.10. Um armazém trabalha com 100 mercadorias diferentes identi�cadas pelos números
inteiros de 1 a 100. O dono do armazém anota a quantidade de cada mercadoria vendida
durante o mês. Ele tem uma tabela que indica, para cada mercadoria, o preço de venda. Escreva
um programa para calcular o faturamento mensal do armazém. A tabela de preços é fornecida
seguida pelos números das mercadorias e as quantidades vendidas. Quando uma mercadoria
não tiver nenhuma venda, é informado o valor zero no lugar da quantidade.
import random
faturamento = 0
#Supondo que para todas as mercadorias que ele tem o menor valor seja R$ 0,50 e maior R$ 3
preco = [random.uniform(0.5, 300.00) for p in range(0, 100)]
#Supondo que para todas as quantidades vendidas que ele tem o menor valor seja 0 e maior 5
quantidade = [random.randint(0, 50) for p in range(0, 100)]
print('---'*9)
print('Preço de cada mercadoria:')
print('---'*9)
for c in range(0, 100):
print(f'Preço da mercadoria de N° {c+1} = R$ %.2f' %preco[c])
print('\n')
print('---'*12)
print('Quantidade vendida de cada mercadoria:')
print('---'*12)
for c in range(0, 100):
print(f'Qtd. da mercadoria de N° {c+1} = {quantidade[c]}', 'Und.')
faturamento += quantidade[c] * preco[c]
print('\n')
print('---'*13)
print("O faturamento mensal = %.2f reais" %faturamento)
print('---'*13)
---------------------------
Preço de cada mercadoria:
---------------------------
Preço da mercadoria de N° 1 = R$ 95.72
Preço da mercadoria de N° 2 = R$ 195.37
Preço da mercadoria de N° 3 = R$ 166.66
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 8/20
Preço da mercadoria de N° 4 = R$ 190.69
Preço da mercadoria de N° 5 = R$ 40.38
Preço da mercadoria de N° 6 = R$ 102.07
Preço da mercadoria de N° 7 = R$ 146.56
Preço da mercadoria de N° 8 = R$ 175.22
Preço da mercadoria de N° 9 = R$ 227.99
Preço da mercadoria de N° 10 = R$ 222.52
Preço da mercadoria de N° 11 = R$ 206.61
Preço da mercadoria de N° 12 = R$ 73.75
Preço da mercadoria de N° 13 = R$ 158.09
Preço da mercadoria de N° 14 = R$ 97.47
Preço da mercadoria de N° 15 = R$ 242.43
Preço da mercadoria de N° 16 = R$ 158.84
Preço da mercadoria de N° 17 = R$ 224.73
Preço da mercadoria de N° 18 = R$ 251.43
Preço da mercadoria de N° 19 = R$ 80.51
Preço da mercadoria de N° 20 = R$ 29.26
Preço da mercadoria de N° 21 = R$ 297.02
Preço da mercadoria de N° 22 = R$ 23.35
Preço da mercadoria de N° 23 = R$ 295.09
Preço da mercadoria de N° 24 = R$ 220.86
Preço da mercadoria de N° 25 = R$ 51.45
Preço da mercadoria de N° 26 = R$ 86.62
Preço da mercadoria de N° 27 = R$ 166.55
Preço da mercadoria de N° 28 = R$ 256.52
Preço da mercadoria de N° 29 = R$ 198.03
Preço da mercadoria de N° 30 = R$ 123.83
Preço da mercadoria de N° 31 = R$ 33.56
Preço da mercadoria de N° 32 = R$ 12.43
Preço da mercadoria de N° 33 = R$ 135.60
Preço da mercadoria de N° 34 = R$ 32.79
Preço da mercadoria de N° 35 = R$ 71.09
Preço da mercadoria de N° 36 = R$ 107.75
Preço da mercadoria de N° 37 = R$ 12.59
Preço da mercadoria de N° 38 = R$ 207.72
Preço da mercadoria de N° 39 = R$ 197.39
Preço da mercadoria de N° 40 = R$ 50.44
Preço da mercadoria de N° 41 = R$ 13.32
Preço da mercadoria de N° 42 = R$ 11.62
Preço da mercadoria de N° 43 = R$ 156.84
Preço da mercadoria de N° 44 = R$ 268.20
Preço da mercadoria de N° 45 = R$ 145.61
Preço da mercadoria de N° 46 = R$ 100.98
Preço da mercadoria de N° 47 = R$ 26.56
Preço da mercadoria de N° 48 = R$ 297.15
Preço da mercadoria de N° 49 = R$ 150.32
Preço da mercadoria de N° 50 = R$ 282.89
Preço da mercadoria de N° 51 = R$ 10.58
Preço da mercadoria de N° 52 = R$ 81.06
Preço da mercadoria de N° 53 = R$ 191.65
Preço da mercadoria de N° 54 = R$ 225.07
Preço da mercadoria de N° 55 = R$ 115 31
1.11. Seja: Escrever um programa que: a) Leia o valor de n, sendo n <= 20; b) Leia os
coe�cientes ai, onde i = 0, 1, 2 , ..., n; c) Calcule o valor de P para 10 valores lidos para x; d)
Imprima o valor de x e o valor de P correspondente.
import random
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 9/20
xexp = 0
#Lendo n aleatóriamente no intervalo de 1 a 20 (a):
n = random.randint(1,20)
print(f'O valor de n = {n}')
print('\n')
# Restringindo o coeficiente de a no intervalo de 0 a 10 (b):
coefA = [random.randint(0, 10) for p in range(0, n)]
for c in range (0, n):
print(f" O {c+1}° coeficiente de a = ",end='')
print(coefA[c])
print('\n')
# Gerando 10 valores para x e calculando a soma de cada um (c, d)
vetX = [random.randint(0, 100) for p in range(0, 10)]
print('Valores de x:')
for c in range(0, 10):
print(f'X{c+1} = {vetX[c]}')
print('\n')
for c in range(0, 10):
p = coefA[0]
for i in range(0, n):
xexp = 1
for j in range(0, i):
xexp *= vetX[c]
p += coefA[i] * xexp
print(f'A soma P do X{c+1} = {p}')
O valor de n = 9
O 1° coeficiente de a = 4
O 2° coeficiente de a = 3
O 3° coeficiente de a = 4
O 4° coeficiente de a = 7
O 5° coeficiente de a = 9
O 6° coeficiente de a = 0
O 7° coeficiente de a = 0
O 8° coeficiente de a = 9
O 9° coeficiente de a = 6
Valores de x:
X1 = 1
X2 = 29
X3 = 93
X4 = 52
X5 = 21
X6 = 23
X7 = 69
X8 = 28
X9 = 70
X10 = 87
A soma P do X1 = 46
A somaP do X2 = 3156733904258
A soma P do X3 = 34116440042361410
A soma P do X4 = 330011083311268
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 10/20
A soma P do X5 = 243148770026
A soma P do X6 = 500511946640
A soma P do X7 = 3149807632168058
A soma P do X8 = 2388254035420
A soma P do X9 = 3532999688510818
A soma P do X10 = 20032230128260688
1.12. Faça um programa que leia um valor N (N <= 20) e os N valores de uma variável composta.
Ordene os valores recebidos em forma crescente e imprima a variável composta ordenada.
Além disso, o programa deve imprimir, para cada número que se repete no conjunto, a
quantidade de vezes em que ele aparece repetido. O programa também deve ler um número k e
imprimir, antes e depois da ordenação, o k-ésimo elemento da variável composta
import random
vetor_o12 = []
#Lendo n aleatóriamente no intervalo de 1 a 20:
k = random.randint(1,20)
print(f'O valor de k = {k}')
n12= random.randint(1,20)
print(f'O valor de n = {n12}')
print('\n')
# Lendo os N valores de n, restingindo a variável composta no intervalo de 1 á 100:
vetor12 = [random.randint(1, 100) for p in range(0, n12)]
print(f'Intervalo de {n12} valores:')
print(vetor12)
print('\n')
#Ordenando os valores em ordem crescente:
print('O vetor em ordem crescente:')
for c in range(0, n12):
if (c == 0) or (vetor12[c] > vetor_o12[-1]):
vetor_o12.append(vetor12[c])
else:
pos12 =0
while pos12 < n12:
if (vetor12[c]) <= (vetor_o12[pos12]):
vetor_o12.insert(pos12, vetor12[c])
break
pos12 += 1
print(vetor_o12)
print('\n')
# Repetição de números:
vezes = 1
for c in range (0, n12-1):
if (vetor_o12[c] == vetor_o12[c+1]) or (vetor_o12[c] == vetor_o12[-1]):
vezes += 1
if (c == len(vetor_o12)-2) and (vezes > 1):
print(f' O numero {vetor_o12[c]} se repete {vezes} vezes.')
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 11/20
else:
if vezes > 1:
print(f' O numero {vetor_o12[c]} se repete {vezes} vezes.')
vezes = 1
O valor de k = 13
O valor de n = 11
Intervalo de 11 valores:
[2, 17, 14, 89, 80, 35, 78, 77, 14, 9, 57]
O vetor em ordem crescente:
[2, 9, 14, 14, 17, 35, 57, 77, 78, 80, 89]
O numero 14 se repete 2 vezes.
#Lendo k aleatóriamente no intervalo de 1 a 20:
k = random.randint(1,20)
print(f'O valor de k = {k}')
# Printanto a posição k-ésima dos vetores:
if (k <= n12):
print(f'O número na posição {k}-esima no vetor não ordenado é : ', end='')
print(vetor12[k-1])
print(f'O número na posição {k}-esima no vetor ordenado é : ', end='')
print(vetor_o12[k-1])
else:
print(f'O K = {k} é maior que tamanho do vetor!')
O valor de k = 10
O número na posição 10-esima no vetor não ordenado é : 9
O número na posição 10-esima no vetor ordenado é : 80
1.13. Elabore um programa para automatizar as eleições do Centro Acadêmico do curso de
Ciência da Computação. Inicialmente, o programa deverá ler os nomes dos N candidatos nas
eleições. O programa deve contabilizar os votos da seguinte forma: o usuário deverá digitar o
nome do candidato. A eleição deve ser �nalizada e o vencedor indicado quando o usuário
digitar a palavra “�m”.
print("\n---------------------------------------------------\n ")
print("---- ELEIÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO ----")
print("\n---------------------------------------------------\n ")
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 12/20
import random
vetor13 = []
#Definindo a quantidade de candidatos em um intervalo de 1 a 10:
n13 = random.randint(1,10)
print(f'Quantidade de candidatos = {n13}')
for c in range(0, n13):
vetor13.append(str(input(f'Nome do {c+1}º candidato: ')).upper())
---------------------------------------------------
---- ELEIÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO ----
---------------------------------------------------
Quantidade de candidatos = 7
Nome do 1º candidato: Rayla
Nome do 2º candidato: Iarla
Nome do 3º candidato: Maria
Nome do 4º candidato: Nycole
Nome do 5º candidato: Noemia
Nome do 6º candidato: Leticia
Nome do 7º candidato: Rute
teste = 0
posicao = 0
vetor_res = [0]*n13
while True:
perg = str(input("Deseja registrar um voto ou finalizar a votação? [votar/fim]: "))
if perg == 'fim':
print('\n')
print('Resultado das eleições:')
for i in range(0, n13):
print(f'{vetor13[i]} com {vetor_res[i]} votos')
break
else:
voto = str(input("Digite o nome do candidato em quem deseja votar : ")).upper()
for c in range(0, n13):
if vetor13[c] == voto :
vetor_res[c] = (vetor_res[c] + 1)
# Identificando o vencedor:
print('\n')
for j in range(0, n13):
if vetor_res[j] > teste:
posicao = j
teste = vetor_res[j]
print(f" O vencedor é {vetor13[posicao]} com {vetor_res[posicao]} votos !!!")
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 13/20
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : rayla
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : iarla
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : nycole
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : noemia
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : maria
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : leticia
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : rayla
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : noemia
Deseja registrar um voto ou finalizar a votação? [votar/fim]: votar
Digite o nome do candidato em quem deseja votar : rayla
Deseja registrar um voto ou finalizar a votação? [votar/fim]: fim
Resultado das eleições:
RAYLA com 3 votos
IARLA com 1 votos
MARIA com 1 votos
NYCOLE com 1 votos
NOEMIA com 2 votos
LETICIA com 1 votos
RUTE com 0 votos
O vencedor é RAYLA com 3 votos !!!
1.14. Escreva um programa que leia um conjunto de 50 �chas, cada uma contendo, a altura e o
código do sexo de uma pessoa (código = 1 se for masculino e 2 se for feminino). Esses dados
devem ser armazenados em vetores. Em seguida, o programa deve inserir o nome das pessoas
ordenadas pela altura (em ordem crescente).
import random
nomeM = []
nomeH = []
vetor14 = []
#Armazenando a altura e o sexo em vetores de 50 posições:
altura = [random.uniform(1.5, 2.0) for p in range(0, 50)]
sexo = [random.randint(1,2) for p in range(0,50)]
#Ordenando os valores em ordem crescente:
for c in range(0, 50):
if (c == 0) or (altura[c] > vetor14[-1]):
vetor14.append(altura[c])
else:
pos14 =0
while pos14 < 50:
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 14/20
if (altura[c]) <= (vetor14[pos14]):
vetor14.insert(pos14, altura[c])
break
pos14 += 1
for c in range(0,50):
if sexo[c] == 1:
nomeM.append(str(input(f'Digite o nome da {c+1}° pessoa [Mulher com altura %.2f] : '%v
else:
nomeH.append(str(input(f'Digite o nome da {c+1}° pessoa [Homem com altura %.2f] : '%ve
1.15. Escrevaum programa que leia um conjunto de N valores inteiros, onde N é um número
fornecido pelo usuário. Em seguida, o programa deve calcular e imprimir a média, a variância e
o desvio padrão dos valores lidos (amostra).
import random
soma15 = 0
v1 = 0
v2 = 0
n15 = int(input('Digite o tamanho do intervalo que deseja analisar = '))
#Lendo gerando o intervalo de tamanho n, variando de 1-10:
vetor15 = [random.randint(1,10) for p in range(n15)]
print('\n')
print(f'intervalo gerado = {vetor15}')
for c in range(0, n15):
soma15 = soma15 + vetor15[c]
media15 = soma15 / n15
#Calculando a variancia:
for c in range(0, n15):
v1 = media15 - vetor15[c]
v2 += v1**2
variancia = v2/ n15
desvio = (variancia)**(1/2)
print('\n')
print('A média do intervalo é = %.2f' %media15)
print('A variancia do intervalo é = %.2f' %variancia)
print('O desvio padrão do intervalo é = %.2f' %desvio)
Digite o tamanho do intervalo que deseja analisar = 5
intervalo gerado = [9, 5, 9, 7, 1]
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 15/20
A média do intervalo é = 6.20
A variancia do intervalo é = 8.96
O desvio padrão do intervalo é = 2.99
1.16. Deseja-se publicar o número de acertos de cada aluno em uma prova em forma de testes.
A prova consta de 30 questões, cada uma com cinco alternativas identi�cadas por A, B, C, D e E.
Para isso são dados: a) o cartão gabarito; b) o número de alunos da turma; c) o cartão de
respostas para cada aluno, contendo o seu número e suas respostas.
# Gerando o cartão gabarito e a quantidade de alunos (1-50):
vet_cat = [random.randint(1,5) for p in range(0, 30)]
qtd_alu = random.randint(1,50)
acertos= 0
vq= 0
print('-'*25)
print('-- OBSERVAÇÕES: --')
print('-- Resposta (A) = 1 --')
print('-- Resposta (B) = 2 --')
print('-- Resposta (C) = 3 --')
print('-- Resposta (D) = 4 --')
print('-- Resposta (E) = 5 --')
print('-'*25)
print('Gabarito das questões:')
print(vet_cat)
print('\n')
print(f'Na turma com {qtd_alu} alunos. ')
print('\n')
for c in range(0, qtd_alu):
while vq <= c:
vet_res =[random.randint(1,5) for p in range(0, 30)]
print(f'Respostas do {c+1}° aluno:')
print(vet_res)
for i in range(0, 30):
if (vet_res[i] == vet_cat[i]):
acertos += 1
else:
acertos += 0
print(f"Ele teve {acertos} acertos!")
print('---'*30)
vq += 1
acertos = 0
-------------------------
-- OBSERVAÇÕES: --
-- Resposta (A) = 1 --
-- Resposta (B) = 2 --
-- Resposta (C) = 3 --
-- Resposta (D) = 4 --
-- Resposta (E) = 5 --
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 16/20
-------------------------
Gabarito das questões:
[1, 4, 3, 2, 2, 1, 4, 3, 1, 4, 1, 2, 3, 1, 1, 3, 1, 3, 2, 4, 1, 1, 4, 4, 5, 4, 1,
Na turma com 12 alunos.
Respostas do 1° aluno:
[1, 4, 5, 1, 1, 1, 2, 1, 3, 3, 4, 2, 5, 3, 2, 1, 4, 3, 4, 1, 5, 5, 1, 5, 3, 4, 4,
Ele teve 6 acertos!
----------------------------------------------------------------------------------
Respostas do 2° aluno:
[4, 3, 2, 2, 5, 1, 4, 2, 4, 3, 5, 5, 2, 2, 1, 1, 2, 2, 4, 1, 1, 1, 4, 1, 1, 3, 3,
Ele teve 7 acertos!
----------------------------------------------------------------------------------
Respostas do 3° aluno:
[4, 5, 4, 5, 2, 3, 3, 4, 2, 3, 1, 3, 1, 4, 3, 1, 3, 4, 1, 4, 5, 3, 3, 5, 1, 3, 5,
Ele teve 6 acertos!
----------------------------------------------------------------------------------
Respostas do 4° aluno:
[5, 5, 2, 1, 5, 4, 5, 3, 4, 2, 1, 4, 5, 4, 3, 2, 3, 1, 2, 5, 1, 3, 3, 2, 5, 5, 5,
Ele teve 5 acertos!
----------------------------------------------------------------------------------
Respostas do 5° aluno:
[5, 3, 1, 4, 1, 1, 4, 4, 1, 2, 1, 2, 5, 1, 5, 4, 3, 3, 4, 5, 1, 5, 1, 2, 4, 1, 4,
Ele teve 9 acertos!
----------------------------------------------------------------------------------
Respostas do 6° aluno:
[5, 2, 1, 5, 2, 2, 3, 2, 2, 1, 5, 3, 2, 1, 3, 5, 4, 4, 5, 2, 1, 3, 4, 1, 5, 2, 2,
Ele teve 5 acertos!
----------------------------------------------------------------------------------
Respostas do 7° aluno:
[2, 1, 1, 2, 5, 4, 5, 1, 5, 1, 5, 4, 2, 5, 2, 2, 5, 1, 2, 5, 3, 4, 4, 4, 5, 3, 4,
Ele teve 6 acertos!
----------------------------------------------------------------------------------
Respostas do 8° aluno:
[1, 4, 3, 4, 4, 3, 5, 4, 4, 4, 2, 2, 4, 4, 2, 5, 1, 1, 2, 2, 2, 4, 2, 2, 1, 3, 1,
Ele teve 9 acertos!
----------------------------------------------------------------------------------
Respostas do 9° aluno:
[1, 4, 2, 5, 4, 4, 1, 5, 3, 1, 1, 2, 1, 3, 2, 3, 4, 2, 1, 4, 1, 3, 3, 5, 1, 5, 4,
Ele teve 7 acertos!
----------------------------------------------------------------------------------
Respostas do 10° aluno:
[3, 3, 5, 5, 2, 1, 5, 4, 4, 5, 5, 2, 4, 4, 1, 2, 5, 4, 2, 3, 2, 5, 1, 4, 1, 5, 2,
Ele teve 6 acertos!
----------------------------------------------------------------------------------
Respostas do 11° aluno:
[3 5 1 2 4 3 4 5 4 1 4 2 3 3 1 2 2 4 1 3 5 2 3 5 2 2 4
1.17. Dados dois vetores x e y, ambos com n elementos, determinar o produto escalar desses
vetores.
n17 = random.randint(1,10)
vet_x = [random.randint(1,10) for p in range(0, n17)]
vet_y = [random.randint(1,10) for p in range(0, n17)]
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 17/20
prod = 0
print(f'O tamanho dos vetores é (n)= {n17}')
print('\n')
print('Vetor x :')
print(vet_x)
print('Vetor y :')
print(vet_y)
for c in range(0, n17):
prod = prod + vet_x[c] * vet_y[c]
print("Produto escalar desses vetores: %d" %prod)
O tamanho dos vetores é (n)= 2
Vetor x :
[2, 3]
Vetor y :
[10, 7]
Produto escalar desses vetores: 41
1.18. Faça um programa para resolver o seguinte problema: São dadas as coordenadas reais x e
y de um ponto, um número natural n, e as coordenadas reais de n pontos (1 < n < 100). Deseja-
se calcular e imprimir sem repetição os raios das circunferências centradas no ponto (x,y) que
passam por pelo menos um dos n pontos dados. Exemplo : (x,y) = (1.0, 1.0) ; n = 5 Pontos : (-1.0,
1.2) , (1.5, 2.0) , (0.0, -2.0) , (0.0, 0.5) , (4.0, 2.0) Nesse caso há três circunferências de raios: 1.12,
2.01 e 3.162. Observações: Distância entre os pontos (a,b) e (c,d) é Dois pontos estão na
mesma circunferência se estão à mesma distância do centro.
n18 = random.randint(1,100)
x18 = random.randint(1,10)
y18 = random.randint(1,10)
vetx18 = [random.randint(1,10) for p in range(0, n18)]
vety18 = [random.randint(1,10) for p in range(0, n18)]
print(f"n = {n18}")
print(f"(x,y) = ({x18}, {y18})")
print('Coordenadas reais:')
for c in range(0, n18):
print(f"({vetx18[c]}, {vety18[c]}) ", end='')
#Falta fazer o calculo do raio e da distancia e compara-las
n = 4
(x,y) = (4, 1)
Coordenadas reais:
(7, 7) (9, 6) (8, 8) (3, 10)
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 18/20
1.19. Dada uma seqüência x1, x2, ..., xk de números inteiros, veri�que se existem dois
segmentos consecutivos iguais nesta seqüência, isto é, se existem i e m tais que: xi, xi+1,...,
xi+m-1 = xi+m, xi+m+1,..., xi+2m-1 Imprima, caso existam, os valores de i e m. Exemplo: Na
seqüência 7, 9, 5, 4, 5, 4, 8, 6 existem i=3 e m=2.
k19 = random.randint(1,100)
vetx19 = [random.randint(1,10) for p in range(0, k19)]
print(f"k = {k19}")
print(f"Sequência x :")
print(vetx19)
# Falta implementar a pesquisa de i e m
k = 19
Sequência x :
[4, 8, 8, 1, 2, 9, 8, 4, 10, 2, 3, 1, 5, 7, 10, 9, 10, 10, 1]
1.20. Dada uma seqüência de n números inteiros, determinar um segmento de soma máxima.
Exemplo: Na seqüência 5, 2, -2, -7, 3, 14, 10, -3, 9, -6, 4, 1 , a somado segmento é 33.
#Determinar um segmento de soma máximo
n20 = int(input("Forneça o tamanho da séri:"))
vet20_1 = []
vet20_2 = []
inicio = 0
fim = 0
refmax = -1000
serie = [0] * n20
for i in range(0, n20):
serie[i]= int(input("Informe o %d-ésimo elemento da serie: " %(i+1)))
for j in range(0, n20 - 1):
soma = vet
1.21. Em uma classe há n alunos, cada um dos quais realizou k provas com pesos distintos.
Dados n , k, os pesos das k provas e as notas de cada aluno, calcular a média ponderada das
provas para cada aluno e a média aritmética da classe em cada uma das provas.
#A quantidade de alunos varia de 1 - 50;
#A quantidade de provas variam de 1- 5;
#O valor de pesos varia de 1- 3;
#A nota de cada prova varia de 1- 10 pontos.
alunos21 = random.randint(1,50)
total = 0
somapeso = 0
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 19/20
mediapond = 0
media21 = 0
print(f"Quantidade de alunos = {alunos21}")
print('\n')
for c in range(0, alunos21):
print(f'O {c+1}° aluno fez ', end='')
k21 = random.randint(1,5)
print(f'{k21} provas')
for i in range(0, k21):
peso = random.randint(1,3)
somapeso += peso
nota = random.randint(1,10)
total += (peso * nota)
mediapond = (total/somapeso)
media21 += mediapond
print(f'Sua média ponderada é = %.2f' %(mediapond))
print('-'*30)
print('Média aritmétrica da turma = %.2f' %(media21/alunos21))
Quantidade de alunos = 14
O 1° aluno fez 3 provas
Sua média ponderada é = 4.00
------------------------------
O 2° aluno fez 5 provas
Sua média ponderada é = 4.82
------------------------------
O 3° aluno fez 3 provas
Sua média ponderada é = 5.50
------------------------------
O 4° aluno fez 5 provas
Sua média ponderada é = 5.60
------------------------------
O 5° aluno fez 5 provas
Sua média ponderada é = 6.07
------------------------------
O 6° aluno fez 3 provas
Sua média ponderada é = 5.69
------------------------------
O 7° aluno fez 1 provas
Sua média ponderada é = 5.87
------------------------------
O 8° aluno fez 3 provas
Sua média ponderada é = 5.85
------------------------------
O 9° aluno fez 5 provas
Sua média ponderada é = 5.64
------------------------------
O 10° aluno fez 4 provas
Sua média ponderada é = 5.68
------------------------------
O 11° aluno fez 3 provas
Sua média ponderada é = 5.76
------------------------------
05/06/2022 10:07 ListaExerciciosVetores.ipynb - Colaboratory
https://colab.research.google.com/drive/1FugKXd50FW7TAgRAPNmqHM7Pr2EhICDE?authuser=1#printMode=true 20/20
O 12° aluno fez 4 provas
Sua média ponderada é = 5.89
------------------------------
O 13° aluno fez 1 provas
Sua média ponderada é = 5.96
------------------------------
O 14° aluno fez 2 provas
Sua média ponderada é = 5.82
------------------------------
Média aritmétrica da turma = 5.58