Einzelnen Beitrag anzeigen

Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

AW: Programm zur Bestimmung von PI - Schleife auf Knopfdruck abbrechen, aber wie?

  Alt 13. Nov 2010, 15:29
1.) Ein Viertelkreis zeichnen kannst du bestimmt Windows überlassen, so brauchst du keine Schleife.
Delphi-Quellcode:
begin
  Image1.Picture.Bitmap.Canvas.Ellipse(0, -300, 600, 300);
end;
2.) deine For-Schleife ist wahrhaftig etwas sonderbar. Delphi-Pascal != C, deshalb kannst du das nur mit einer WHILE-Struktur machen (Außerdem gibt es einen eleganteren Weg für die Abbrechung (u => Abbr (Boolean):
Delphi-Quellcode:
var i: Integer;
begin
  Abbr := false;
  while not Abbr do
  begin
    Application.ProcessMessages;
    //...
  end;
end;
Dein Abbrechen sieht dann einfach so aus, dass du Abbr auf TRUE setzt.

2. Wie lautet der richtige Quellcode für die Berechnung von PI:=((4*Viertelkreispixel)/Gesamtzahlpixel)? Anders gefragt: Welche Typen müssen die Variablen haben?
PI sollte dann mindestens Single sein (Das reicht IMHO für 12 Nachkommastellen, wenn nicht Double).
Die Variable Viertelkreispixel reicht, wenn sie Integer ist. So viele Pixel und vor allem Zeit hast du gar nicht zur Verfügung (Integer geht bis 2 Mrd). Für Gesamtpixel reicht dann auch Integer. Du kannst diese allerdings beide nicht errechnen, sondern darfst deine Pixelregen-Funktion dahingehend umschreiben, dass die automatisch die entsprechenden Werte aktualisiert.

Bernnhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat