Python :: Aufgabe #176 :: Lösung #3

3 Lösungen Lösungen öffentlich
#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
#3
vote_ok
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


Quellcode ausblenden 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

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben