Domino 9 und frühere Versionen > ND6: Entwicklung

Notes und Kommastellenrechnen, schonmal erlebt???

(1/6) > >>

Peacemaker:
Hallo, mal was ganz besonders seltsames:

ich habe folgenden input für eine Rechenschleife:

1 Durchlauf: 1320
2 Durchlauf: 1320 + 101.83
3. Durchlauf: 1421 + 84.2105
4 Druchlauf: 843526 + 0
5 Durchlauf: 843526 + 101.7
6 Durchlauf: 843627,7


Was soll das? Wieso rechnet er die 84.2105 als 842105 - bei allen anderen Komma werten gehts.

Hier nochmal der Code, glaub aber net das es daran liegt (Die Promts geben den Output von oben):


--- Code: --- @While(start<ende;

@Prompt([OK];"i";"Neu gesamt= " +@Text(trans));
@Prompt([OK];"i";"+ "+@Text(transactions[start]));

trans:=trans+@ToNumber(transactions[start]);

start:=start+1 );
erg:=erg+@NewLine+@Text(slot)+"|"+@Text(trans/delta);
tmperg:=trans/delta;
erg2:=erg2+@NewLine+@Text(slot)+"|"+"-20%|"+@Text(tmperg*0,8);
i:=i+1);
--- Ende Code ---

klaussal:
... weil der . kein , ist ?

klaus

Peacemaker:
aber wieso ist dann 101.83 nicht 10183 ??? Und soweit ich weiss ist im englischen der . als seperator zulässig und hat bisher bei mri in notes noch keine probleme gemacht.

Tode:
Dein Prompt sagt ÜBERHAUPT nix über die Eingangszahlen...

Ich vermute schwer, dass Dein Transactions- Feld schon falsch gefüllt ist...
Mal mit einer Zahl, und mal mit nem Text...

Aber Dein Beispiel verdeutlicht mir mal wieder, warum ich -obwohl es inzwischen geht- kein Freund von Schleifen in Formelsprache bin....

Deine Lösung:

@While(start<ende;
trans:=trans+@ToNumber(transactions[start]);
start:=start+1 );

lässt sich ganz einfach in EINER Zeile Code abhandeln:

trans := @Sum( @ToNumber( transactions ) );

Aber abgesehen davon würde ich mal folgendes zu Debug- Zwecken machen:
einfach in einen Aktionsbutton folgendes schreiben:

@Prompt( [OK] ; "Ohne ToNumber" ; @Implode( @Text( transactions ) ) );
@Prompt( [OK] ; "Mit ToNumber" ; @Implode( @Text( @ToNumber( transactions ) ) ) );

ich vermute den Fehler nämlich schwer im @ToNumber...

Gruß
Tode

Peacemaker:
ok, @tonumber cuttet den . einfach weg - gibt es da eine alternative????

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln