Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Ferdi

Anmeldungsdatum: 10.03.2007 Beiträge: 284 Wohnort: Berlin
|
Verfasst am: 26.09.2007, 16:02 Titel: Index auserhalb des Bereichs |
|
|
Hi!
Ich hab dieses Thema erstellt, da der Titel mein alten Themas
nicht mehr das ausdrückt was es soll.
MEIN PROBLEM:
bei meinem Flusi- Code (siehe "Bildschirm drehen" oder http://forum.qbasic.at/viewtopic.php?t=4049)
"Index auserhalb des Bereichs" kommt.
Bitte alle Antworten dort hin stellen. DANKE
Euer
Ferdi
______________________________________________
(c) Ferdinand F.:
FFS11 |
|
Nach oben |
|
 |
A.K.

Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
|
Verfasst am: 26.09.2007, 19:05 Titel: |
|
|
Hi,
wenn du eingeloggt bist, kannst du per EDIT-Button auch das Thema deines alten Beitrags ändern.
zum Problem:
Index Ausserhalb des Bereichs bedeutet, daß du auf einen Index in einem Array zugreifen willst, welcher nicht existiert.
Beispiel:
DIM a(1 to 10) as integer
a(0)=1 <- erzeugt "Index ausserhalb des Arrays"
a(5)=1 <- geht
a(11)=1 <- erzeugt "Index ausserhalb des Arrays"
MFG A.K. _________________
http://forum.IconSoft.de
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 26.09.2007, 19:07 Titel: |
|
|
haben wir schon x-mal erklärt... ich sag es nur noch einmal... du musst den quellcode in der nähe des fehlers absuchen, wenn du z.B. Feld(1 to 10) deklarierst, und dann auf die einzelnen Feld-Elemenent per Variable zu greifst (z.b. For i = 1 to 11: print feld(i): next i), kann dadruch leicht ein fehler entstehen. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 26.09.2007, 20:26 Titel: |
|
|
(Weshalb man, wenn möglich, LBound und UBound nutzen sollte.) _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Ferdi

Anmeldungsdatum: 10.03.2007 Beiträge: 284 Wohnort: Berlin
|
Verfasst am: 29.09.2007, 15:15 Titel: |
|
|
OK.
Hab's kapiert
A propos (Ich hasse Franz. )
ICH HABE DAS PROBLEM ENDLICH GELÖST!!!!!!!!!!!!!!!!!!!!!
Mein ERSTES Programm hat heute Offiziell die ALPHAPHASE erreicht!!
Ich bin total ich weiß!
ICH euch! Spaß!!
So ausgetobt! |
|
Nach oben |
|
 |
ALWIM

Anmeldungsdatum: 08.08.2006 Beiträge: 1048 Wohnort: Niederbayern
|
Verfasst am: 07.10.2007, 16:40 Titel: |
|
|
Guten Abend!
Da sich schon hier schon ein Thema zu Index außerhalb des Bereiches befindet, werde ich deshalb auch mal ein kleines Problem ansprechen.
Zu meiner Sache:
Ich möchte ein Programm schreiben das Zufallszahlen erstellt. (funktioniert bereits)
Jede Zahl steht für einen Namen der auf dem Bildschirm angezeigt wird.
(funktioniert bereits)
Dann wollte ich es so programmieren dass Zufallszahlen ohne Dubletten erstellt werden. Und dann kommt bei meinem Programm nachdem 5-25 Namen auf dem Bildschirm angezeigt werden, die Fehlermeldung Index außerhalb des Bereiches. Warum nur?
Code: | DIM SHARED SPIELER$(1 TO 32)
REM maxanzfrag = 32
REM DIM SHARED pickme(1 TO 32)
REM DIM SHARED benutzt(1 TO 32)
n = 32
DIM SHARED benutzt(32) AS INTEGER
DIM SHARED zahl(32) AS INTEGER
y = 2
SPIELER$(1) = "Anarki"
SPIELER$(2) = "Angel"
SPIELER$(3) = "Biker"
SPIELER$(4) = "Bitterman"
SPIELER$(5) = "Bones"
SPIELER$(6) = "Cadavre"
SPIELER$(7) = "Crash"
SPIELER$(8) = "Daemia"
SPIELER$(9) = "Doom"
SPIELER$(10) = "Gorre"
SPIELER$(11) = "Grunt"
SPIELER$(12) = "Hossman"
SPIELER$(13) = "Hunter"
SPIELER$(14) = "Keel"
SPIELER$(15) = "Klesk"
SPIELER$(16) = "Lucy"
SPIELER$(17) = "Major"
SPIELER$(18) = "Mynx"
SPIELER$(19) = "Orbb"
SPIELER$(20) = "Patriot"
SPIELER$(21) = "Phobos"
SPIELER$(22) = "Ranger"
SPIELER$(23) = "Razor"
SPIELER$(24) = "Sarge"
SPIELER$(25) = "Slash"
SPIELER$(26) = "Sorlag"
SPIELER$(27) = "Stripe"
SPIELER$(28) = "TankJr"
SPIELER$(29) = "Uriel"
SPIELER$(30) = "Visor"
SPIELER$(31) = "Wrack"
SPIELER$(32) = "Xaero"
SCREEN 12
WIDTH 80, 60
CLS
RANDOMIZE TIMER
FELT 0, 0, 639, 440, 0
DO
DO
zahl = FIX(RND * n)
LOOP WHILE benutzt(zahl) = 1
benutzt(zahl) = 1
CPRINT SPIELER$(zahl), y, 34, 15, 11, 3
y = y + 1
ende = ende + 1
IF ende > n THEN END
LOOP |
Zitat: | CPRINT SPIELER$(zahl), y, 34, 15, 11, 3 |
CPRINT ist bei mir wie der Befehl PRINT, nur etwas komfortabler!
Ich hoffe ihr könnt mir helfen.
Mit freundlichen Grüßen
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
 |
stuner
Anmeldungsdatum: 29.06.2006 Beiträge: 45
|
Verfasst am: 07.10.2007, 16:52 Titel: |
|
|
Die Zeile
Code: | zahl = FIX(RND * n) |
lässt auch 0 zu, was aber ausserhalb des Indexes liegt.
Ich würde sie durch
Code: | zahl = RND * (n-1) +1 |
ersetzen.
Ansonsten funktioniert das Programm (zumindest unter FB). |
|
Nach oben |
|
 |
ALWIM

Anmeldungsdatum: 08.08.2006 Beiträge: 1048 Wohnort: Niederbayern
|
Verfasst am: 07.10.2007, 17:00 Titel: |
|
|
Guten Abend!
Für Freebasic ist es ja auch nicht gedacht.
Ich möchte sowas einfach in Qbasic haben.
Aber die Fehlermeldung kommt nicht wegen der 0?
Mit freundlichen Grüßen
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.10.2007, 17:06 Titel: |
|
|
ALWIM hat Folgendes geschrieben: | Für Freebasic ist es ja auch nicht gedacht. |
wie oft muss ich dir noch erklären, dass freebasic zu 99% kompatibel zu qbasic ist?  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
ALWIM

Anmeldungsdatum: 08.08.2006 Beiträge: 1048 Wohnort: Niederbayern
|
Verfasst am: 07.10.2007, 17:13 Titel: |
|
|
Zitat: | Zitat von Jojo:
wie oft muss ich dir noch erklären, dass freebasic zu 99% kompatibel zu qbasic ist? |
Wieso kann ich dann kein einziges Programm das in Quickbasic geschrieben ist (teilweise auch von mir), mit Freebasic öffnen?
Jetzt klappt mein Programm!
Es lag warscheinlich doch an dieser einen Zeile?
Freebasic gefällt mir irgendwie nicht, auch wenn Freebasic besser ist wie Quickbasic!
Mit freundlichen Grüßen
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.10.2007, 17:19 Titel: |
|
|
das liegt am stil (hatten wir ja schonmal), da du keinerlei variablen deklarierst... das kann man auch in QB und gehört zum guten stil. wenn du in FreeBasic mit dem parameter -lang deprecated oder -lang qb compilierst, kannst du deine alten programme trotzdem ausführen... steht aber eigentlich auch alels auf freebasic-portal.de... _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 07.10.2007, 17:38 Titel: |
|
|
Vielleicht speicherst du die Dateien nicht im Text-Modus?
Und wie Jojo bereits gesagt hat, mit -lang qb kompilieren. _________________
Code: | #include "signatur.bi" |
|
|
Nach oben |
|
 |
Franz

Anmeldungsdatum: 24.03.2007 Beiträge: 111 Wohnort: Auf ner DVD ich bin nur ein Programm
|
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.10.2007, 21:42 Titel: |
|
|
Ich glaube, das bezog sich eher auf diesen französischen Ausdruck!  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Franz

Anmeldungsdatum: 24.03.2007 Beiträge: 111 Wohnort: Auf ner DVD ich bin nur ein Programm
|
Verfasst am: 08.10.2007, 06:56 Titel: |
|
|
Achso upps
Man kann ja nie wissen.  |
|
Nach oben |
|
 |
Ferdi

Anmeldungsdatum: 10.03.2007 Beiträge: 284 Wohnort: Berlin
|
Verfasst am: 09.10.2007, 19:45 Titel: |
|
|
Stimmt!
Sorry
#################
#Franz = FRANZÖSISCH#
################
Also nicht missverstehen
Ich mag Franz(ösisch) nicht, da ich da einfach nicht gut bin
(Freu mich schon auf die [Korrigierte] Arbeit am Do. ) |
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 10.10.2007, 16:18 Titel: |
|
|
Ferdi hat Folgendes geschrieben: | Stimmt!
Sorry
#################
#Franz = FRANZÖSISCH#
################
Also nicht missverstehen
Ich mag Franz(ösisch) nicht, da ich da einfach nicht gut bin
(Freu mich schon auf die [Korrigierte] Arbeit am Do. ) |
Geht mir genauso... |
|
Nach oben |
|
 |
d1rty.h4rry

Anmeldungsdatum: 05.10.2006 Beiträge: 116 Wohnort: Cassel
|
Verfasst am: 16.10.2007, 23:23 Titel: |
|
|
Lol @ALWIN: was hast du denn mit dem Programm vor wenn man fragen darf
mir fällt nämlich auf dass...
Code: | SPIELER$(16) = "Lucy"
SPIELER$(17) = "Major"
SPIELER$(18) = "Mynx"
SPIELER$(19) = "Orbb"
SPIELER$(20) = "Patriot"
SPIELER$(21) = "Phobos"
SPIELER$(22) = "Ranger"
SPIELER$(23) = "Razor"
SPIELER$(24) = "Sarge"
SPIELER$(25) = "Slash"
SPIELER$(26) = "Sorlag"
SPIELER$(27) = "Stripe"
SPIELER$(28) = "TankJr"
SPIELER$(29) = "Uriel"
SPIELER$(30) = "Visor"
SPIELER$(31) = "Wrack"
SPIELER$(32) = "Xaero" |
sämmtliche namen den Bots aus Quake 3 entsprechen xD
das aber nur mal so nebenbei^^
gruss
D1RtY H4RrY _________________ "Das Fernsehen ist so etwas wie eine geistige Neutronenbombe, das Gehirn wird weggestrahlt. Nur der Kopf bleibt da!" -Olliver Kalkhofe
-> http://fernsehkritik.tv/tv-magazin/
"Wenn alle Stricke reißen, dann häng ich mich auf", Karl Kreiss  |
|
Nach oben |
|
 |
Ferdi

Anmeldungsdatum: 10.03.2007 Beiträge: 284 Wohnort: Berlin
|
Verfasst am: 20.10.2007, 16:44 Titel: |
|
|
Juhu!!
Hab in Franz(ösisch) ne 3 geschrieben!!  |
|
Nach oben |
|
 |
|