Wie Kommazahlen programmieren?

7 Antworten

Fließkommazahlen werden mit einem Punkt statt einem Komma geschrieben und in einigen Programmiersprachen mit einem "f" am Ende.

0,1 in c++:

float meine_zahl = 0.1 ;

0,1 in java oder c#:

float meineZahl = 0.1f ;


Brumhilde 
Beitragsersteller
 06.08.2018, 17:13

Ahh vielen Dank!

Ich musste nur ein f hinter die 0.1 schreiben

1
  1. Welche Sprache benutzt Du denn zur Programmierung?
  2. Welchen Datentyp hast Du benutzt? Wenn Du z. B. integer benutzt, funktioniert das mit dem Komma natürlich nicht.

Das muss dann vom Datentyp double sein, nicht int


FXG36  06.08.2018, 18:43

Oder decimal

0

Kann es sein das du als Parameter Millisekunden angeben sollst?

Ich weiß nicht, in welcher Sprache du dein Spiel programmiert hast, aber du hast zwei Möglichkeiten:

1) Prüfe, ob der Datentyp korrekt ist. Fließkommatypen müssen immer als solche gekennzeichnet sein. Bei gängigen Hochsprachen ist das ein "float" oder "double", statt einem "integer".

2) Rechne alle Kommazahlen hoch. Du musst allerdings deinem Programm dann sagen, wo es entsprechend wieder runterteilen muss. (0,1 wäre dann "intern" 1, da du die Zahl mit 10 hochmultiplizierst). Wird übrigens in der Industrie häufiger so gemacht, um Rechenzeiten mit Kommazahlen zu umgehen.

Woher ich das weiß:Berufserfahrung

Brumhilde 
Beitragsersteller
 06.08.2018, 15:44

Danke für die Antwort,

Ich benutze C# da ich in Unity programmiere. Die Zeile sieht wie folgt aus:

yield return new WaitForSeconds (1);

Muss ich daran etwas ändern?

0
Gehilfling  06.08.2018, 15:46
@Brumhilde

"Wait for Seconds" wird als Übergabewert tendenziell nur ganze Zahlen erwarten. Du könntest dir deine eigene Funktion basteln oder meinen 2. Tipp verwenden.

0
Brumhilde 
Beitragsersteller
 06.08.2018, 15:48
@Gehilfling

Hab ich schon Versuch. Dann passieren richtig crazy sachen :D zum Beispiel bekommt man dann plötzlich 1000 Münzen in 3,33 Sekunden

0