Registriert seit: 19. Jun 2003
Ort: magdeburg
13 Beiträge
Delphi 5 Enterprise
|
MONTE-CARLO-METHODE
19. Jun 2003, 13:09
hallo,
ich soll für mein dämliches studium ein beleg schreiben in delphi, nur blöd wenn man das nie hatte...
ich hba ma angefangen
komm aba so richtig nich weiter
wenn sich jmd damit auskennt, der möge sich bitte melden
Delphi-Quellcode:
unit beleg;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
START: TButton;
ENDE: TButton;
x: TLabel;
Edit5: TEdit;
procedure ENDEClick(Sender: TObject);
procedure STARTClick(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
FUNCTION FKT(a,b,n,x:real):real;
begin
fkt:=a*exp (- x); end;
procedure TForm1.ENDEClick(Sender: TObject);
begin
close
end;
procedure TForm1.STARTClick(Sender: TObject);
var a,b,n,fi,x,y1,ymax: real;
fc,i,int: integer;
begin
if (a<1) then begin
messagedlg(
' untere grenze a muss groesser 1 sein!',
mtError,[mbOK],0);
Edit1.text:=' a';
Edit1.setfocus;
exit;
end;
if (b<=a) then begin
messagedlg(
' obere grenze b muss groesser untere grenze a sein!',
mtError,[mbOK],0);
Edit2.text:=' b';
Edit2.setfocus;
exit;
end;
begin
int :=Random(100);
if (int>a) and (int<b) then
begin
y1:= a*exp(int)-int;
end;
begin
i :=Random(100);
if (i>=0) and (i<ymax) and (i<=y1) then
begin
i:=1+random(100);
end;
a:= StrToInt(Edit1.Text);
x:= StrToInt(Edit5.Text);
b:= StrToInt(Edit2.Text);
n:= StrToInt(Edit3.Text);
ymax:=a*exp(b)-b;
fi:=(b-a)*ymax/n;
Edit4.Text := FloatToStr(fi);
end;
end.
danke
[edit=Daniel B]Delphi-Tags eingefügt. MfG Daniel B.[/edit]
|
|
Zitat
|