Schreiben Sie eine Procedure, die einen Text nach einem String durchsucht und die Anzahl über eine
Referenzvariable ausgibt.(Procedure String_Zaehler(VAR T:Textfile; s:string, VAR Anz: Integer)).
Schreiben Sie auch das Rahmenprogramm dazu in dem der Text über ein opendialog ausgewählt wird.
Der der zu suchende String wird über ein Editfeld eingegeben und die Anzahl in einem Label ausgegeben.
das ist die aufgabe
Wenn das die Aufgabe ist, warum ist dann deine procedure nicht so deklariert?
Deine
Delphi-Quellcode:
procedure String_Zaehler(const AStr : String; var APosition : Integer );
begin
...
end;
und so soll die laut Aufgabe aussehen
Delphi-Quellcode:
procedure String_Zaehler( var T : Textfile; s : string; var Anz : Integer );
begin
...
end;
UPDATE
Ich kann ja mal von Lehrerisch auf Deutsch übersetzen
Delphi-Quellcode:
procedure String_Zaehler(
var T : Textfile; // Datei, in der gesucht werden soll (als Textfile-Referenz)
s : string; // Suchtext
var Anz : Integer // Anzahl der gefundenen Stellen
);
begin
...
end;
und das geforderte Rahmenprogramm hast du ja schon fertig, darum baue ich dir diese Procedure da mal ein:
Delphi-Quellcode:
procedure TForm1.Button1Click( Sender: TObject );
var
LDateiname : String;
LDatei : Textfile;
LAnzahl : Integer;
begin
if OpenDialog1.Execute then
begin
LDateiname := OpenDialog1.Filename;
AssignFile( LDatei, LDateiname );
Reset( LDatei );
LAnzahl := 0;
String_Zaehler( LDatei, Edit1.Text, LAnzahl );
Label2.Caption := IntToStr( LAnzahl );
end;
CloseFile( LDatei );
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)