Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#1

C# kann nicht rechnen oder bin ich zu blöd?¿?

  Alt 23. Mai 2008, 13:25
Hi.

Folgender Fall in C#:
Code:
public class Test
{
   private double _Qs = 30; // Einheit: tonnen / stunde
   public double Qs
   {
      get { return _Qs; }
      set { _Qs = value; }
   }

   // simple Umrechnung: t/h --> kg/s
   public double Ms
   {
      get { return Qs / (1000 / 3600); }
      set { Qs = value * (1000 / 3600); }
   }
}
Das sieht mir auf den ersten Blick sehr richtig aus.

Beispiel im (Windows-) Taschenrechner mit 30 t/h in 108 kg/s:
30 / (1000 / 3600) = 108

Dieser getter - Code liefert mir jedoch im Debugger und in der Ausgabe (VS 2008) als Wert 'Infinity' zurück. Was fatal ist, da ich damit ja weiter rechnen muss...

Und jetzt bin ich echt perplex: Wieso kommt da so ein offensichtlich falsches Ergebnis bei raus?
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat