Entwickler-Ecke
Algorithmen, Optimierung und Assembler - Pi mit Pythagoras berechnen
Bastian25 - So 12.12.04 19:12
Titel: Pi mit Pythagoras berechnen
Hallo!
Habe mal wieder keine Ahnung, wie ich die folgende Aufgabe lösen soll!!!
Würde mich freuen, wenn mir jemand helfen könnte!
Pi mit Pythagoras berechnen
in Halbkreis wird durch Rechtecke angenähert. Zunächst hat der erste Rechenlauf ein
Rechteck mit der Höhe R im Vergleich mit der Halbkreisfläche. Dann wird die Höhe halbiert, 2
Rechtecke haben jeweils die Höhe R/2. Die Breite des Rechtecks ergibt sich jeweils aus dem
Satz des Pythagoras. Dann wird der Radius gedrittelt, und neue Rechtecke bestimmt. Die
Summe der Rechteckflächen wird jedes mal mit der Fläche des Halbkreises verglichen, die am
Anfang des Programms ausgerechnet wurde. Ist die Abweichung kleiner als 1/10 Promille wird
die Rechnung abgebrochen und das Ergebnis ausgegeben (mit der Anzahl der Rechtecke).
Man kann die Ergebnisse für jeden Schritt in einem Memofeld speichern.
Gruß Bastian
Moderiert von
Christian S.: Topic aus Multimedia / Spiele / Grafik verschoben am So 12.12.2004 um 23:57
AXMD - So 12.12.04 19:26
Sag nichts, lass mich raten:
1.) Du stellst die Aufgabe hier rein und möchtest, dass sie jemand von uns für dich programmiert
2.) Du lieferst weder einen Ansatz noch Codeschnipsel, die zeigen könnten, dass du dich auch nur ansatzweise mit der Implementierung der Aufgabe auseinandergesetzt hast
Selber denken, dann fragen. Danke :roll:
AXMD
Bastian25 - So 12.12.04 19:28
Ein Ansatz würde mir ja auch helfen!
Ich will ja gar nicht das ganze programm, möchte ja auch was lernen!
Aber ich habe absolut keine ahnung, wie ich beginnen soll!
Kroni - So 12.12.04 19:33
guck doch mal in ein mathelexikon....sowas gibts bestimmt auch im internet, und dann guckste, wie das funktioniert, wie man das pi nach dem pythagoras berechnet, in dem du wie du schon sagtest immer sichi näher annähert.....
wenn dud as verstatnden hast, musste das nur noch in Quellcode packen....das kannst du!!!!!
Bastian25 - So 12.12.04 21:22
So, habe jetzt mal nen Programm geschrieben!
Leider stürzt es ab, bzw. hängt sich an der Berechnung auf!!!!????!!!!
Wisst ihr vielleicht ne Lösung für das problem?
procedure TForm1.Button1Click(Sender: TObject);
var i,
kasten :integer;
radius,
breite,
hoehe,
kflaeche,
p,
halbkreis,
gen_promille,
faktor :double;
genau :boolean;
begin
i:= 0;
kflaeche:=0;
breite:=0;
radius:=strtofloat(edit1.Text);
gen_promille:=strtofloat(edit2.Text);
faktor:=1-gen_promille/1000;
halbkreis:=(pi*Sqr(radius))/2;
kasten:=0;
genau:=false;
while not genau do
begin
inc(kasten);
kflaeche:=0;
for i:=0 to (kasten-1) do
begin
hoehe:=radius/kasten;
if i=0
then breite:=2*radius;
kflaeche:=kflaeche+(hoehe*breite);
end;
if halbkreis >= (kflaeche*faktor) then genau:=true;
end;
p:=(kflaeche*2)/(Sqr(radius));
label3.caption:=floattostr(p);
label4.caption:=inttostr(i);
end;
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!