AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Eigenen Variablentyp definieren

Ein Thema von daniel-volk · begonnen am 4. Feb 2004 · letzter Beitrag vom 4. Feb 2004
Antwort Antwort
daniel-volk

Registriert seit: 16. Jul 2003
170 Beiträge
 
Delphi 6 Enterprise
 
#1

Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 17:05
Hi!

Ich habe ein kleines Problem:
Ich möchte mit sehr, sehr großen Zahlen rechnen. Mit sehr, sehr groß meine ich auch wirklich sehr, sehr groß!
Wenn ich z.B. longword oder Int64 verwende, dann sind das aber dennoch nur 64 Bit und das ist mir zu wenig. Ich hätte eher so an 1024 bis 4096 Bit gedacht!
Das muss doch irgendwie möglich sein, mit solchen Zahlen zu rechnen, oder?
Ich denke mal, dass ich dafür lediglich einen eigenen Variablemtyp deklarieren muss.

Naja, danke für eure Hilfe!

MfG,
Daniel.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 17:09
Dazu musst du dir überlegen, wie du diese Zahlenmenge a) speichern willst und b) verwalten willst. Ein (32Bit-)Prozessor kann nur 32Bit-Zahlen addieren, bei 64 Bit nimmt der Compiler dir die Arbeit noch ab, bei größeren Zahlen musst du dir die grundlegenden Rechenoperationen schon selbst implementieren. Auch kannst du dann nicht die Standard-Operatoren wie +, - etc. verwenden, sondern musst Funktionen für die Operationen definieren, da Delphi das Prinzip der Operatorüberladung nicht unterstützt.

Such mal hier im Forum nach [dp]BigNum*[/dp] oder ähnlichen Begriffen, dort wurden teilweise auch bereits bestehende Implementationen genannt (ich glaube, Hagen (negaH) hat auch mal seine BigNumber-Bibliothek vorgestellt).
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 17:10
Moin Daniel,

da wirst Du kaum drum herum kommen Dir eine eigene Klasse dafür zu schaffen.

Such' mal in einer Suchmaschine Deines Vertrauens nach TLargeInteger oder TBigInteger (ggf. auch hier).
Da gibt es entsprechende Klassen mit Source (in Delphi).
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 17:43
Zitat von Chewie:
...da Delphi das Prinzip der Operatorüberladung nicht unterstützt.
Oh, Vorsicht. Da meine ich mich an einen Artikel in der Entwickler Zeitschrift zu erinnern, wo das doch geht, und zwar mit Variant Datentypen... Ich kuck das mal daheim nach und werd dann mehr dazu sagen können.

Gruß,
Tom
  Mit Zitat antworten Zitat
daniel-volk

Registriert seit: 16. Jul 2003
170 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 18:36
Hallo,

danke schonmal für eure Antworten!
Ich werde mal gucken, was ich dazu so finden kann.

Hört sich natürlich schade an, dass ich dann eigene Funktionen zum Addieren usw brauche
Vor allem, weil ich auch noch mod-Rechnungen durchführen möchte... Das sieht mir somit recht aufwendig aus.

Aber was soll's! Hauptsache es gibt überhaupt eine Möglichkeit solche Zahlen zu verarbeiten!!!

Bis dann,
Daniel.
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#6

Re: Eigenen Variablentyp definieren

  Alt 4. Feb 2004, 19:22
http://www.delphipraxis.com/topic146...mastellen.html

Gruß Hagen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz