-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathq2.py
47 lines (41 loc) · 1.22 KB
/
q2.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
def localiza(x, listaOcs):
for i in range(len(listaOcs)):
if x == listaOcs[i][0]:
return 1
return -1
def produz(nm):
listaOcs = []
dados = open(nm, 'r')
for linha in dados:
valor = int(linha)
onde = localiza(valor, listaOcs)
if onde == -1:
listaOcs.append([valor, 1])
else:
for i in range(len(listaOcs)):
if listaOcs[i][0] == valor:
listaOcs[i][1] += 1
dados.close()
return listaOcs
def mostrar(listaOcs):
print('Lista de ocorrencias:')
for valor, vezes in listaOcs:
print('%5d'%valor, 'ocorre', '%3d'%vezes, 'vez(es)')
print()
return None
def qualMaisOcorre(listaOcs):
if listaOcs == []:
print('Não existe nehum valor na lista')
else:
maisOcorre= listaOcs[0][0]
vezesMaisOcorre = listaOcs[0][1]
for valor, vezes in listaOcs:
if vezes > vezesMaisOcorre:
maisOcorre = valor
vezesMaisOcorre = vezes
print('Mais frequente:', maisOcorre, vezesMaisOcorre, 'vezes')
return None
nomeArq = input()
listaOcorrencias = produz(nomeArq)
mostrar(listaOcorrencias)
qualMaisOcorre(listaOcorrencias)