VBS/Mathe-Übungen Vektorrechnung - HPK

MINT‐Fächer kombinieren HP Kiermaier ©2014 VektorrechnungmitVisualBasic‐Scripting(VBS)
Der Vorteil von VBS ist ja, dass es ohne Compiler oder Voraussetzungen auf jedem Windows‐PC läuft. Deshalb ist es ideal, um kleine Aufgaben oder Beispiele von Studenten programmieren zu lassen. Für dieses Beispiel braucht man nur einen einfachen Texteditor (z.B. Notepad mit WIN+R öffnen). Der Code muss mit der Endung .VBS gespeichert werden und kann dann einfach per Doppelklick gestartet werden. 'Deklariere Vektor v1, v2 und Summenvektor mit je 3 Komponenten
dim v1(3), v2(3), vs(3)
'Lege die Vektor-Komponenten als x,y,z fest (statt die Indizes 0,1,2)
const x=0, y=1, z=2
v1(x) = int(inputbox("X-Anteil Vektor1")) 'ganzzahlige Komponenten von Vektor1 eingeben
v1(y) = int(inputbox("Y-Anteil Vektor1"))
v1(z) = int(inputbox("Z-Anteil Vektor1"))
v2(x) = int(inputbox("X-Anteil Vektor2")) 'ganzzahlige Komponenten von Vektor2 eingeben
v2(y) = int(inputbox("Y-Anteil Vektor2"))
v2(z) = int(inputbox("Z-Anteil Vektor2"))
'Summenvektor berechnen (=jede Komponenten addieren):
vs(x) = v1(x) + v2(x)
vs(y) = v1(y) + v2(y)
vs(z) = v1(z) + v2(z)
Msgbox "Der Summenvektor ist (" & vs(x) & "," & vs(y) & "," & vs(z) & ")"
'Betrag des Summenvektors berechnen (seine Länge):
betrag = sqr(vs(x)^2 + vs(y)^2 + vs(z)^2) 'Wurzel aus der Quadratsumme der Komponenten
Msgbox "Der Betrag des Summenvektors (=Länge) ist " & betrag
'Skalarprodukt mit Vektor v1 berechnen
c = inputbox("Vektor v1 strecken um Faktor", "Skalarprodukt")
vs(x) = c * v1(x)
vs(y) = c * v1(y)
vs(z) = c * v1(z)
Msgbox "Der um " & c & " gestreckte Vektor v1 ist (" & vs(x) & "," & vs(y) & "," & vs(z) & ")"
'inversen Vektor zu v1 berechnen (=ergibt in Summe mit v1 den Nullvektor):
c = -1
'einfach der mit -1 multiplizierte Vektor v1
vs(x) = c * v1(x)
vs(y) = c * v1(y)
vs(z) = c * v1(z)
Msgbox "Der inverse Vektor zu v1 ist (" & vs(x) & "," & vs(y) & "," & vs(z) & ")"
'Vektorprodukt (=Kreuzprodukt) aus v1
vs(x) = v1(y) * v2(z) - v1(z) * v2(y)
vs(y) = v1(z) * v2(x) - v1(x) * v2(z)
vs(z) = v1(x) * v2(y) - v1(y) * v2(x)
Msgbox "Das Vektorprodukt v1 x v2 ist
auf v1 und v2"
und v2 berechnen
'die, in denen x
'die, in denen y
'die, in denen z
(" & vs(x) & ","
nicht vorkommt
nicht vorkommt
nicht vorkommt
& vs(y) & "," & vs(z) & ") und steht senkrecht
'Der Betrag des Vektorprodukts ist der Flächeninhalt, der von v1 und v2 aufgespannten Raute
betrag = sqr(vs(x)^2 + vs(y)^2 + vs(z)^2) 'Wurzel aus der Quadratsumme der Komponenten
Msgbox "Der Betrag des Vektorprodukts ist " & betrag
Nach dem Abtippen als 'vektoren.vbs' z.B. auf dem Desktop speichern und dann per Doppelklick starten. Es kann auch nur der entsprechende Berechnungsteil herausgenommen werden (restliche Berechnungen löschen). Anmerkung: nicht irritieren lassen, wenn für einzelne Komponenten einmal ‐0 angezeigt wird!  Für den PC ist ‐0 dasselbe wie +0 und könnte nur mit etwas Aufwand beseitigt werden.