Python :: Aufgabe #176 :: Lösung #3
3 Lösungen
#176
Ermittlung von Zeilen- und Spaltennummer eines 2D-Array-Feldes
Anfänger - Python
von hollst
- 09.02.2018 um 11:03 Uhr
Die Felder eines "unendlich" großen 2D-Arrays seien nach folgendem "Diagonal-Schema" nummeriert:
1 2 4 7 . . .
3 5 8 . . . .
6 9 . . . . .
10 . . . . . .
. . . . . . usw.
Man schreibe ein Programm, das für eine gegebene Feldnummer N die Zeilen- (ZN) und die Spaltennummer (SN) zurückgibt.
Zeilen- und Spaltennummerierungen beginnen wie üblich mit 0.
Beispiele:
N = 8 -> ZN = 1, SN = 2
N = 31 -> ZN = 2, SN = 5
1 2 4 7 . . .
3 5 8 . . . .
6 9 . . . . .
10 . . . . . .
. . . . . . usw.
Man schreibe ein Programm, das für eine gegebene Feldnummer N die Zeilen- (ZN) und die Spaltennummer (SN) zurückgibt.
Zeilen- und Spaltennummerierungen beginnen wie üblich mit 0.
Beispiele:
N = 8 -> ZN = 1, SN = 2
N = 31 -> ZN = 2, SN = 5
#3
von Kubayann (120 Punkte)
- 15.04.2018 um 14:53 Uhr
Meine erster Beitrag auf der Seite, also bitte seid bitte gnädig mit meiner Lösung :D
Python-Code
## Autor: Yannik K.
## Variblen festlegen
Startwert = 1
Gesucht = int(input("Bitte eine Zahl eingeben: "))
Zeile = 0
Spalte = 0
## Schleife für die 0-te Spalte
## Ausgabe, wenn in 0-ter Spalte
while Startwert <= Gesucht:
Spalte = Spalte + 1
Startwert = Startwert + Spalte
if Startwert == Gesucht:
print("ZN = 0 SN = " + str(Spalte))
break
## Variable festlegen
Ausgangspunkt= Startwert-Spalte
## Schleife für die n-te Spalte
## Geht von der 0-ten Spalte aus und verringert pro Durchlauf den Spaltenwert um -1
while Ausgangspunkt != Gesucht:
Zeile = Zeile + 1
Ausgangspunkt = Ausgangspunkt + 1
Spalte = Spalte - 1
## Ausgabe, wenn nicht in 0-ter Spalte
if Startwert != Gesucht:
print("ZN = " + str(Zeile) + " SN = " + str(Spalte-1))
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
