Visual Studio Math.round

OP #6052813
Lesenswert?
• ▲
▼
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
Gast #6053411
Lesenswert?
• ▲
▼
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")
Gast #6053800
Lesenswert?
• ▲
▼
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.