Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Case-OrdinalTyp
Schweini31 - Mi 23.01.08 21:44
Titel: Case-OrdinalTyp
Hallo, ich weiß, dass case nur mit Ordinaltypen funktioniert, jedoch zeigt mir Delphi trotzdem einen Fehler an.
a,Tausend sind ein Real
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| a:=StrToFloat(edAlgebra.text); Tausend:=a/1000; Tausend:=Trunc(Tausend); a:=a-1000*Tausend; case Tausend of 1: b:='M'; 2: b:='MM'; 3: b:='MMM'; 4: b:='MMMM'; end; |
Fehler: Ordinaltyp erforderlich
Mit Trunc wandle ich doch einen Real in einen Integer um.
Ich versteh nicht was ich flasch gemacht habe :(
Könnt ihr mir bitte sagen was ich falsch gemacht habe?
Schweini
nagel - Mi 23.01.08 21:50
Tausend ist immer noch eine Real-Variable, auch wenn du die Nachkommastellen abschneidest.
Yogu - Mi 23.01.08 21:50
Schweini31 hat folgendes geschrieben: |
| a,Tausend sind ein Real |
Eben. Die sind und bleiben ein Real. Wie sollte sich denn der Variablentyp durch Zuweisen eines neuen Werts ändern? Du musst eine neue Integer-Variable deklarieren, die dann die Funktion von
Tausend annimmt.
Schweini31 - Mi 23.01.08 22:07
Ok vielen Dank!
Funktioniert
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!