AGB  ·  Datenschutz  ·  Impressum  







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

Delphi meckert bei Case of...kA warum?!?

Ein Thema von SimOr · begonnen am 12. Feb 2004 · letzter Beitrag vom 14. Feb 2004
Antwort Antwort
SimOr

Registriert seit: 25. Sep 2003
Ort: Moers
33 Beiträge
 
Delphi 7 Enterprise
 
#1

Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 15:54
Jo, also delphi meckert komischerweise bei case of...was ich überhaupt nicht versteh...
also, ich hab mal so klein privat und ganz allein ein program geschrieben das die pq formel ausrechnet, so als übung.
mit dem rechnerischen gibts da auch kein problem, und ohne case of läuft das program auch, ach..ich zeig euch erstmal den source
Delphi-Quellcode:
  private
    { Private-Deklarationen }
    //Variabeln
    P, Q, X1, X2, D : Real;
    M : Integer;
    //Procedures
    procedure Pq;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

Procedure TForm1.Pq;
//Eingabe und Abfrage von P, Q
begin
P:=StrtoFloat(EdP.text);
Q:=StrtoFloat(EdQ.text);
//Berechnung von "minus P halbe" und zuweisung von X1, X2
X1:=(P * -1) / 2;
X2:=(P * -1) / 2;
//Berechnung der Diskriminanten
D:=sqr(P / 2) - Q;
//If Abfrage zum verhindern von Abstürzen ( D < 0)
If D < 0 then
  begin
  Memo1.Lines.add('Die Gleichung besitzt keine Lösung');
  end
  else
//Ausrechnen von X1, X2
begin
X1:=X1 + sqrt(D);
X2:=X2 + sqrt(D);
end;
//Benutzen einer Marker Variabel für Antwortsatz
If D < 0 then
  M:=1
  else
    begin
    If D = 0 then
      M:=2
      else
      M:=3;
    end;
end;
//Case M of für Antwortsatz
Case M of
1 : Memo1.lines.add('Die Gleichung hat keine Lösung');
2 : Memo1.lines.add('Die Gleichung hat eine Lösung');
3 : Memo1.lines.add('Die Gleichung hat zwei Lösungen');
end

procedure TForm1.Button1Click(Sender: TObject);
begin
Pq;
end;

end.
also
wenn ich das case rauslasse geht das programm, auch wenns noch nich soweit ist was auszugeben, is auch inich von belang hier...aber sobald ich das case of reinschreib sagt der deklaration erwartet aber case gefunden...und hält genau hinter dem case an..?!?
naja, weiß nich was delphi von mir will..wisst ihrs?!?
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 15:57
ein case bereich wird miteinem end abgeschlossen:

Delphi-Quellcode:
Case x of
  1: ...;
  2: ...;
end; //Bei dir fehlt ein END
Man liest sich, Stanlay
  Mit Zitat antworten Zitat
SimOr

Registriert seit: 25. Sep 2003
Ort: Moers
33 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 15:58
hmz, ich hab da doch eins...?!?
  Mit Zitat antworten Zitat
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#4

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 15:59
hi, beim letzten end fehlt das Semikolon und ich zähle auch ein end zu viel. Muss mal nachzählen und evtl. ein bisschen sinnvoller einrücken, dann siehst du die Fehler schneller
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#5

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 16:07
Delphi-Quellcode:
Procedure TForm1.Pq;
//Eingabe und Abfrage von P, Q
begin
.
.
.
  //Berechnung von "minus P halbe" und zuweisung von X1, X2
.
.
.
//Berechnung der Diskriminanten
.
//If Abfrage zum verhindern von Abstürzen ( D < 0)
  If D < 0
  THEN
    begin
     
    end
  ELSE
//Ausrechnen von X1, X2
    begin

    end;
//Benutzen einer Marker Variabel für Antwortsatz
  IF D < 0
  THEN
  .
  ELSE
    begin
      IF D = 0 THEN
      .
      ELSE
      .
    end;

//Case M of für Antwortsatz
Case M of
.
.
.
end;
end;
Wenn ich mich nicht vertippt hab, sollte die Struktur so in der Richtung aussehen. mir is grade auch aufgefallen, dass vor dem Case wirklich ein end zuviel war.

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
Benutzerbild von Legolas
Legolas

Registriert seit: 28. Sep 2003
Ort: Frankfurt am Main
72 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 12. Feb 2004, 16:25
Hallo,

ich habe das ganze mal auseinander genommen. Mein Resultat ist das ein "end" an der falschen stand. Habe es mal korriegiert und richtig formatiert.

Ich denke so sollte es funktionieren (hab's net probiert).

Delphi-Quellcode:
  private
    { Private-Deklarationen } 
    //Variabeln
    P, Q, X1, X2, D : Real;
    M : Integer;
    //Procedures
    procedure Pq;
  public
    { Public-Deklarationen } 
  end;

var Form1: TForm1;

implementation

{$R *.dfm} 

Procedure TForm1.Pq;
  //Eingabe und Abfrage von P, Q
begin
  P:=StrtoFloat(EdP.text);
  Q:=StrtoFloat(EdQ.text);
  X1:=(P * -1) / 2; //Berechnung von "minus P halbe" und zuweisung von X1, X2
  X2:=(P * -1) / 2;
  D:=sqr(P / 2) - Q; //Berechnung der Diskriminanten
  If D < 0 then //If Abfrage zum verhindern von Abstürzen ( D < 0)
  begin
    Memo1.Lines.add('Die Gleichung besitzt keine Lösung');
  end
  else
  begin
    X1:=X1 + sqrt(D); //Ausrechnen von X1, X2
    X2:=X2 + sqrt(D);
  end;
  If D < 0 then //Benutzen einer Marker Variabel für Antwortsatz
    M:=1
  else
  begin
    If D = 0 then
      M:=2
      else
      M:=3;
    // end; <- Eine End zuviel
  end;
  Case M of //Case M of für Antwortsatz
    1 : Memo1.lines.add('Die Gleichung hat keine Lösung');
    2 : Memo1.lines.add('Die Gleichung hat eine Lösung');
    3 : Memo1.lines.add('Die Gleichung hat zwei Lösungen');
  end;
end; <- dieses End fehlte

procedure TForm1.Button1Click(Sender: TObject);
begin
  Pq;
end;

end.
Grüße Legolas

Wissen ist Macht.
Wir wissen nichts, macht nichts.
  Mit Zitat antworten Zitat
SimOr

Registriert seit: 25. Sep 2003
Ort: Moers
33 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Delphi meckert bei Case of...kA warum?!?

  Alt 14. Feb 2004, 10:12
Ja, danke...das wars...ich hab da nochwas geändert im code, das hat sich dann quasi ausgeglichen..vielen dank leute
  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 09: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