AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Zahl im 2D_array speichern >>" ist kein Gleitkommawert<&
Thema durchsuchen
Ansicht
Themen-Optionen

Zahl im 2D_array speichern >>" ist kein Gleitkommawert<&

Ein Thema von zuflucht · begonnen am 4. Dez 2008 · letzter Beitrag vom 6. Dez 2008
Antwort Antwort
zuflucht

Registriert seit: 4. Dez 2008
4 Beiträge
 
Delphi 2005 Personal
 
#1

Zahl im 2D_array speichern >>" ist kein Gleitkomm

  Alt 4. Dez 2008, 11:42
hi ich schreibe ein programm mit dem man mit einer matrix rechnen kann.
ich möchte nun die eigegebenen zahlen in einem 2Dimensionalen Array of real speichern.
bekomme jedoch die fehlermedlung, dass > " < kein gültiger Gleitkommawert sei.
woran kann es liegen, und wie behebe ich dies?

Hier noch die wichtigen stellen aus meinem Programmcode:


Delphi-Quellcode:
var
  Form1: TForm1;
  a, b, c, d, e, hoch: integer;
  Matrix1: array [5..50] of Tedit;
  Matrix2: array [51..100] of Tedit;
  ElementM1: array [1..99, 1..99] of real;
  ElementM2: array [1..99, 1..99] of real;
  m1, m2: Integer;
  Zeile, Spalte: integer;


procedure TForm1.Button1Click(Sender: TObject);
var i,j :integer;
begin // "Matrix1Layout" erstellen
  a:=strtoint (edit1.text);
  b:=strtoint (edit2.text);
  hoch:=20;
  m1:=5;
  for j:=1 to b do
   begin
   e:= 20;
   for i:=1 to a do
    begin
    Matrix1[m1]:=TEdit.Create(Panel1);
    Matrix1[m1].parent:=Panel1;
    Matrix1[m1].top:=hoch;
    Matrix1[m1].left:=e;
    Matrix1[m1].height:=20;
    Matrix1[m1].width:=20;
    Matrix1[m1].Visible:=true;
    Matrix1[m1].enabled:=true;
    Matrix1[m1].text:='';
    Matrix1[m1].show;
    e:=e+20;
    m1:=m1+1;
    end;
   hoch:=hoch+15;
   end;
end;


procedure TForm1.Button3Click(Sender: TObject);
var i:integer; // "Save"
begin // Aus MAtrix1Layout Zahlen in ElementM1[Zeile, Spalte] speichern
  Zeile:=1;
  Spalte:=1;
  for i:=5 to m1 do
  begin
  ElementM1[Zeile, Spalte]:=StrToFloat (Matrix1[i].text);
  Zeile:=Zeile+1;
  Spalte:=Spalte+1;
  end;
end;

im vorraus schon mal nen ganz dickes danke.
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Zahl im 2D_array speichern >>" ist kein Gleit

  Alt 4. Dez 2008, 11:45
Zitat von zuflucht:
Delphi-Quellcode:
    Matrix1[m1].text:='';
//[..]
  ElementM1[Zeile, Spalte]:=StrToFloat (Matrix1[i].text);
Ist es eventuell möglich, dass, nachdem Matrix[m1].Text geleert wurde, dort nichts reingeschrieben wird? Denn später versuchst du den Inhalt davon in eine Zahl umzuwandeln, aber wenn nichts drin steht, gibts natürlich ne Exception.
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
zuflucht

Registriert seit: 4. Dez 2008
4 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Zahl im 2D_array speichern >>" ist kein Gleit

  Alt 4. Dez 2008, 11:46
doch ich habe in jeden edit was reingeschrieben, also eine zahl ^^
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Zahl im 2D_array speichern >>" ist kein Gleit

  Alt 4. Dez 2008, 12:17
Dann Debug mal (F7 statt F9 zum starten), dann siehst du ja, wo der Fehler auftritt.
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
zuflucht

Registriert seit: 4. Dez 2008
4 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Zahl im 2D_array speichern >>" ist kein Gleit

  Alt 4. Dez 2008, 12:48
er gibt mir an folgender steller ein pfeil, aber keine meldung dazu:

Delphi-Quellcode:
program Pmatrix;

uses
  Forms,
  Umatrix in 'Umatrix.pas{Form1};

{$R *.res}

->begin
   Application.Initialize;
   Application.CreateForm(TForm1, Form1);
   Application.Run;
  end.
sollte er was geändert haben, hat es nichts geholfen da der fehler immer noch besteht.
  Mit Zitat antworten Zitat
zuflucht

Registriert seit: 4. Dez 2008
4 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Zahl im 2D_array speichern >>" ist kein Gleit

  Alt 6. Dez 2008, 19:46
ich habe den Fehler gefunden:

durch die zeile
m1:=m1+1; wird m1 hochgesezt obwohl kein weiterer Edit erstellt wird. dadurch wird bei:
Delphi-Quellcode:
for i:=5 to m1 do
  begin
ein Edit abgefragt, das es gar nicht gibt, somit auch keinen wert haben kann.


ich habe also einfach am ende der procedure ein m1:=m1-1; eingefügt welches das problem behebt
  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 23:23 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