Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
3.4 Error
ich bin mir eigentlich verdammt sicher dass ich alles richtig gecoded habe… ABER eclipse und EST haben mal wieder was zu nörgeln ![]()
mein problem ist jetzt dass ich nicht dahinter komme WAS es zu nörgeln gibt, also:
HILFE, BRAUCHE ÜBERSETZER!!!
dein Programm über bzw. unterschreitet die array Grenzen.
in zeile 27 ist der Code wos passiert bzw. kurz davor
heist bei kp nem [30][60] zb das du iwie in zb [33][65] landest
Du versuchst in Zeile 27 auf das Element deines Arrays an Stelle [30] zuzugreifen, was aber nicht existiert, d.h. die Laenge deines Arrays betraegt hoechstens 30.
Schau doch mal nach, ob du nicht die beiden Indices vertauscht hast (screen[a][b ] anstatt screen[b ][a]).
Eine zweite Fehlerquelle koennte sein, dass du ein ‘x <= array.length’ statt einem ‘x < array.length’ verwendest.
P.S.: Du solltest die Aufgaben wirklich frueher machen, damit du nicht am Abend des Tages vor der Abgabe auf Hilfe angewiesen bist.
tatsächlich x und y vertauscht -.-
danke für die Hilfe ![]()
Arbeitstätige Menschen haben in der Regel nur Sonntage ![]()
Glaub mir ich bin der letzte der Sachen aufschiebt, nur manchmal reicht halt die Zeit nicht…
War ja gar nicht boese gemeint :), nur allgemein schauts immer - sagen wir mal ‘komisch’ - aus, wenn so 12 Stunden vor Abgabe die Fragen im Forum gestellt werden :-p
Haha - Ja versteh ich xD
mal eine andere Frage:
Angenommen man hat ein gelbes Ausrufezeichen im EST… bekommt man trotzdem Punkte wenn Teile der Abgabe korrekt sind?
Und gilt das dann nur bis zu dem Punkt bis zu dem das Programm flüssig läuft oder werden die Teilaufgaben sozusagen gesondert auf Funktionstüchtigkeit kontrolliert??
Weil ich hatte jetzt definitiv zu wenig Schlaf und ich riskiere gerne 2 Fehlerpunkte für eine gute Mütze Schlaf, aber nur ungern 22 xD
Ich weiß die Frage ist auch doof aber eine Antwort wäre trotzdem nett ![]()
hm, habe das auch so, was ist an größer gleich falsch?^^
weil das array bei array[0]= (i-ein Wert) bereits irgendeinen wert hat, array.length aber ausgibt wie viele werte insgesamt drin sind ![]()
z.B.:
int array[] = {3, 4, 5, 6}
daraus folgt:
array[3] = 6
ABER:
array.length = 4
das heißt array[4] existiert garnicht und deswegen läuft das mit “<=” nicht rund, sondern wir belassen’s bei einem einfachen “<”
kapische? ![]()
ah, also lieber x < array.length + 1 ?
Das letzte Element eines Arrays mit Laenge n liegt beim Index n-1, da wir bei 0 anfangen zu zaehlen:
int[] array = new int[n];
array[array.length - 1] = 0; // Letztes Element
array[array.length] = 0; // Error:ArrayOutOfBoundsException
@Patrick P.: [quote]
Das Übersetzen der Abgabe (mit und ohne Testfall) war erfolgreich, aber der Testfall
war nicht erfolgreich (das Programm enthält noch Fehler).
[/quote]
Also heisst das nur, dass dein Code compiliert, kann auch gut sein, dass du gar keinen Punkt bekommst :-/
E:
nein stompi, du hast ein paar Moeglichkeiten (aber nimm einfach die erste, die gilt eigentlich immer)
if(x < array.length); //do stuff
if(x <= array.length - 1 ); //do stuff
if(x + 1 <= array.length ); //do stuff
Herr im Himmel nochmal -.-
Dann brauch ich nochmal einen Tipp bei Teilaufgabe b…
ich weiß weder wie ich prüfen könnte ob es noch im screen ist, noch wie ich den aktuellen screen auf dem ich rumwerkeln sollte bearbeite (was das wohl gravierendere Problem ist, weil dadurch nichts eingezeichnet wird) [daher meine Frage ob die Teile gesondert korrigiert werden, weil der rest sicher stimmt xD]
bildschirm[dies][das] = zuZeichnen;
ist das einzige was mir dazu einfällt aber ich sehe ein dass da bisschen was nicht stimmen kann xD
vielleicht hilft die das weiter.
Das stimmt soweit, wenn ‚dies‘ richtig ist und ‚das‘ richtig ist (sprich du x und y nicht vertauschst)
E: ‚bildschirm‘ muss natuerlich die ‚screen‘ variable sein.
Ich will dir nicht zu nahe treten, aber die Aufgaben werden mit der Zeit immer schwerer und du wirst mehr Zeit dafür brauchen.
Auf längere Zeit lohnt es sich echt früher mit den Aufgaben anzufangen um im Zweifel noch einen Zeitpuffer zu haben.