-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathday09.1.py
63 lines (51 loc) · 1.77 KB
/
day09.1.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
# Day9 successful
file = "AOC_day9_input.txt"
document = []
values = []
oasis_liste = []
def einlesen(filename):
"""
liest alle Zeilen eines Textfiles ein und speichert jede einzelne Zeile in einer Liste
"""
with open(filename, "r") as file:
# read file line by line and output the lines
for line in file:
line = line.strip()
zeile =line.split(" ")
values = []
for item in zeile:
wert = int(item)
values.append(wert)
document.append(values)
return document
oasis_liste = einlesen(file)
for line in oasis_liste:
print(line)
print(" ")
# ab hier die weitere Bearbeitung
total_prognose_werte = 0
pv_liste = []
for zeile in oasis_liste:
ableitungs_liste = [1, 1]
diff_liste = []
ableitung = 1
prognose_wert = 0
nullen_zaehler = 1
while nullen_zaehler > 0: # ursprünglich mit sum(ableitungs_liste) != 0
ableitungs_liste = np.diff(zeile, ableitung)
zeilensumme = sum(ableitungs_liste)
print("zeile", zeile, "Ableitung", ableitung, ableitungs_liste)
ableitung +=1
diff_liste.append(ableitungs_liste[len(ableitungs_liste)-1])
nullen_zaehler = 0
for zahl in ableitungs_liste:
if zahl != 0:
nullen_zaehler += 1
print(diff_liste)
prognose_wert = zeile[len(zeile)-1] + sum(diff_liste)
print("Nächster prognostizierter Wert:", prognose_wert)
print(" ")
pv_liste.append(prognose_wert)
total_prognose_werte = total_prognose_werte + prognose_wert
print("liste mit allen Prognosewerten: ", pv_liste, "summe aller Werte: ", sum(pv_liste))
print("Die Summe aller prognostizierten Werte beträgt: ", total_prognose_werte)