Forum: Programmieren allgemein
by Amateurprofi,
4. Okt 2018
@jfheins:
Danke für den Hinweis.
Ich hab das realisiert, allerdings etwas anders als von dir (vermutlich) gedacht.
Ich hab eine Tabelle:
type
TTLEntry=Record
Numerator:Byte;
Denominator:Byte;
TL:Word;
End;
Forum: Programmieren allgemein
by Amateurprofi,
2. Okt 2018
@jfheins
Ich habe die Prozedur Kettenbruch ausgiebig getestet.
Da die Prozedur in einem anderen Thread liegt, stelle ich sie hier noch einmal rein.
procedure Kettenbruch (var z1,z2:Int64; Ebenen:Byte);
var
Ganzzahl, Zaehler, Nenner: Int64;
begin
z1 := abs(z1);
z2 := abs(z2);
Forum: Programmieren allgemein
by Amateurprofi,
2. Okt 2018
Meines Erachtens nein!
Es sei denn Du übergibst der Prozedur als Nenner (zweiter Parameter) einen 0 Wert.
Und der wird dann abgefangen mit der Fehlermeldung "Division durch 0".
Forum: Programmieren allgemein
by Amateurprofi,
30. Sep 2018
@jfheins:
Das scheint genau das zu sein, was ich suche.
Ich werde das in den nächsten Tagen mal testen.
Vielen Dank.
Forum: Programmieren allgemein
by Amateurprofi,
30. Sep 2018
Du irrst.
Grundsätzlich hast du insofern Recht, dass keine exakten Resultate möglich sind.
Jedoch sind exakte Resultate auch nicht gefragt.
Ich schrieb
Die Betonung liegt auf "möglichst nahe bei TL".
"Du irrst" schrieb ich, weil gerade bei dem von dir genannten Beispiel das Resultat exakt ist.
Forum: Programmieren allgemein
by Amateurprofi,
30. Sep 2018
Ich habe zwei Werte TL und FTL, beide vom Typ Word.
TL ist im Bereich 1 bis $7FFF.
FTL ist im Bereich 400 bis 1200.
Gesucht ist ein Bruch, für den gilt:
FTL * Nominator div Denominator = TL (bzw. möglichst nahe bei TL)
Eine Nebenbedingung ist, dass Nominator und Denominator im Bereich 1 bis 255 (Bytes) liegen müssen.
Ich verwende z.Zt- die nachstehende Funktion.
Weiß jemand einen...