Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Falsche Anzahl von Dimensionen, gefunden ???

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
harpas



Anmeldungsdatum: 11.08.2009
Beiträge: 9

BeitragVerfasst am: 19.07.2014, 15:46    Titel: Falsche Anzahl von Dimensionen, gefunden ??? Antworten mit Zitat

Einen guten Tag dem Forum,
bitte um Hilfe, was ist hier falsch?. erhalte obige Fehlermeldung.
Code:

40 Dim C$(14,9):Dim A(14):Dim B(14):Dim P(14):Dim N(14):Dim J(14):Dim V(14):Dim L(14):Dim Q(14):Dim O(14)
50 For Z=1 To 14
60 Read C$(Z):Read A(Z):Read B(Z):Read P(Z):Read N(Z):Read J(Z):Read V(Z):Read L(Z):Read Q(Z):Read O(Z)
70 Next Z
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4214
Wohnort: ~/

BeitragVerfasst am: 19.07.2014, 15:51    Titel: Antworten mit Zitat

Code:
READ C$(Z)

liest in ein eindimensionales Feld; definiert hast du aber ein zweidimensionales. Richtig wäre z. B.
Code:
READ C$(Z, 1)

_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5900
Wohnort: Deutschland

BeitragVerfasst am: 19.07.2014, 18:35    Titel: Array-Initialisierung statt DATA und READ Antworten mit Zitat

Hallo,

in FreeBASIC sind DATA und READ nicht mehr nötig. Man kann Array-Inhalte sehr komfortabel direkt in die Array-Initialisierung packen:

Beispiel 1 (wie eine Tabelle):
Code:
Dim C(1 To ...) As String  = { "Berta", "Max", "Moritz", "Wally", "Heidi", "Felix" }
Dim A(1 To ...) As Integer = {     82 ,   19 ,      10 ,     60 ,     51 ,     25  }
Dim B(1 To ...) As Integer = {   1034 ,  911 ,    7299 ,    835 ,   2476 ,    648  }

Print "VERLOSUNG"
For i As Integer = LBound(C) To UBound(C)
    Print C(i) & " ist " & A(i) & " Jahre alt und hat die Losnummer " & B(i) & "."
Next i

GetKey
End


Beispiel 2 (lange Liste / Zeitreihe):
Code:
Dim Temperaturen(1 To ...) As Integer = { _
        25, 25, 26, 27, 28, 26, 28, 27, _
        25, 25, 24, 24, 23, 22, 20, 19, _
        18, 17, 17, 17, 17, 18, 19, 20, _
        21, 21, 22, 23, 24, 25, 25, 24  }
       

Dim As Integer Anzahl=0, Summe=0

For i As Integer = LBound(Temperaturen) To UBound(Temperaturen)
    Anzahl += 1
    Summe  += Temperaturen(i)
Next i

Print "Anzahl der Messwerte:    "; Anzahl
Print "Durchschnittstemperatur: "; (Summe / Anzahl)

GetKey
End


Die drei Punkte bei der Array-Dimensionierung bedeuten, dass der Compiler selbst nachzählen soll, wie viele Elemente man angegeben hat. So kann man die Listen komfortabel erweitern.

In QB steht die Möglichkeit nicht zur Verfügung.

Viele Grüße!
Sebastian
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz