-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
71 lines (66 loc) · 2.57 KB
/
main.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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import timeit
from bruteforce import bruteforce
from file import get_info_from_file
from optimized_dynamic import optimized_dynamic
from optimized_naive import optimized_naive
def menu():
print('Menu Principal:')
print('1. Force brute')
print('2. Optimisé Naïve')
print('3. Optimisé Dynamique')
print('4. Quitter')
while True:
menu()
print()
try:
choice = int(input('Sélectionner une option: '))
if choice == 1:
choice = input('Sélectionner un fichier CSV: ')
print()
start = timeit.default_timer()
result = bruteforce(500, get_info_from_file(choice))
end_time = round(timeit.default_timer() - start, 2)
print(f"Voici la liste d'action les plus rentable pour un budget maximum de 500€")
print()
for action in result[1]:
print(action)
print()
print(f"Notre bénéfice total s'élève à {result[0]}€")
print()
print(f"Temps d'exécution: {end_time} secondes")
print()
if choice == 2:
choice = input('Sélectionner un fichier CSV: ')
print()
start = timeit.default_timer()
result = optimized_naive(500, get_info_from_file(choice))
end_time = round(timeit.default_timer() - start, 4)
print(f"Voici la liste d'action les plus rentable pour un budget maximum de 500€")
print()
for action in result:
print(action)
benefice = sum(map(lambda action_list: action_list.benefice, result))
print()
print(f"Notre bénéfice total s'élève à {benefice:>.2f}€")
print()
print(f"Temps d'exécution: {end_time} secondes")
print()
if choice == 3:
choice = input('Sélectionner un fichier CSV: ')
print()
start = timeit.default_timer()
result = optimized_dynamic(500, get_info_from_file(choice))
end_time = round(timeit.default_timer() - start, 2)
print(f"Voici la liste d'action les plus rentable pour un budget maximum de 500€")
print()
for action in result[1]:
print(action)
print()
print(f"Notre bénéfice total s'élève à {result[0]:>.2f}€")
print()
print(f"Temps d'exécution: {end_time} secondes")
print()
if choice == 4:
quit()
except ValueError:
print("Sélectionner un numéro valide")