Seid gegrüßt Kameraden!
Ich bin gerade dabei zwei Klassen zu schreiben, die Klassen BigINT und BigFLOAT.
Wie es der Name schon möchte ich sehr große Zahlen möglich machen. Ja, es gibt schon fertige Bibliotheken dafür und nein ich möchte diese zwei Klassen zur Übung schreiben.
Nun möchte ich es so realisieren, in der BigINT ein std::string zu benutzen, bei BigFLOAT wende ich ebenso ein std::string an.
Doch habe ich kleine Probleme die Operatoren zu schreiben. Gerade was die Addition und Subtraktion betrifft habe ich Probleme, letztens braucht man ja "nur" diese und kann dann damit den Operanden der Division und Multiplikation sowie Modulo überladen. Dann natürlich noch größer und kleiner, etc.pp.
Nur um zum einfacheren Teil zu kommen, muss ich ja erst mal den schweren machen. Als schweren Teil bezeichne ich besonders die Addition. Letztens ist die Subtraktion auch nichts anderes als eine Addition. Naja...
Ich lud mir die Bibliothek bzw. einzelne Klasse "large" herunter, unter Google vielleicht schwer zu finden, doch was dort in der Addition gemacht wird, das sagt mir überhaupt gar nichts. Dort ist eine Funktion "Add", die bei dem Operator "+" aufgerufen wird, dazu dann nochmal zusätzlich massig Code. Insgesamt für die Addition ~100. Meine Idee persönlich wäre, das irgendwie in das Binärsystem umzuwandeln, wobei das doch irgendwie sinnlos/sehr langsam bei einem std::string sein dürfte, und damit dann zu arbeiten, wie bei Minecraft, da ist die Addition leichter, empfinde ich. xD
Naja, hat irgendjemand einen Ansatz oder besser Pseudo-Code, eine Erklärung, sonst irgendwas, um mir behilflich zu sein?
MfG
Check
//Erledigt
Ich bin gerade dabei zwei Klassen zu schreiben, die Klassen BigINT und BigFLOAT.
Wie es der Name schon möchte ich sehr große Zahlen möglich machen. Ja, es gibt schon fertige Bibliotheken dafür und nein ich möchte diese zwei Klassen zur Übung schreiben.
Nun möchte ich es so realisieren, in der BigINT ein std::string zu benutzen, bei BigFLOAT wende ich ebenso ein std::string an.
Doch habe ich kleine Probleme die Operatoren zu schreiben. Gerade was die Addition und Subtraktion betrifft habe ich Probleme, letztens braucht man ja "nur" diese und kann dann damit den Operanden der Division und Multiplikation sowie Modulo überladen. Dann natürlich noch größer und kleiner, etc.pp.
Nur um zum einfacheren Teil zu kommen, muss ich ja erst mal den schweren machen. Als schweren Teil bezeichne ich besonders die Addition. Letztens ist die Subtraktion auch nichts anderes als eine Addition. Naja...
Ich lud mir die Bibliothek bzw. einzelne Klasse "large" herunter, unter Google vielleicht schwer zu finden, doch was dort in der Addition gemacht wird, das sagt mir überhaupt gar nichts. Dort ist eine Funktion "Add", die bei dem Operator "+" aufgerufen wird, dazu dann nochmal zusätzlich massig Code. Insgesamt für die Addition ~100. Meine Idee persönlich wäre, das irgendwie in das Binärsystem umzuwandeln, wobei das doch irgendwie sinnlos/sehr langsam bei einem std::string sein dürfte, und damit dann zu arbeiten, wie bei Minecraft, da ist die Addition leichter, empfinde ich. xD
Naja, hat irgendjemand einen Ansatz oder besser Pseudo-Code, eine Erklärung, sonst irgendwas, um mir behilflich zu sein?
MfG
Check
//Erledigt
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Checkmateing ()