AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Gleitkommazahl

Ein Thema von Murdock · begonnen am 10. Okt 2005 · letzter Beitrag vom 10. Okt 2005
Antwort Antwort
Murdock

Registriert seit: 4. Okt 2005
Ort: Osnabrück
9 Beiträge
 
#1

Gleitkommazahl

  Alt 10. Okt 2005, 17:59
Hallo erst einmal.

Ich bin auch wie viele andere hier neu und Anfänger auf dem Gebiet der Delphi Programmierung.
Ich hoffe, dass mir einer von euch bei meinem kleinen Problem helfen kann.
Und zwar bekomme ich bei der suche nach einem Max-Wert in einer StringGrid immer die Fehlermeldung
"ist kein gültiger Gleitkommawert".
Auch das lesen hier im Forum bringt mich erlich gesagt nicht viel weiter vielleicht weiß einer von euch noch einen Rat den ich probieren könnte. hier einmal meine Procedure.

Delphi-Quellcode:
procedure TForm2.Fmax; // maximal auftretende Kraft
var i: integer;
    x,max: real;
    Fmax : string;

begin
 DecimalSeparator := ',';
with StringGrid1 do
 for i:= 1 to 360 do
 begin
        FMax:= StringGrid1.Cells[3,i];
        x:= StrToFloat(FMax);
     //if x > max then max := x;
     end
 end;
hierbei sei gesagt, dass der Wert Fmax zwischen -0,04 bis 7000,00 alles annehmen kann.

ich hoffe einer von euch kann mir ein wenig weiter helfen.

Gruß und Danke
Murdock
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Gleitkommazahl

  Alt 10. Okt 2005, 18:05
Delphi-Quellcode:
// ...
  x := StrToFloat( FMax );
// ...
Hier läuft was Falsch!
kann das sein, dass n einem der Felder kein Wert steht?
Wenn das der fall ist, kann der ja ß sein, also teste mal:
Delphi-Quellcode:
// ...
  x := StrToFloatDef( FMax, 0 );
// ...
Auch kann es an dem DecimalSeparator liegen, vielleicht ist es ja kein "," sondern ein "." ???

Bye
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Gleitkommazahl

  Alt 10. Okt 2005, 18:17
Hai Murdock,

ersteinmal: "Herzlich Willkommen in der Delphi-PRAXiS"

Wie Kedariodakon schon geschrieben hat wird der Fehler wohl bei der Umwadlung von dem String aus dem TStringGrid in die Variabel X kommen.

Du hast jetzt zwei Möglichkeiten:
  1. Du testest vor/bei der Konvertierung ob in der Zelle des StringGrid ein gültiger Flieskommawert steht
  2. Du verhinderst das in der Zelle ungültige Werte stehen

In jedem Fall würde ich an deiner Stelle vermeiden den Delphi-Referenz durchsuchenDezimalseperator im Programm zu ändern.
Nicht der Benutzer muss sich an dein Programm anpassen sondern dein Programm an den Benutzer
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Murdock

Registriert seit: 4. Okt 2005
Ort: Osnabrück
9 Beiträge
 
#4

Re: Gleitkommazahl

  Alt 10. Okt 2005, 18:28
Hallo ihr alle beide

Ich danke euch für eure schnellen Antworten und es beweist sich schon wieder einmal, dass wenn man sich austauscht das Problem nur noch halb so groß ist. Ich habe den Fehler jetzt gefunden.

Und zwar lag es wirklich daran, dass es kein gültiger Wert war. Ich hatte beim einschreiben der Werte in die Tabelle eine Einheit in Form von 'N' gehängt und dies nicht weiter bedacht. Und somit war es auch kein gültiger Wert mehr.

Ich danke euch nochmal für die schnelle Antwort und komme gerne wieder.

Gruß Murdock
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:50 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