Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
bauigel
Anmeldungsdatum: 09.02.2018 Beiträge: 7 Wohnort: 75196 Remchingen
|
Verfasst am: 09.03.2018, 22:53 Titel: Übergabe eines Parameters u. Rückgabe von 8 Werten an das HP |
|
|
Hallo,
ich erstelle gerade ein Programm zur Berechnung einer elastisch gebetteten Kreisplatte. Dabei wird ein Parameter an ein Unterprogramm übergeben. Das Unterprogramm berechnet dann mittels Reihen die sogenannten Thomson Funktionen und gibt 8 Werte zurück an das Hauptprogramm.
Wie muss ich die Prozedur mit Declare festlegen und den Parameter (X) über-geben und wie werden die 8 Werte an das Hauptprogramm zurückgegeben?
Vielen Dank für die Hilfe.
S. Wenz |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 09.03.2018, 23:06 Titel: User-Defined Type für "zusammengesetzte" Datenelem |
|
|
Hallo,
für Datenelemente, die sich aus mehreren Unterelementen zusammensetzen (z. B. mehrere Koordinaten), kann man einen User-Defined Type (UDT) definieren. Das ist vergleichbar mit einem "struct" in C.
Hier ein Beispiel:
Code: | TYPE ThomsonErgebnis
X As Double
Y As Double
Preis As Double
Stueckzahl As Integer
Beschriftung As String
Farbe As String
Skonto As Integer
END TYPE
Declare Function BerechneThomson( ByVal x As Integer ) As ThomsonErgebnis
' Pseudozufallszahlengenerator initialisieren
Randomize Timer
Dim eingabe As Integer
Input "Bitte eine Zahl eingeben, z. B. 100. --> x? ", eingabe
Dim ergebnis As ThomsonErgebnis
ergebnis = BerechneThomson( eingabe )
Print "Hier das Ergebnis:"
Print
Print "Thomson.X = "; ergebnis.X
Print "Thomson.Y = "; ergebnis.Y
Print "Thomson.Preis = "; ergebnis.Preis
Print "Thomson.Stueckzahl = "; ergebnis.Stueckzahl
Print "Thomson.Beschriftung = "; ergebnis.Beschriftung
Print "Thomson.Farbe = "; ergebnis.Farbe
Print "Thomson.Skonto = "; ergebnis.Skonto
GetKey
End
Function BerechneThomson( ByVal x As Integer ) As ThomsonErgebnis
Dim erg As ThomsonErgebnis
' Man kann jetzt fuer alle Eigenschaften schreiben:
' erg.X = ...
' erg.Y = ...
' Man kann aber auch etwas Schreibarbeit mit "WITH" sparen:
With erg
.X = RND * x
.Y = RND * x
.Preis = RND * x * 10
.Stueckzahl = x
.Beschriftung = "Ergebnis fuer UserID " & x
.Farbe = "gruen"
.Skonto = Int(RND*5)
End With
' Die Nutzung von With wäre auch im Hauptprogramm bei der PRINT-Ausgabe möglich
Return erg
End Function |
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
|