PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie man auf 4 oder 2 Plätze rundet, basierend auf einem Paar



Pedroxx14
19:52,
Ich versuche, die Variablen in einem String auf 4 oder 2 Dezimalstellen basierend auf dem verwendeten Paar zu runden. Im Moment bekomme ich so etwas wie:

Durchschnitt = 1.12345678

Ich weiß, dass ich die Doppelfunktion Normalisieren verwenden kann, um die obige Zahl zu runden:

Durchschnitt = 1.1234

Gibt es eine Möglichkeit, das Programm so einzustellen, dass bei Verwendung von Yen-Paaren nur zwei Dezimalstellen gedruckt werden?

Durchschnitt = 123,12

Oder sollte ich einfach die letzten zwei Dezimalstellen ignorieren, wenn Sie Yen-Paare verwenden?

mokse
01:12,
Hier gehts: string CurrSymbol = Symbol (); string strToFind = JPY;/Suche wenn JPY Teil des Symbols ist int index = StringFind (CurrSymbol, strToFind, 0); if (index = -1)/Nicht-JPY-Symbol {Auf 4 Dezimalstellen gerundet ....; } else/JPY-Symbol {Auf 2 Dezimalstellen gerundet ....; } Hoffentlich hilft das.

Pedroxx14
02:33,
Danke Spieler Ich habe einen letzten Versuch unternommen, um das herauszufinden, und Walla !!!!!! Es kam mir eine Weile, nachdem ich dies gepostet hatte. Getestet und es funktioniert. Folgendes habe ich verwendet: (DoubleToStr (Your_Double_Variable_Here, Digits)) Der Begriff Digits ist hart in MetaEditor codiert und wird verwendet, um auf die Anzahl der Dezimalstellen des aktuellen Paares zu runden. Das hatte mich einen Tag lang geärgert.

anpkrres47
03:54,
Ich hoffe, das funktioniert: avrg = MathFloor (avrgPoint) * Point;

lorenaajopeahyo
05:14,
Wenn Ihre Zeichenfolge den Standardwert Average = und dann die Nummer enthält und AvgStr heißt, verwenden Sie die folgende. double value_only = NormalizeDouble (StrToDouble (StringSubstr (AvgStr, 10)), Digits); AvgStr = StringConenate (Average =, DoubleToStr (value_only)); Beachten Sie, dass die Zahl 10 von der Länge abhängt, die Sie Average = zuweisen. Ich hoffe das hat geholfen.