Implemtieren Sie in Aufgabe_1b.py einealternative Implementierung, die das Pascal'sche Dreieck in einem 1-dimensionalen Feld in der Form [1,1,1,1,2,1,1,3,3,1,. .. ] ablegt, ohne zuvor ein 2-dimensionales Feldzuerzeugen. Das Programm soll jedoch die gleiche dreiecksför-mige Ausgabe erzeugen wie das Programm aus Aufgabenteil(a).
die Aufgabe a hab ich gelöst und bei der b bin ich fast fertig. nur die ausgabe bereitet mit kopfschmerzen. ich verwende pycharm und muss die aufgabe für die uni machen. Folgengen Code habe ich bis jetzt:
Code: Alles auswählen
n = int(input('Geben sie eine natürliche Zahl ein: '))
Dreieck = []
for x in range (0,n+1):
current = []
if x == 0:
current.append(1)
else:
for y in range(0,x+1):
if y == 0 or y == x:
current.append(1)
else:
elem = last[y-1]+last[y]
current.append(elem)
last = current
for f in range(len(current)):
Dreieck.append(current[f])
length = len(Dreieck)
start = 0
end = 1
line = 1
while length > -1:
for i in range(start,end):
print(Dreieck[i])
length = length-1
start = end
end = end + line
line = line + 1
Code: Alles auswählen
Geben sie eine natürliche Zahl ein: 5
Traceback (most recent call last):
1
File "Aufgabe_1b.py", line 26, in <module>
1
print(Dreieck[i])
1
IndexError: list index out of range
1
2
1
1
3
3
1
1
4
6
4
1
1
5
10
10
5
1