Autor |
Beitrag |
DelphiMarkus
      
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: So 11.05.08 15:53
Ich habe mich heute mal hingesetzt und einen einfachen Durchschnittsrechner programmiert. Er besteht hauptsächlich aus einer ListBox zum anzeigen der Werte, dem Button zum Rechnen und den Groupboxen Wert hinzufügen und Wert ändern.
Die Funktionen sind:
 Werte hinzufügen
 Werte bearbeiten
 Werte löschen
 Alles löschen
 Inhalt der Listbox öffnen und speichern
 Arithmetischer Durchschnitt
 Geometrischer Durchschnitt
 Harmonischer Durchschnitt
Beschreibung:
In das erste Editfeld gibt man einen Wert ein und drückt dann ENTER oder auf den Button Hinzufügen. Der Wert wird dann, soweit er eine Zahl ist in die ListBox geschrieben. Mit einem Rechtsklick auf die ListBox öffnet sich ein PopUpMenü. Bevor man allerdings einen Wert bearbeiten oder löschen kann, mus man ihn erst mit einem ganz normalem Klick makieren. Den makierten Wert kann man auch durch einen Doppelklick auf ihn ändern. Dazu ändert man den Wert der darauf im zweiten Editfeld steht und drückt ENTER oder auf Ändern.
Ein Klick auf Rechnen zählt alle Werte zusammen und teilt diese dann durch die Anzahl, rechnet also den Durchschnitt aus. Mit einem Klick auf den Button Neu werden alle Einträge gelöscht.
Die Funktionen Öffnen und Speichern, öffnen bzw. speichern den Inhalt der Listbox in eine Datei, die im Dialog angegeben wird.
Die aktuelle Version ist 1.3.
Ich würde mich auf Feedback sehr freuen!
Einloggen, um Attachments anzusehen!
Zuletzt bearbeitet von DelphiMarkus am Sa 07.06.08 10:46, insgesamt 3-mal bearbeitet
|
|
huuuuuh
      
Beiträge: 665
Erhaltene Danke: 19
win xp, (win vista), win 7
VS 2008 Express Edition, VS 2010 Express Edition, VS 2010 Professionell
|
Verfasst: So 11.05.08 16:30
es gibt noch nen andren durchschnitt
das was dein rechner macht is (a+b+c)/anzahl(summanden)
es gibt aber auch noch wurzel(a+b+c)
das letzte heißt glaub ich geometrischer durchschnitt, das erste is glaub ich archimedisch (irgendwie so wars)
wär schön wenn dein rechner das auch könnt, würd ihm auch etwas mehr sinn geben 
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: So 11.05.08 16:34
@huuuuuh: Das geometrische Mittel ist wurzel(b*b*c). Achso und das andere heißt "arithmetisch". 
|
|
huuuuuh
      
Beiträge: 665
Erhaltene Danke: 19
win xp, (win vista), win 7
VS 2008 Express Edition, VS 2010 Express Edition, VS 2010 Professionell
|
Verfasst: So 11.05.08 16:37
Jakob_Ullmann hat folgendes geschrieben: | @huuuuuh: Das geometrische Mittel ist wurzel(a*b*c) |
um mal bei meinem beispiel zu bleiben
stimmt übrigens 
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: So 11.05.08 16:49
@huuuuuh: Oh ja, Tippfehler.
@DelphiMarkus: Das ist nicht dein Ernst, oder? Du lässt den User extra ein ZIP-Archiv entpacken bzw. downloaden und zusätzlich Speicherplatz für die entpackte Version verschwenden, nur für eine Liesmich-Datei, die sowieso keiner liest? Wenn es schon eine Lies-Mich gibt, dann schreib sie doch einfach hier als Zitat hinein.
|
|
nagel
      
