Avatar billede nidyahou Praktikant
25. oktober 2005 - 21:50 Der 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
Avatar billede nidyahou Praktikant
25. oktober 2005 - 21:52 #1
glem den øverste "For"
Avatar billede arne_v Ekspert
25. oktober 2005 - 21:53 #2
skal du ikke have en begin end i stedet for next ?
Avatar billede arne_v Ekspert
25. oktober 2005 - 21:53 #3
og der mangler ; til sidst
Avatar billede arne_v Ekspert
25. oktober 2005 - 21:54 #4
og man bruger ikke end if i Delpho
Avatar billede arne_v Ekspert
25. oktober 2005 - 21:55 #5
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;

eller sådan noget
Avatar billede nidyahou Praktikant
25. oktober 2005 - 22:02 #6
problemet er at den giver mig en Integer og Extende fejl... man må åbenbart ikke sige sum := sum i delphi... men hvaaaaaad måååå man så ? :D
Avatar billede arne_v Ekspert
25. oktober 2005 - 22:03 #7
hvilken data type har du erklæret sum som ?
Avatar billede nidyahou Praktikant
25. oktober 2005 - 22:52 #8
integer
Avatar billede arne_v Ekspert
25. oktober 2005 - 22:55 #9
det skal nok ændres til double !
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:00 #10
har ændret til double, men den giver stadig samme fejl med interger og extend
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:06 #11
er pi også double ?
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:06 #12
må vi se hele koden ?
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:12 #13
unit DDD;

interface

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

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

Memo1.Text := IntToStr(pi)

end;

end.
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:12 #14
pi skal også være double
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:14 #15
unit DDD;

interface

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

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;


Memo1.Text := pi;

end;


end.
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:15 #16
fejlen kommer i Memo1.Text ...
den kan ikke være string og double siger den
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:17 #17
Den skal konverteres fra double to string
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:18 #18
Memo1.Text := FloatToStr(pi);
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:20 #19
drop svar
Avatar billede arne_v Ekspert
25. oktober 2005 - 23:21 #20
kommer her
Avatar billede nidyahou Praktikant
25. oktober 2005 - 23:32 #21
guut :D tusind tak for hjælpen :D
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester