PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Der Befehl "div"


TenShoe
03.02.2003, 15:33
Hi, mir ist aufgefallen, dass man div nur mit Integerwerten benutzen kann, ich würde es aber gerne auch für Dezimalzahlen verwenden. Ist das irgendwie möglich?

Gruß,


Schaf
03.02.2003, 15:37
meinst du floatzahlen? nimm doch / ...

TenShoe
03.02.2003, 15:51
div ist aber nicht das gleiche wie / .
Und bei mod isses das gleiche wie bei div.
Ich brauche jedenfalls auch den Rest.

Schaf
03.02.2003, 16:08
hö? zum teilen div bei ganzen- und / bei kommazahlen (war ich mir bisher sicher)
mod geht nur bei ganzen zahlen, da bei kommazahlen logischweise kein rest entsteht. ansonsten musst
"ergebnis := trunc(kommazahl1) mod trunc(kommazahl2);"
machen.

Diogenes
05.02.2003, 18:11
Vielleicht hilft ja das weiter:

Int( X: Real): Real gibt von der Parameterzahl den ganzzahligen Anteil zurück (Int( 4.2) = 4, Int( -2,3) = -2), während Frac( X: Real): Real den Teil hinterm Komma angibt, sodaß Int( X) + Frac( X) = X.

Als Beispiel:
function Reduce( Al: Real): Real;

const Circle = 2 * Pi;

begin
Reduce := Frac( Al / Circle) * Circle
end;
"Reduziert" einen Winkel auf einen Bereich von 0 bis unter 2 * Pi. Die Winkelfunktionen ergeben die selben Werte wie mit der "Originalzahl".

TenShoe
05.02.2003, 19:04
Ich habe jetzt einfach eine zusätzliche integerVariable hinzugezogen der der realwert mit hilfe von round zugewiesen wird.
Dann kann ich div und mob verwenden und so funkt es auch. ;)