Ich stelle euch hier mal mein, noch nicht ganz fertiges Programm vor, mit dem man ganz leicht quadratische Funktionen berechnen kann. Das Programm benutzt die PQ-Formel zum errechnen von x1 und x2, welche man in der Mathematik normalerweise als Nullpunkte auf der X-Achse bezeichnet, wie es sie z.B. häufig bei Parabeln gibt. Im moment kann das Programm nur Funktionen mit Additionen rechnen, ich füge aber später mehr hinzu. Kiddies die in der Schule also Nullstellen berechnen müssen könnens ja mal verwenden. Das ist mein zweites Programm in Delphi ich würde mich als um konstruktive Kritik o.a. freuen. :lol
Features:
- Nullstellen quadratischer Funktionen berechnen ( f(x)=ax²+bx+c )
- Übersichtlich designed
- Überprüft ob die Zahl unter dem Wurzel Schritt negativ ist und gibt eine Warnung aus
- Lasst euch von den Labeln mit + nicht verwirren ihr könnt auch negative Zahlen in die Felder eingeben, da - und + wieder - ergibt!
-Source Code liegt bei
procedure TForm1.CalculateBtnClick(Sender: TObject);
begin
xq := StrToFloat(EditXQ.Text); { xq aus EditXQ holen }
p := StrToFloat(EditP.Text); { p aus EditP holen }
q := StrToFloat(EditQ.Text); { q aus EditQ holen }
p1 := p / xq; { Auf Normalform dividieren falls nötig }
q1 := q / xq;
p2 := - p1 / 2; { Zahl vor der Wurzel ausrechnen }
q2 := sqr( p1 / 2 ); { p/2 Quadrat unter der Wurzel }
q3 := (q2 - q1); { q2 ist q1+q (zusammenrechnen) }
Application.Title := 'Negativer Radikant!'; { Fenstertitel von ShowMessage }
if ( q3 < 0 ) then { Wenn q2 kleiner als 0 ist (negativ) dann... }
begin
ShowMessage('Rechnung nicht möglich!'+#13#10+'Aus einer negativen Zahl kann keine Wurzel gezogen werden!');
Exit;
end
else
q4 := sqrt(q3); { Wurzel aus q2 }
x1 := p2 + q4; { x1 ist p1+q3 }
x2 := p2 - q4; { x2 ist p1-q3}
joa ganz schön gemacht
ist aber nicht sonderlich schwer hab sowas ohne c schon in autoit gemacht ich weiss vb is was anderes^^
/edit is doch vollkommen ob es in Delphi oder in sonstwas ist.....
22.11.2010, 19:49
dYnAm1c
Das is nicht in VB sondern in Delphi gecoded.
22.11.2010, 20:19
Hu5eL
evtl mitternachtsformel nehmen ist einfacher xDansonsten ok
22.11.2010, 20:23
AlterHacker
Gut, die Warnung bzgl. der Wurzel wird ausgegeben, und trotzdem kommt ein Ergebnis?!
Des weiteren kann ich mit wine nichts in das c-Feld eintragen.
22.11.2010, 20:26
dYnAm1c
Ja das trotzdem ein Ergebniss ausgegeben wird obwohl die Warnung kommt ist mir auch schon aufgefallen, ich weiß im moment nicht wie ich ihm sagen soll dass er aufhören soll zu rechnen wenn die Warnung kommt.
Warum kannst du nichts in das C Feld eingeben?
22.11.2010, 20:39
inout
Zitat:
Zitat von dYnAm1c
[...] ich weiß im moment nicht wie ich ihm sagen soll dass er aufhören soll zu rechnen wenn die Warnung kommt.
Einfach ein exit; nach dieser Anweisung einfügen, mit einem bool'schen Flag arbeiten oder diesen Teil in den else-Zweig auslagern.
Genaueres könnte man sagen, wenn du mal den Source postest oder ist dieser 3-Zeiler so streng geheim? ;)
Ja die Source kommt auch noch aber muss die noch bisschen aufräumen xD
22.11.2010, 21:23
Steiger_mp
Zitat:
Zitat von Hu5eL
evtl mitternachtsformel nehmen ist einfacher xDansonsten ok
PQ Formel ist ein andrer Name für die Mitternachtsformel,
dein Mathelehrer wird sich freuen, wenn du ihm sagst, dass x = 4,5673842403 ist ;)
Ein bruch ist angebrachter!
22.11.2010, 21:41
dYnAm1c
Meinst du? Mein Mathelehrer besteht sogar darauf das wir Dezimalzahlen verwenden.
Außerdem sollte das Programm sowieso nur zum überprüfen genutzt werden da ja überhaupt
kein Rechenweg angegeben wird und ohne Rechenweg geht in der Mathematik gar nichts.