Da bin ich wieder. Diesmal widme ich mich der Berechnung von Dreieck-Werten.
Zunächst jedoch für diejenigen, die sich fragen, was Teil 1 und Teil 2 waren, hier die Links:
[VBA: Sonstige/Allgemein] Mathematik mit VBA - Teil 1: Primzahlen, Bruchrechnen, Kombinatronik und Statistik
[VBA: Sonstige/Allgemein] Mathematik mit VBA - Teil 2: komplexe Zahlen und Nullstellen ganzrationaler Funktionen
Damit klar ist, welche Größe wo am Dreieck ist, hier zwei Zeichnungen:
Ich benutze ein Klasenmodul, das ich „Dreieck“ nenne. Es ist übrigens mein erstes Klassenmodul.
Da der Code recht umfangreich ist (1422 Zeilen), habe ich zusätzlich das Klassenmodul hochgeladen:
Dreieck.zip
Wenn ein Wert festgelegt wird (z. B. SeiteA), werden alle Werte ermittelt, die aufgrund der bisher bestimmten Werte berechnet werden können. Wenn also beispielsweise SeiteA bereits bestimmt ist und dann HöheHa festgelegt wird, wird automatisch der Flächeninhalt berechnet.
Dies sind die Elemente, auf die außerhalb des Klassenmoduls zugegriffen werden kann:
Die PlausiPrüfung diente mir vor allem in der Testphase, um Berechnungsfehler und andere Fehler im Code aufzuspüren. Eigentlich bin ich soweit, zu sagen, dass der Code fertig ist. Da ich jedoch aufgrund der Vielzahl von Eingabemöglichkeiten nicht alles testen konnte, bitte ich diejenigen, die das ausprobieren/verwenden, mir mitzuteilen, wenn bei der PlausiPrüfung eine Meldung mit einem „Critical“-Symbol erscheint (weißes X auf rotem Punkt) oder sonstige merkwürdige Fehlermeldungen oder Ergebnisse haben.
Auch für sonstige Anregungen, Kritik u. ä. bin ich offen.
So sieht beispielsweise die Anwendung in einem separaten Modul aus:
Zunächst jedoch für diejenigen, die sich fragen, was Teil 1 und Teil 2 waren, hier die Links:
[VBA: Sonstige/Allgemein] Mathematik mit VBA - Teil 1: Primzahlen, Bruchrechnen, Kombinatronik und Statistik
[VBA: Sonstige/Allgemein] Mathematik mit VBA - Teil 2: komplexe Zahlen und Nullstellen ganzrationaler Funktionen
Damit klar ist, welche Größe wo am Dreieck ist, hier zwei Zeichnungen:
Ich benutze ein Klasenmodul, das ich „Dreieck“ nenne. Es ist übrigens mein erstes Klassenmodul.
Da der Code recht umfangreich ist (1422 Zeilen), habe ich zusätzlich das Klassenmodul hochgeladen:
Dreieck.zip
Wenn ein Wert festgelegt wird (z. B. SeiteA), werden alle Werte ermittelt, die aufgrund der bisher bestimmten Werte berechnet werden können. Wenn also beispielsweise SeiteA bereits bestimmt ist und dann HöheHa festgelegt wird, wird automatisch der Flächeninhalt berechnet.
Dies sind die Elemente, auf die außerhalb des Klassenmoduls zugegriffen werden kann:
Quellcode
- Eigenschaften
- Name Datentyp Zahlenbereich Bemerkung
- Flächeninhalt Double > 0
- HöheHa Double > 0
- HöheHb Double > 0
- HöheHc Double > 0
- Inkreisradius Double > 0
- Längeneinheit String Standardwert: NullString ("")
- SeiteA Double > 0
- SeiteB Double > 0
- SeiteC Double > 0
- StreckePa Double beliebig
- StreckePb Double beliebig
- StreckePc Double beliebig
- StreckeQa Double beliebig
- StreckeQb Double beliebig
- StreckeQc Double beliebig
- Umfang Double > 0
- Umkreisradius Double > 0
- WinkelAlpha Double > 0, < pi Bogenmaß
- WinkelAlpha° Double > 0, < 180 Gradmaß
- WinkelBeta Double > 0, < pi Bogenmaß
- WinkelBeta° Double > 0, < 180 Gradmaß
- WinkelGamma Double > 0, < pi Bogenmaß
- WinkelGamma° Double > 0, < 180 Gradmaß
- Methoden mit Rückgabewert
- Name Datentyp Parameter Bemerkung
- alleWerte Boolean - Gibt zurück, ob alle Werte bestimmt sind.
- AnzahlWerte Integer - Gibt die Anzahl der bestimmten Werte zurück.
- pi Double - Gibt pi zurück.
- Rechenweg String - Gibt eine Liste mit den verwendeten Formeln zurück.
- Werteliste String Nachkommastellen Gibt eine Liste der Werte zurück.
- WertelisteKurz String - Gibt eine Liste der bestimmten Werte zurück (Kurzform).
- Methoden ohne Rückgabewert
- Name Parameter Bemerkung
- PlausiPrüfung - Zeigt nennenswerte Differenzen an.
- Zurücksetzen - Setzt alle Werte zurück.
Die PlausiPrüfung diente mir vor allem in der Testphase, um Berechnungsfehler und andere Fehler im Code aufzuspüren. Eigentlich bin ich soweit, zu sagen, dass der Code fertig ist. Da ich jedoch aufgrund der Vielzahl von Eingabemöglichkeiten nicht alles testen konnte, bitte ich diejenigen, die das ausprobieren/verwenden, mir mitzuteilen, wenn bei der PlausiPrüfung eine Meldung mit einem „Critical“-Symbol erscheint (weißes X auf rotem Punkt) oder sonstige merkwürdige Fehlermeldungen oder Ergebnisse haben.
Auch für sonstige Anregungen, Kritik u. ä. bin ich offen.
So sieht beispielsweise die Anwendung in einem separaten Modul aus:
Visual Basic-Quellcode
- Sub test()
- Dim dr As New Dreieck
- With dr
- .SeiteA = 3
- .Längeneinheit = "cm"
- .WinkelAlpha° = 60
- .WinkelGamma = .pi / 4
- MsgBox .SeiteB 'Gibt den Wert von SeiteB aus.
- MsgBox .SeiteC 'Gibt den Wert von SeiteC aus.
- MsgBox .Werteliste(3) 'Gibt eine Liste der Werte mit 3 Nachkommastellen aus.
- MsgBox .Werteliste 'Gibt eine Liste der Werte im Standard-Zahlenformat aus.
- MsgBox .Rechenweg 'Gibt eine Liste mit den verwendeten Formeln und Rechenergebnissen aus.
- .PlausiPrüfung 'Gibt nennenswerte Differenzen aus.
- End With
- End Sub