Delphi-PRAXiS
Seite 3 von 10     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Mathe mit Strings (die deutsche StringMatheLib ._. ) (https://www.delphipraxis.net/135569-mathe-mit-strings-die-deutsche-stringmathelib-_.html)

himitsu 15. Jun 2009 15:27

Re: die deutsche StringMatheLib ._.
 
Zitat:

Zitat von gammatester
Noch ein schwerer Bug in PotenzModulo ...

ups, das hatte ich mal so und hatte es dann wohl "zeroptimiert" :roll:

Aber hier hat sich schonmal ein Vorteil der "Einfachheit" gezeigt ... nicht viel unverständlicher Code, dann noch fast vollkommen unkommentiert und dennoch ist der Fehler schnell gefunden :)
(ich möcht mal nicht wissen, wieviele Zeilen Code Hagens DEC allein in solch einer Funktion drinnen hat)

Nja, auf die Geschwindigkeit hatte ich ja schon hingewiesen ... probiert einfach mal eine Potenz, mit den voreingetragenen Standardwerten :angel2:

qwertz543221 15. Jun 2009 15:29

Re: die deutsche StringMatheLib ._.
 
sry ich finde die angebene zeile nicht

kannst du mir mal die zeilennummer geben

himitsu 15. Jun 2009 15:30

Re: die deutsche StringMatheLib ._.
 
Zeile 520 in StringMatheLib.pas ... und die Dateien im Post #1 sind auch schon korrigiert :mrgreen:

qwertz543221 15. Jun 2009 15:47

Re: die deutsche StringMatheLib ._.
 
wie stelle ich folgendes dar

Delphi-Quellcode:
if (x>y)
  then ...

himitsu 15. Jun 2009 18:12

Re: die deutsche StringMatheLib ._.
 
Delphi-Quellcode:
// über das TMathe-Objekt

If Mathe.Vergleich(x, y) > 0 Then ...
// die Vergleiche des Funktions-Ergebnisses gegen 0 verhalten sich genauso, wie x gegen y
// ..) > 0       x > y
// ..) < 0       x < y
// ..) = 0       x = y
// ..) >= 0      x >= y
// ...

If Mathe.Vergleich(x, y, vGroesser) Then ...

// über die Operatoren aus StringMatheRec.pas

If x > y Then ...

PS: falls es richtig rechnet, gibt es nun auch einen Festkommatypen (siehe Demo 3)

qwertz543221 15. Jun 2009 20:32

Re: die deutsche StringMatheLib ._.
 
hallo, danke - ich kann das jetzt gut einbauen.

hast du vlt auch eine random funktion für deine stringzahlen? - oder eine idee, die ich mal - ausnahmsweise - selbst mache;)

mkinzler 15. Jun 2009 21:56

Re: die deutsche StringMatheLib ._.
 
Zitat:

hast du vlt auch eine random funktion für deine stringzahlen? - oder eine idee, die ich mal - ausnahmsweise - selbst mache;)
Das würde zumindest dem Gedanken von OpenSource entsprechen :zwinker:

R2009 16. Jun 2009 05:14

Re: die deutsche StringMatheLib ._.
 
Hi,

Aus deinem Titel und aus den Beiträgen hatte ich den Eindruck du wolltest ausschliesslich mit Strings rechnen!
Dass es hier um sehr grosse Zahlen geht kann man nur ganz am Rande im ersten Beitrag erahnen.

Viel grüsse

toms 16. Jun 2009 05:37

Re: die deutsche StringMatheLib ._.
 
Die Unit läuft fast unter Delphi 5.

Folgende Punkte müssten noch bereinigt werden:

1. unit types entfernen

2. TValueRelationship und Konstanten von unit types deklarieren

Delphi-Quellcode:
type
  TValueRelationship = -1..1;
const
 (** Equals for extended comparisons. *)
  EqualsValue = 0;
  (** Less than for extended comparisons. *)
  LessThanValue = Low(TValueRelationship);
  (** Greater than for extended comparisons. *)
  GreaterThanValue = High(TValueRelationship);

3. "$IF not" ist unter D5 eine ungültige Compiler Directive.

{$IF not Declared(Trim)} -> [Error] StringMatheLib.pas(107): Invalid compiler directive: 'IF'
{$IF not Declared(Max)} -> [Error] StringMatheLib.pas(123): Invalid compiler directive: 'IF'


4. Delphi 5 kennt System.Error nicht

himitsu 16. Jun 2009 06:41

Re: die deutsche StringMatheLib ._.
 
1-3 sind kein Problem

4: wie hieß das denn früher, bzw. gibt es da zumindestens System.RunError?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 Uhr.
Seite 3 von 10     123 45     Letzte »    

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