02-05-2024, 10:19 PM
@Dimster, you can't use this. . .
What you are doing is incomprehensible. If you want a three-dimensional array, then you have to do it like this:
Code: (Select All)
Dim Array1(1 To 0)
Dim Array2(1 To 1)
Dim Array3(0 To 1)
Print LBound(Array1)
Print UBound(Array1)
Print
Print LBound(Array2)
Print UBound(Array2)
Print
Print LBound( Array3)
Drucken UBound(Array3)
Drucken
Drucken
x = 5
y = 9
z = x + y
Für i = 1 bis 10
für ii = 1 bis 15
Wenn i = 1 und ii = 1, dann
Array2(i) = x + y
Drucken Array2(ii)
End If
Next
Next
Print
Array2(1) = z
Print
Print Array2(1)
What you are doing is incomprehensible. If you want a three-dimensional array, then you have to do it like this:
Code: (Select All)
'Dreidimensionales Feld mit graphischer Darstellung - 3. Jan. 2023
$Console:Only
Option _Explicit
Option Base 1
Dim As Integer dreiDimFeld(3, 4, 4)
'"dm" legt die Dimension(Ebenen) fest. Hier dreimal Bloecke a 16
'dz ist Anzahl Zeilen, ds ist Anzahl Spalten
Dim As Integer dm, dz, ds, dFeld
Dim As Integer ebene, zeile, spalte
Locate 2, 2
'Der Ablauf ist: 1te Ebene -> Durchlauf Zeile * Spalte
'dann folgt die naechste Ebene usw. so viele Ebenen
'wie vorhanden sind
dFeld = 1
For dm = 1 To 3
For dz = 1 To 4
'Nach jedem sechszehner Block Absatz
'fuer naechsten Block. Csrlin+1 statt 2 -> schraege Anzeige
Locate CsrLin + 1, CsrLin + 1
For ds = 1 To 4
dreiDimFeld(dm, dz, ds) = dFeld
Print Using "## "; dreiDimFeld(dm, dz, ds),
dFeld = dFeld + 1
Next
Next
Print: Locate , 2
Next
Locate CsrLin + 2, 2
Input "Zeige Wert in Ebene : ", ebene
Locate CsrLin + 0, 2
Input "Zeige Wert in Zeile : ", zeile
Locate CsrLin + 0, 2
Input "Und in Spalte : ", spalte
Locate CsrLin + 1, 2
Print Using "Wert in Ebene: # Zeile: # Spalte: # ist: ##"; ebene, zeile, spalte, dreiDimFeld(ebene, zeile, spalte)
End

