Autor Beitrag
LuGo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Do 04.02.10 10:02 
Hallo,

ich habe folgendes Problem bzw. möchte folgendes Probieren:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var Geschwindigkeit, Strecke: Real;
Fahrtzeit: TDateTime;

procedure TFeuerwehrfahrzeug.Fahren;
begin                     //Hier probiere ich, die Zeit für die Strecke zu berechnen
Geschwindigkeit:=IntToFloat
Strecke := IntToFloat
Fahrtzeit := Geschwindigkeit div Strecke;

Ich möchte die Fahrtzeit zuerst als Real-Typ berechnen, möchte aber gleichzeitig TDateTime haben, damit die Zahl heruntergezählt werden kann.

MfG
LuGo
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Do 04.02.10 10:30 
- TDateTime ist nen Real (Gleitkommawert)
- Mit div ist das Ergebnis niemals ein Real
- Strecke := IntToFloat ich bezweifel, dass das durch den Compiler geht
- Angenommen, Geschwindigkeit und Strecke sind gleich. Dann ist das Ergebnis 1, weil das Auto eine Stunde fährt. Teile das durch 24, und schon hast du einen TDateTime Wert.

_________________
PROGRAMMER: A device for converting coffee into software.
LuGo Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Do 04.02.10 10:51 
user profile iconXentar hat folgendes geschrieben Zum zitierten Posting springen:
- Mit div ist das Ergebnis niemals ein Real

War ein Fehler von mir, war nicht klar ob es real oder integer sein soll.

user profile iconXentar hat folgendes geschrieben Zum zitierten Posting springen:
- Strecke := IntToFloat ich bezweifel, dass das durch den Compiler geht.

Was soll ich denn anstelle machen. Habe jetzt zwei Variablen eine Geschwindigkeit (Integer) und eine Geschwindigkeit1 (Real).

user profile iconXentar hat folgendes geschrieben Zum zitierten Posting springen:
- Angenommen, Geschwindigkeit und Strecke sind gleich. Dann ist das Ergebnis 1, weil das Auto eine Stunde fährt. Teile das durch 24, und schon hast du einen TDateTime Wert.

Heißt das ich muss das Ergebnis anschließend durch 24 teilen und schon habe ich einen Wert von TDataTime. Ich möchte aber nur Minuten und Sekunden haben, durch was muss ich dann teilen?
Danf
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 27



BeitragVerfasst: Do 04.02.10 11:55 
user profile iconXentar hat folgendes geschrieben Zum zitierten Posting springen:
- Strecke := IntToFloat ich bezweifel, dass das durch den Compiler geht.

Was soll ich denn anstelle machen. Habe jetzt zwei Variablen eine Geschwindigkeit (Integer) und eine Geschwindigkeit1 (Real).

_______________________________________________________________________________________

Evtl

ausblenden Delphi-Quelltext
1:
Strecke := strtofloat(edxxx.text);					


ausblenden Delphi-Quelltext
1:
Strecke := strtoint(edxxx.text);					



Edit: Irgendwie wollte die quote funktion nicht ;)
LuGo Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Do 04.02.10 12:32 
Ich möchte keine String sondern eine Real-Variable verarbeiten.
Kann ich das dann so machen?

ausblenden Delphi-Quelltext
1:
Geschwindigkeit1 := IntToFloat(Geschwindigkeit);					


Oder wäre es einfach so möglich?

ausblenden Delphi-Quelltext
1:
2:
3:
4:
Var Geschwindigkeit: Integer;
    Fahrtzeit, Strecke, Geschwindigkeit1: Real;
//Lösung Problem// Geschwindigkeit1 := Geschwindigkeit
Fahrtzeit := Strecke/Geschwindigkeit


Antwort gefunden!

Jetzt sind noch 2 Fragen übrig.
LuGo Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Fr 05.02.10 10:18 
Wie bekomme ich das jetzt mit dem Zeit runterzählen? Mit dem TTimer und dann die Intervalle auf 1000 setzen und dann: if Fahrzeit = 0 then irgendwas?

MfG

LuGo
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Fr 05.02.10 11:34 
user profile iconLuGo hat folgendes geschrieben Zum zitierten Posting springen:
Wie bekomme ich das jetzt mit dem Zeit runterzählen? Mit dem TTimer und dann die Intervalle auf 1000 setzen und dann: if Fahrzeit = 0 then irgendwas?

Ja.

Aber da das mit dem ursprünglichen Problem nicht mehr viel zu tun hat, mach bitte ein neues Thema auf.

_________________
PROGRAMMER: A device for converting coffee into software.