AGB  ·  Datenschutz  ·  Impressum  







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

Rechtschreibprüfung

Ein Thema von foerster7892 · begonnen am 29. Jan 2009 · letzter Beitrag vom 29. Jan 2009
 
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#1

Rechtschreibprüfung

  Alt 29. Jan 2009, 07:45
Hi@all,
Ich hab versucht (wie man unten sieht) eine Rechtschreibprüfung zu entwerfen.
Leider funktioniert sie nicht richtig.

1.Problem
Es gibt keine Textdokumente mit nem Duden drin(für den Test hat mir zum Glück gereicht nen Txt mit nen paar Worten zu nutzen)
2.Problem
Es erkennt keine einzelnen Wörter was es aber laut quelltext machen sollte
3.Problem
Wenn ich den Button ein 2.Mal drücke hängt es sich auf
4.Problem
Es erkennt Fehler bei einzelnen Wörtern, aber wenn richtig dann 3.




Delphi-Quellcode:
const Worterbuch = 'C:\Users\user\Desktop\Wörterbuch.txt';

var
  Form4: TForm4;
  Eingabe, Zwablage, Fehler, Mistake :String;
  Beginn, Laenge, Ende, richtig, LaengeS :Integer;

implementation

{$R *.dfm}

function Falsch(Kontrolle :boolean; Ende, Anfang :integer):string;
var Wort, Woerter :string;
begin
  if Kontrolle=false then
  begin
    Wort := copy(Eingabe, Anfang, Ende);
    Woerter := Woerter +Wort + ', ';
    Falsch := Woerter;
    richtig := richtig + 1;
  end;
end;

function Kontrollf(Ende, Anfang :integer):boolean;
var Buch :textfile;
    Wort :string;
    richtig :integer;
begin
  richtig := 0;
  Zwablage := copy(Eingabe, Anfang, Ende-1);
  AssignFile(Buch, Worterbuch);
  reset(Buch);
  repeat
    readln(Buch, Wort);
    if Zwablage = Wort then
    richtig := richtig+1;
  until ((Zwablage = Wort) or (EOF(Buch)));
  if richtig = 1 then
  Kontrollf := true
  else
  Kontrollf := false;
end;

function Rechtschreibung(Eingabe:string):string;
var Anfang :integer;
    Kontrolle :boolean;
    Wort, Worter :string;
begin
  Anfang := Ende;
  repeat
    Beginn := Beginn + 1;
    Ende:= Ende + 1;
    Laenge := Laenge + 1;
    Zwablage := copy(Eingabe, Beginn, Ende);
  until ((Zwablage = ' ') or (Laenge=LaengeS));
  Kontrolle := Kontrollf(Anfang, Ende);
  Wort := Falsch(Kontrolle, Ende, Anfang);
  Worter := Worter + Wort;
  Rechtschreibung := Worter;
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
  richtig := 0;
  Beginn := 0;
  Ende := 0;
  Eingabe := Edit1.Text;
  LaengeS:=length(Eingabe);
  repeat
    Fehler := Rechtschreibung(Eingabe);
  until (LaengeS=Laenge);
  if richtig >= 1 then
  Showmessage('Diese Wörter haben sie falsch geschrieben: ' + Fehler)
  else
  Showmessage('Alles richtig');
end;

end.

Könnt ihr mir helfen (aber bitte keine vollkommende Umstrukturierung des Quelltextes k? bin happy das so geschafft zu haben bisher)
  Mit Zitat antworten Zitat
 


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 22:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz