Ergebnis 1 bis 8 von 8
  1. #1
    Sobig Wurm
    Registriert seit
    19.06.2007
    Beiträge
    215

    Standard [Delphi] Fehlermeldung: Nicht genügend wirkliche Parameter

    Hi ich bin in Delphi blutiger Anfänger und habe ein Problem mit einem Programm zur Dreiecksberechnung das ich grade als Übung programmiere, hier der Quelltext
    unit Dreieck;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls, Buttons, ExtCtrls;

    type
    TForm1 = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    EditSeitea: TEdit;
    EditSeiteb: TEdit;
    EditFlaeche: TEdit;
    EditUmfang: TEdit;
    EditSeitec: TEdit;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure Dreieck2(a,b,c:Real;var Umfang,Flaeche:Real);
    private
    { Private-Deklarationen }
    public
    { Public-Deklarationen }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
    Close;
    end;

    procedure TForm1.Dreieck2(a,b,c:Real ;var Umfang,Flaeche:Real);
    var s : Real;
    begin
    Umfang:=a+b+c;
    s:=Umfang/2;
    Flaeche:=Sqrt(s*(s-a)*(s-b)*(s-c));
    end;

    procedure TForm1.BitBtn1Click(Sender: TObject);
    var Umfang,Flaeche,a,b,c : Real;
    begin
    a:=StrToFloat(EditSeitea.Text);
    b:=StrToFloat(EditSeiteb.Text);
    c:=StrToFloat(EditSeitec.Text);
    EditUmfang.Text:=FloatToStr(Umfang);
    EditFlaeche.Text:=FloatToStr(Flaeche);
    Dreieck2(Umfang,Flaeche);
    end;
    end.
    Bei der roten Zeile kommt folgende Fehlermeldung:"[Fehler] Dreieck.pas(68): E2035 Nicht genügend wirkliche Parameter"
    Bitte um Hilfe!

  2. #2
    CIH-Virus Avatar von Steiger_mp
    Registriert seit
    18.08.2007
    Beiträge
    485

    Standard

    ja da fehlen parameter
    da müsste Dreieck2(Umfang, Flaeche, xxx);
    oder so stehn^^
    /edit: oder denke an das komma
    Gerne würde ich dumme Antworten anderer User zitieren um mein Ego zu steigern. Nur leider passt das halbe Forum nicht in meine Signatur.

  3. #3
    Anfänger
    Registriert seit
    22.07.2007
    Beiträge
    22

    Standard

    procedure TForm1.Dreieck2(a,b,c:Real ;var Umfang,Flaeche:Real);

    Ich denke Delphi erwartet das du hier :

    Dreieck2(Umfang,Flaeche);
    noch die werte für a,b und c an gibst.

    Bin mir aber nicht hundertpro sicher.

  4. #4
    CIH-Virus Avatar von Steiger_mp
    Registriert seit
    18.08.2007
    Beiträge
    485

    Standard

    ja lopi hat recht..lösch einfach mal die variable c^^
    Gerne würde ich dumme Antworten anderer User zitieren um mein Ego zu steigern. Nur leider passt das halbe Forum nicht in meine Signatur.

  5. #5
    W32.Klez
    Registriert seit
    23.05.2007
    Beiträge
    401

    Standard

    Dreieck2(a,b,c,Umfang,Flaeche);
    Klaro?
    Länge a mitgeben, b mitgeben, c, und dann den Umfang, und die Flaeche.
    Du hast in die Funktion mehr Parameter reingesteckt, als du verwendest.
    Du solltest Delphi lernen.... in der Schule (oder was das für ein Projekt war) lernt man wenig über die Sprache ... die wollen nämlich nur, dass du ein bestimmtes Ziel erreichst ... ob du was dabei lernst ist realtiv egal (komisch wa?)
    Micah joined #CS
    0meg4: kA mehr wo das war, musst mal gucken
    0meg4: Hi Micah
    Micah: Welche von euch Fotzen möchte mal geleckt werden?!
    Jacks^2: o_O
    Micah: ja komm gibs mir... erzähl was!
    Micah: hab schon die ganze Zeit einen richtig harten
    0meg4: Ich glaub du hast da was verwechselt. Du bist hier im #CS was für "Counter-Strike" steht, nicht für "Cyber-Sex" :-O
    Micah: Verdammt.
    Micah left #CS
    Jacks^2: lol xD
    0meg4: xD

  6. #6
    Tron Avatar von gORDon_vdLg
    Registriert seit
    23.07.2007
    Beiträge
    801

    Standard

    umfang und fläche sollen berechnet werden wenn ich das richtig verstanden habe oder?? adde mich mal bei icq (294-632-347) dann bring ich dir den source zum laufen und versuch dir das mal n bisschen zu erklären

  7. #7
    W32.Klez
    Registriert seit
    23.05.2007
    Beiträge
    401

    Standard

    Wie wärs, wenn ihr aufhört hier wild in irgendwelchen Threads Kontakte zu knöpfen um Privat-Unterricht, anstatt mal den Sinn eines Forums zu verstehen.
    Micah joined #CS
    0meg4: kA mehr wo das war, musst mal gucken
    0meg4: Hi Micah
    Micah: Welche von euch Fotzen möchte mal geleckt werden?!
    Jacks^2: o_O
    Micah: ja komm gibs mir... erzähl was!
    Micah: hab schon die ganze Zeit einen richtig harten
    0meg4: Ich glaub du hast da was verwechselt. Du bist hier im #CS was für "Counter-Strike" steht, nicht für "Cyber-Sex" :-O
    Micah: Verdammt.
    Micah left #CS
    Jacks^2: lol xD
    0meg4: xD

  8. #8
    Tron Avatar von gORDon_vdLg
    Registriert seit
    23.07.2007
    Beiträge
    801

    Standard

    ist halt blöd die ganzen sachen im forum zu erklären, per messenger ist es einfacher

    edit: probier mal folgendes:
    Code:
    unit Dreieck;
    
    interface
    
    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls, Buttons, ExtCtrls;
    
    type
    TForm1 = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    EditSeitea: TEdit;
    EditSeiteb: TEdit;
    EditFlaeche: TEdit;
    EditUmfang: TEdit;
    EditSeitec: TEdit;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    //deklaration wie unten angepasst
    function Dreieck2(a,b,c:Real):real;
    private
    { Private-Deklarationen }
    public
    { Public-Deklarationen }
    end;
    
    var
    Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
    Close;
    end;
    
    //hier mal ne änderung: variablen mit unten ins var geschrieben (oben auch ändern!!)
    //außerdem ist es jetzt eine function
    //flaeche gekillt
    function TForm1.Dreieck2(a,b,c:Real):real;
    var s,Umfang : Real;
    begin
    Umfang:=a+b+c;
    s:=Umfang/2;
    result:=Sqrt(s*(s-a)*(s-b)*(s-c));
    end;
    
    //diese procedure hab ich mal komplett umgebastelt
    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
    EditUmfang.Text:=floattostr(StrToFloat(EditSeitea.Text)+StrToFloat(EditSeiteb.Text)+StrToFloat(EditSeitec.Text));
    EditFlaeche.Text:=Dreieck2(StrToFloat(EditSeitea.Text),StrToFloat(EditSeiteb.Text),StrToFloat(EditSeitec.Text));
    end;
    end.

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •