Hallo zusammen, Ich lese über Bluetooth Daten von meinem Mikrocontroller ein. Unter anderem auch Laufzeiten von externen Geräten, die damit betrieben werden. Jetzt schreib ich gerade ein kleines Programm, welches unter anderem die Laufzeiten ausgeben soll. Da ich diese in Stunden anzeigen lassen möchte, bekomme ich dort nach der Umrechnung von Sekunden in Stunden sehr viele Nachkommastellen. Die Nachkommastellen habe ich nun mit "Math.Round(x,3)" auf 3 begrenzt. Jetzt zu meiner eigentlichen Frage : Ich möchte immer genau 3 Nachkommastellen in meinem Label ausgeben. Sprich wenn x=0,7 ist möchte ich im Label ausgeben 0,700. Wie mache ich das ? Vielen Dank Gruß Fuchs
Der kleine Hinweis auf die Programmiersprache fehlt mal wieder falls es C# ist, dann label.Text = $"{x:0.000}"; Grüße
nicht"Gast" schrieb: > Der kleine Hinweis auf die Programmiersprache fehlt mal wieder > > > falls es C# ist, dann label.Text = $"{x:0.000}"; Besser ist, das unabhängig von der Programmiersprache abzufackeln (hinter den Kulissen läuft es ja sowieso darauf hinaus, es wird also durch die kryptische Formulierung rein garnix gespart...). Sprich: die ToString()-Methode mit benutzerdefinertem Formatstring verwenden. Für C# wäre das dan also: label.Text = x.ToString("0.000"); für VB.net label.Text = x.ToString("0.000")
Noch eine kurze Anmerkung zu Math.Round, da ich die Tage da selbst mit gekämpft habe: Standardmäßig wird mathematisch gerundet, d.h aus 2,55 wird 2,5 nicht 2,6, erst ab 2,56 wird aufgerundet. Möchte man kaufmännisch gerundet haben, also schon ab 2,55 aufrunden musst du in deinem fall Math.Round(x, 3, MidpointRounding.AwayFromZero) nutzen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.