Ich habe eine Aufgabenstellung. Ich bin neu in Python und suche Lösungsansätze durch euer Einwerfen von Stichworten oder anderes vergleichbar umfangreiches Zutun. Mir ist klar, dass ich mich hier nicht hinstellen kann und von euch die Lösung aufgetischt bekommen werde. Klar ist mir auch, dass ich Python auch verstehen lernen muss und das geht denke ich aber eben am besten mit einem konkreten Problem.
Folgende Aufgabe ist es:
Es besteht eine konkrete Anzahl von 72 Objekten (prinzipiell gern aber auch beliebig erweiterbar, hat aber keine Priorität).
Alle Objekte sind miteinander in folgender Weise netzartig verkettet:
Jedes dieser Objekte hat mindestens 1, maximal 2 konkrete Nachfolger und genauso mindestens 1, maximal 2 konkrete Vorgänger. Jedes dieser Objekte hat außerdem einen konkreten eindeutigen Namen.
Folgende eine Netzstruktur ergibt sich, um sie mal optisch darzustellen (hoffe, dass man es erkennt):
Code: Alles auswählen
Meine Objekte sind die Kanten der Sechsecke!!
| o-----o
| / \
| o-----o o-----o
| / \ / \
| o-----o o-----o o-----o
| / \ / \ / \
| o o-----o o-----o o
| \ / \ / \ /
| o-----o o-----o o-----o
| / \ / \ / \
| o o-----o o-----o o
| \ / \ / \ /
| o-----o o-----o o-----o
| / \ / \ / \
| o o-----o o-----o o
| \ / \ / \ /
| o-----o o-----o o-----o
| \ / \ /
| o-----o o-----o
| \ /
| o-----oSo, eine Kette soll nun aus 5 dieser Objekte (Kanten der Sechsecke) bestehen (gern aber auch wieder beliebig mehr).
Ein Script soll sämtliche möglichen 5er-Ketten, die es geben kann ermitteln, zählen, ausgeben, what ever...
Mit OOP machts doch sicher am meisten Sinn oder?
Code: Alles auswählen
class Knoten:
def __init__(self,i,name,avg,anf,vg1,vg2,nf1,nf2):
self.i = i #laufende Nummer
self.name = name
self.avg = avg #avg = 'A'nzahl an 'V'or'g'ängern, min. 1, max. 2
self.anf = anf #ang = 'A'nzahl an 'N'ach'f'olgern, min. 1, max. 2
self.vg1 = vg1
self.vg2 = vg2
self.nf1 = nf1
self.nf2 = nf2
