Hallo,
beachte bitte auch die Hinweise, die ich paar Postings weiter unten zum Thema Debuggen gegeben habe.
Dann kommst du womöglich auch selber besser zurecht.
-> „Re: Delphi Shellsort - Zahlen sortieren“
/t/delphi-shellsort-zahlen-sortieren/7231773/2
Gruß Uwi
ich arbeite grad im Rahmen einer Hausaufgabe an einem
Delphi-projekt mir record und array. Ich weiß hier darf man
keine HA reinstellen aber ich hab das Programm schon fertig
nur zeigt es mir immer wenn ich grad eine csv -Datei öffnen
möchte und sie in eine Tabelle reinladen möchte : ‚‘ ist kein
gültiger Gleitkommawert !" ??? Ich hab echt keine Ahnung wie
ich das Problem beheben soll. Könnt Ihr mir vllt. helfen ?MEIN QUELLTEXT:
unit UnitMain;
// Felix Schmidt, GYB12
interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs,
Menus, Grids;type TBundesland = record // record für Bundesländer
BLID :string[2]; // Bundesländer - ID (max 2
Zeichen)
BLName :string[40]; // Bundesländername (max. 30
Zeichen)
BLHauptstadt :string[30]; // Bundesländerhauptstadt (max.
10 Zeichen)
BLEinwohner :real; // Bundesländereinwohner
BLFlaeche :real; // Bundesflächeend;
type
TFormMain = class(TForm)
MainMenu1: TMainMenu;
OpenDialog: TOpenDialog;
Menu1: TMenuItem;
N1: TMenuItem;
ffnen1: TMenuItem;
StringGrid: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure ffnen1Click(Sender: TObject);
private
{ Private-Deklarationen }
datei :textfile; // Dateivariable
(textfile)
Blaender :array[1…15] of TBundesland; // array für 16
Bundesländer
procedure BLaender_laden; // Procedure für das
Laden der Bundesländer
procedure BLaender_ausgabe; // Procedure für das
Ausgeben der Bundesländer
public
{ Public-Deklarationen }
end;var
FormMain: TFormMain;implementation
{$R *.DFM}
{ TFormMain }
procedure TFormMain.BLaender_ausgabe;
var i :integer;
begin
For i:=1 To 15 DO
Begin
StringGrid.Cells[1,i]:=Blaender[i].BLID;
StringGrid.Cells[2,i]:=Blaender[i].BLName;
StringGrid.Cells[3,i]:=Blaender[i].BLHauptstadt;
StringGrid.Cells[4,i]:=floattostr(Blaender[i].BLEinwohner);
StringGrid.Cells[5,i]:=floatotstr(Blaender[i].BLFlaeche);
end;
end;procedure TFormMain.BLaender_laden;
var datenzeile :string; zeile :integer;
begin
assignfile(datei,opendialog.filename);
reset(datei);
readln(datei);For zeile:= 1 TO 15 Do
Begin
readln(datei,datenzeile);Blaender[zeile].BLID:=copy(datenzeile,1,pos(’;’,datenzeile)-1);
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLName:=copy(datenzeile,1,pos(’;’,datenzeile)-1
);
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLHauptstadt:=copy(datenzeile,1,pos(’;’,datenze
ile)-1);
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLID:=copy(datenzeile,1,pos(’;’,datenzeile)-1);
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLID:=copy(datenzeile,1,pos(’;’,datenzeile)-1);
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLEinwohner:=strftoloat(copy(datenzeile,1,pos(’
;’,datenzeile)-1));
delete(datenzeile,1,pos(’;’,datenzeile));Blaender[zeile].BLFlaeche:=strtofloat(copy(datenzeile,1,pos(’;’
,datenzeile)-1));
delete(datenzeile,1,pos(’;’,datenzeile));
end;closefile(datei);
end;
procedure TFormMain.FormCreate(Sender: TObject); //
Tabellenbeschriftung
begin
StringGrid.Cells[0,0]:=‚Bundesland-ID‘;
StringGrid.Cells[1,0]:=‚Bundeslandname‘;
StringGrid.Cells[2,0]:=‚Bundeslandhauptstadt‘;
StringGrid.Cells[3,0]:=‚Bundeslandeinwohner‘;
StringGrid.Cells[4,0]:=‚Bundeslandfläche‘;
end;procedure TFormMain.ffnen1Click(Sender: TObject);
begin
IF opendialog.Execute Then
Begin
BLaender_laden;
BLaender_ausgabe;
end;end;
end.