bignum mit typedef struct implementieren in c?
Moin, also meine Aufgabe ist es den Datentyp bignum zu implementieren, wobei immer 4 Zahlen der bignum in einer Zelle gespeichert werden. Dabei wird außerdem noch die anzahl an Zellen in ihr gespeichert.
Hier die Aufgabenstellung:
Mir geht es in erster Linie darum den Datentypen erstmal zu erstellen (a), da mir der Rest danach vielleicht auch selbst einfällt, deshalb muss die Antwort auch nicht unbedingt soo detailliert sein, ich will ja auch was daraus lernen. :)
1 Antwort
Für bignum kannst du dir ein struct anlegen, welches im Aufbau genauso aussieht wie _zelle. Du brauchst für die Felder nur andere Namen (count, first, last).
Die Idee der Aufgabenstellung ist es, eine verkettete Liste anzulegen. Der bignum-Typ dient als Verwalter, der allgemeine Infos (Länge, Kopf und Ende) kennt, während die einzelnen Zellen untereinander verknüpft sind (up, down).
Interessanter wird es erst, wenn man sich eine Funktion überlegt, die eine Zelle solch einem Typ zuführt. Orientiere dich dabei an der Grafik aus der Aufgabenstellung und überlege dir im Voraus, welche Werte du je Zustand der Liste wie setzen musst. Die Operationen für das Hinzufügen der allerersten Zelle unterscheiden sich von den Operationen, die notwendig sind, wenn weitere Zellen angehängt werden.
Achte darauf, deinen Feldern immer einen expliziten Startwert zuzuordnen. So wäre bei einem neuen bignum die Länge beispielsweise 0 und die Verweise sollten auf NULL zeigen.