AGB  ·  Datenschutz  ·  Impressum  







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

Char Vergleich mit Charfeld

Ein Thema von n00b_on_knees · begonnen am 2. Sep 2003 · letzter Beitrag vom 8. Sep 2003
Antwort Antwort
Benutzerbild von n00b_on_knees
n00b_on_knees

Registriert seit: 5. Apr 2003
128 Beiträge
 
#1

Char Vergleich mit Charfeld

  Alt 2. Sep 2003, 21:16
N'Abend!

Ich bin gerade bei einem Programm bei dem ich ja schon vor ein paar Wochen Probleme hatte, was sich aber nicht so wirklich beheben hat lassen. Jetzt habe ich das ganze etwas umgeschrieben, aber es tut sich noch immer ein Fehler auf. Ich vergleiche ein eingelesenes CharElement mit den einzelnen Elementen eines Charfeldes, doch immer wenn ich das tue, kommt eine Exception, dass das gesuchte Wort keine Integerzahl wäre. Ich frage mich natürlich was hier eine Integerzahl zu suchen hat.
Und jetzt habe ich sogar das Problem, das die .EXE Datei nicht erstellt werden kann.
Jetzt kann ich auch das ganze nicht debuggen, also frage ich wiedermal euch was da der Fehler sein könnte.

Ich poste hier den ganzen Quellcode, falls er zu lang ist oder es euch weiterhelfen würde, wenn ich das ganze als Anhang beifügen könnte, lasst es mich bitte wissen.

Der Sinn des Programms besteht darin, eben ein CharElement im StringGrid zu finden, und ab dieser Position alle Elemente des StringGrids mit einem beliebigen Wert zu füllen.

Delphi-Quellcode:
unit fCharMatrix;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;
//Konstatendeklaration
const
  M = 5;
  N = 5;
type
    TFeld = array [1..M, 1..N] of char;
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    lbGesucht: TLabel;
    edGesucht: TEdit;
    btFinden: TButton;
    procedure btFindenClick(Sender: TObject);
    procedure ReadIn(var A: TFeld; s: TStringGrid);
    procedure DeleteMatrix(var A: TFeld; s: TStringGrid; var x, y: integer);
  private
    function SubMatrix(var A: TFeld; s: TStringGrid; Ges: char; var x, y: integer): boolean;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TForm1.SubMatrix(var A: TFeld; s: TStringGrid; Ges: char; var x, y: integer): boolean;
//Variablendeklaration
var
  i, j: integer;
begin
  i:= 1;
  j:= 1;
  repeat
     if (A[i, j] = Ges) then
       begin
         x:= i;
         y:= j;
         result:= true;
       end
     else
       result:= false;
       inc(i);
       inc(j);
  until (result = true);
end;

procedure TForm1.DeleteMatrix(var A: TFeld; s: TStringGrid; var x, y: integer);
//Variablendeklaration
var
  i, j: integer;
begin
  for i:= (x+1) to M do
    for j:= (y+1) to N do
      A[i, j]:= #240;
end;

procedure TForm1.ReadIn(var A: TFeld; s: TStringGrid);
//Variablendeklaration
var
  i, j: integer;
begin
  for i:= 1 to M do
    for j:= 1 to N do
      A[i, j]:= Chr(StrToInt(s.Cells[i, j]));
end;

procedure TForm1.btFindenClick(Sender: TObject);
//Variablendeklaration
var
  Ges: char;
  s: TStringGrid;
  Gef: Boolean;
  A: TFeld;
  x, y: integer;
begin
  Readin(A, s);
  Ges:= Chr(StrToInt(edGesucht.Text));
  s:= StringGrid1;
  Gef:= SubMatrix(A, s, Ges, x, y);
  if (Gef = True) then
    DeleteMatrix(A, s, x, y);
end;

end.
Against TCPA & And I think we should live our dreams
  Mit Zitat antworten Zitat
Benutzerbild von n00b_on_knees
n00b_on_knees

Registriert seit: 5. Apr 2003
128 Beiträge
 
#2

Re: Char Vergleich mit Charfeld

  Alt 3. Sep 2003, 13:23
Mittlerweile habe ich vor alle deklarationen von "s" ein var gesetzt, und das ganze lässt sich wieder Kompilieren, allerdings taucht noch immer die selbe Exception auf, und zwar im UP "Readin" bereits beim Einlesen, obwohl ich die Buchstaben darin doch irgendwie schon einem char zuweise?
Against TCPA & And I think we should live our dreams
  Mit Zitat antworten Zitat
Benutzerbild von n00b_on_knees
n00b_on_knees

Registriert seit: 5. Apr 2003
128 Beiträge
 
#3

Re: Char Vergleich mit Charfeld

  Alt 8. Sep 2003, 11:51
Ich habe das ganze jetzt etwas abgeändert angefügt, und habe denke ich auch die Fehlerstelle gefunden: Im UP Submatrix. Im Kopf des Programms befindet sich eine Beschreibung was dieses Programm machen soll. Ich hoffe jemand ist mir so behilflich, und könnte mir so schnell wie möglich helfen, da es sehr dringend ist.

Danke im Vorraus

MFG n00b_on_knees
Angehängte Dateien
Dateityp: rar charmatrix.rar (8,3 KB, 2x aufgerufen)
Against TCPA & And I think we should live our dreams
  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 04:57 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