Python Liste ausgeben
Verfasst: Mittwoch 22. Mai 2019, 15:34
Ich habe folgende aufgabe:
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:
Die liste wird zwar noch nicht als dreieck ausgegeben, aber darum geht es bei meiner frage auch nicht. viel mehr darum, dass ich bei der ausgabe immer folgenden error bekomme:
Ich sitz hier und bin am grübeln und probieren und hab keinen schimmer, wie ich das lösen soll... kann mir einer helfen?
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