feld[zahl()-1] funktioniert nicht

Zappt91

Mitglied
Hallo zusammen!


ich würde gerne eine Zahl zwischen 1 bis 6 in ein Array speichern.

Wenn die Zahl eine 1 ist soll sie also in die 0. Stelle des Arrays reingespeichert werden. Wenn es eine 2 ist dann an 1. Stelle des Arrays...

Leider funktioniert nicht:

feld[zahl()-1] = zahl;


Was mach ich falsch? :bahnhof:


Vielen Dank 🙂


Ps.: Es ist so kompliziert das Arrays nicht mit 1 beginnen sondern mit 0... kann man sich das irgendwie einfacher machen? :idea:
 
Zuletzt bearbeitet:
naja...

deine Aufgabenstellung scheint komisch zu sein.

was ist denn zahl()? wie sieht der Code dazu aus?

was für eine Fehlermeldung kommt?
 
Einfacher? Was ist denn daran schwierig? Es gibt nun mal den Unterschied zwischen Numerierung und Indexierung.
In fast allen Programmiersprachen und der Informatik allgemein, rechnet man von 0 aus. Das wird auch teilweise so in der Mathematik gemacht.
 
Also ich leg ein Feld an, danach wird die Methode zahl() aufgerufen die eine Zufallszahl zwischen 1-6 ausgibt. Jetzt will ich "speichern" wie oft die jeweiligen Zahlen 1-6 bei 10 Durchgängen drankamen.

Also dachte ich bin ich schlau und mache:

int [] feld = new int [6];

Jetzt will ich

feld[zahl1()] = anzahl + 1;

speichern.

Nur leider würde er ja wenn ich eine 3 würfele ins 4. Arrayfeld +1 schreiben statt ins 3.Arrayfeld.

Deshalb wollte ich

feld[zahl()-1] = anzahl + 1 machen.

Das scheint aber absolut keine Wirkung zu haben.
 
Ps.: Es ist so kompliziert das Arrays nicht mit 1 beginnen sondern mit 0... kann man sich das irgendwie einfacher machen? :idea:

Im Grunde ist es für einen Anfänger nicht logisch, dass stimmt schon. Es hat aber seine guten Gründe, warum das so ist. Es ist eigentlich in allen Sprachen so und somit wär es eher kompliziert wenn es in java nicht so wäre. Man muss es halt einfach wissen.
 
Fehler vom Amt es funktioniert doch hatte leider + und - vertauscht gehabt 😳


Zur Diskussion um Arrays: Sry das ein Anfänger damit Probleme hat, aber ich finds schwierig.
 
Naja, man muss sich merken, dass ein Array mit 0 anfängt. Das hast du nun erfolgreich gemeistert.

Schwierigkeit beseitigt 🙂
 

Zurück
Oben