Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Variable von Int nach Float umwandeln (https://www.delphipraxis.net/108419-variable-von-int-nach-float-umwandeln.html)

GericasS 13. Feb 2008 10:59


Variable von Int nach Float umwandeln
 
Ich hab folgendes Problem :

Ich gebe die Werte die ausgeben möchte alle in der Variable i aus !
Nun möchte ich nach der Ausgabe im StringGrid, i auch in 4 Panels ausgeben.
Da in meinem Programm auch die Kreditlaufzeit in Jahren ausgegeben werden soll,
muss ich die Variable i notgedrungen durch 12 teilen, da sie ein Integertyp ist
geht dies leider nicht. Momentan bin ich leider sehr ratlos...
Deswegen meine Frage kann ich die Var. i iwie nach float umwandeln ?

:stupid:


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i : Integer ;
  temp : String ;
  kredit,zinsen,zinssatz,rate,ende : real ;
begin
  kredit := StrToFloat(edit1.Text);
  rate := StrToFloat(edit2.Text);
  zinssatz := StrToFloat(edit3.Text)/100;
  i := 0 ;
  while kredit > 0 do
    begin
      inc(i);
    StringGrid1.RowCount:=(i+1);
  zinsen := kredit*zinssatz/12 ;
  ende := kredit-rate+zinsen ;
    StringGrid1.Cells[0,i]:=IntToStr(i);
    StringGrid1.Cells[1,i]:=FloatToStrF(kredit,ffFixed,10,2);
    StringGrid1.Cells[2,i]:=FloatToStrF(zinsen,ffFixed,10,2);
    StringGrid1.Cells[3,i]:=FloatToStrF(ende,ffFixed,10,2);
  kredit:=ende ;
      if ende < 0 then break ;
     Panel1.Caption := IntToStr(i);
    //Panel2.Caption := IntToStr(i)/12 ; da bekomme ich dann die Fehlermeldung ! 
    //hier wäre die Ausgabe für die Anzahl der Jahre !! 
    Panel4.Caption := FloatToStrF(ende,ffFixed,10,2);

LG GericasS

DeddyH 13. Feb 2008 11:02

Re: Variable von Int nach Float umwandeln
 
Hallo und Willkommen in der DP :dp:
Ehrlich gesagt verstehe ich das Problem nicht ganz.
Delphi-Quellcode:
var i: integer;
    d: double;
begin
  i := 10;
  d := i / 12;
end;
Das geht bei mir ohne Probleme.

sirius 13. Feb 2008 11:05

Re: Variable von Int nach Float umwandeln
 
Delphi-Quellcode:
//so
Panel2.Caption := FloatToStr(i/12);
//oder
Panel2.Caption := IntToStr(i div 12);

Klaus01 13. Feb 2008 11:05

Re: Variable von Int nach Float umwandeln
 
Hallo,

so sollte es auch gehen:

Delphi-Quellcode:
Panel2.Caption := format('%5.2f',[i/12]);
Grüße
Klaus

GericasS 13. Feb 2008 11:06

Re: Variable von Int nach Float umwandeln
 
Zitat:

Zitat von DeddyH
Hallo und Willkommen in der DP :dp:
Ehrlich gesagt verstehe ich das Problem nicht ganz.
Delphi-Quellcode:
var i: integer;
    d: double;
begin
  i := 10;
  d := i / 12;
end;
Das geht bei mir ohne Probleme.


hey,

ich kann aber i nicht einfach als 10 festlegen ? :wiejetzt:
Die Variable wird doch noch woanderst gebraucht...und ist nicht immer 10 ?


LG


//Edit :

Entschuldigung, Hallo erstmal :-D

vielen Dank für die super Möglichkeiten ich steh schon seit vorgestern aufm Schlauch
geht jetzt vielen Dank :cheers:

LG

GericasS

DeddyH 13. Feb 2008 11:12

Re: Variable von Int nach Float umwandeln
 
Zitat:

Zitat von GericasS
vielen Dank für die super Möglichkeiten ich steh schon seit vorgestern aufm Schlauch

Das Gefühl hatte ich auch, aber passiert wohl jedem mal ;)

guidok 13. Feb 2008 11:33

Re: Variable von Int nach Float umwandeln
 
Delphi-Quellcode:
Panel2.Caption := IntToStr(i)/12 ; da bekomme ich dann die Fehlermeldung !
Bei deinem ursprünglichem Code war der Hauptfehler, dass du die Variable i in einen String umgewandelt hast und anschließend versuchts den String durch 12 zu teilen. Das kann ja nichts werden, oder?

GericasS 13. Feb 2008 11:34

Re: Variable von Int nach Float umwandeln
 
Zitat:

Zitat von guidok
Delphi-Quellcode:
Panel2.Caption := IntToStr(i)/12 ; da bekomme ich dann die Fehlermeldung !
Bei deinem ursprünglichem Code war der Hauptfehler, dass du die Variable i in einen String umgewandelt hast und anschließend versuchts den String durch 12 zu teilen. Das kann ja nichts werden, oder?

o_O okay danke das ist mir gar nicht aufgefallen :wall:

LG

GericasS

Maddin1 13. Feb 2008 12:14

Re: Variable von Int nach Float umwandeln
 
wie wärs denn mit div?


Delphi-Quellcode:
 i:=i div 12;


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz