25. oktober 2005 - 21:50Der er
20 kommentarer og 1 løsning
Problemer med udregning
hvor kan følgende ikke lade sig gøre?
For I := 0 to 20 do sum := 1 For I := 1 To StrToInt(Edit1.Text) Do If I Mod 2 = 0 Then sum := sum + 1 / (2 * i + 1) Else sum := sum - 1 / (2 * i + 1) End If Next pi = 4 * sum Next
Memo1.Text := IntToStr(pi)
Jeg får forskellige fejl, blandt andet i selve "For" sætningen, men også en Incompatible types: 'Integer' and 'Extended' Fejl ved sum
sum := 1; For I := 1 To StrToInt(Edit1.Text) Do Begin If (I Mod 2) = 0 Then sum := sum + 1 / (2 * i + 1) Else sum := sum - 1 / (2 * i + 1); End; pi = 4 * sum;
type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; Label1: TLabel; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); Var i:integer; Var sum:double; Var pi:integer;
begin sum := 1; For i := 1 To StrToInt(Edit1.Text) Do Begin If i Mod 2 = 0 Then sum := sum + 1 / (2 * i + 1) Else sum := sum - 1 / (2 * i + 1) End; pi := 4 * sum; Next
type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; Label1: TLabel; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); Var i:integer; Var sum:double; Var pi:double;
begin sum := 1; For i := 1 To StrToInt(Edit1.Text) Do Begin If i Mod 2 = 0 Then sum := sum + 1 / (2 * i + 1) Else sum := sum - 1 / (2 * i + 1) End; pi := 4 * sum;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.