Beiträge: 708
Win7, Ubuntu 10.10
|
Verfasst: So 11.05.08 18:05
Das geometrische Mittel von drei Werten ist die dritte Wurzel aus dem Produkt der Werte, bei höherer Anzahl entsprechend die n-te Wurzel. Eure Formulierung als wurzel(a * b * c) ist mindestens missverständlich. 
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: So 11.05.08 19:58
@nagel: Nein, sie ist nicht missverständlich, sondern falsch - ich hab es mir falsch eingeprägt.
@DelphiMarkus: Jetzt, wenn ich schon einmal im Tafelwerk bin: Du könntest auch noch das harmonische Mittel einbauen:
Quelltext 1:
| H = 3 / (1/a + 1/b + 1/c) |
|
|
DelphiMarkus 
      
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: Mo 12.05.08 08:17
Morgen
Danke für das Feedback und...
...hier gehlt es ja mehr um Formeln als um das Programm. Ich kannte bis jetzt nur eins, aber das andere werde ich natürlich auch ins Programm einbauen.
 Arithmetisches Mittel
 Geometrisches Mittel
Bei Wikipedia werden beide erklärt, falls noch Fragen auftauchen: de.wikipedia.org/wiki/Mittelwert
Die nächste Version wird wahrscheinlich heute fertig werden.
Zur Liesmich.txt -> Das ist nichts anderes als der erste Post und wenn ich das Programm mal veröffentliche ist es ganz gut, wenn der Anwender gleich eine Beschreibung hat, weil so einfach ist das Programm nicht zu handhaben. *.Zip finde ich außerdem besser zu downloaden als eine *.exe.
//Edit:
So die neue Version ist fertig. Ich habe beide Arten in das Programm eingebunden.
|
|
DelphiMarkus 
      
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: Fr 06.06.08 17:57
Erst kommen viele Meldungen und dann keine mehr, ist ja fast immer so.
Jetzt habe ich mich nochmal an den Computer gesetzt und die alte Version etwas verbessert. Morgen kümmer ich mich um die Fehlermeldungen, also kommt morgen ein neues Relase.
Aber nun zu dieser Version:
 Icons von [url] www.gaijin.at[/url] eingebunden
 Programmicon gemacht
 sonstige Verbesserungen, die nicht besonders sind
In dieser Version wurde hauptsächlich die Optik verändert.
Morgen kommt dann Version 1.3 mit verbesserter Fehlerabfrage.
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: Fr 06.06.08 19:35
Wirst du irgendwann noch das harmonische Mittel einbauen? Und wie machst du das mit dem geometrischen Mittel überhaupt, weil, man kann ja in Delphi eigentlich nur mit der Quadratwurzel rechnen, oder?
EDIT: Habe es jetzt rausgefunden: für 1, 5 und 3 power(1 * 5 * 3, 1/3) oder?
EDIT2: Bug entdeckt! Wenn man nichts in der ListBox wählt, kommt 0 heraus. 
|
|
DelphiMarkus 
      
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: Sa 07.06.08 08:51
Tja, um die Fehlermeldungen wollte ich mich ja heute kümmern. Aber danke für den Tipp.
Wie ich das Harmonische Mittel berechnen soll, weiß ich noch nicht so ganz, aber ich kann es ja mal versuchen.
Das geometrische Mittel wird so berechnet:
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| repeat Summe := Summe + StrToFloat(ListBox1.Items.Strings[i]); Produkt := Produkt * StrToFloat(ListBox1.Items.Strings[i]); inc(i); until i = ListBox1.Items.Count; Wurzel := Power(Produkt, 1/ListBox1.Items.Count); |
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: Sa 07.06.08 09:14
OK, danke!
Das harmonische Mittel kannst du so berechnen:
Delphi-Quelltext 1: 2: 3: 4:
| summe := 0; for i := 0 to ListBox1.Items.Count - 1 do summe := summe + 1 / StrToFloat(ListBox1.Items[i]); ergebnis := ListBox1.Items.Count / summe; |
|
|
DelphiMarkus 
      
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: Sa 07.06.08 10:48
Danke Jakob!
Ich habe das jetzt eingebaut und außerdem den Fehler mit der Listbox behoben, was aber nicht wichtig ist, weil ich sie jetzt durch eine ComboBox ersetzt habe.
Version 1.3 ist schon online!
Download im ersten Post.
|
|