Java - Ergebnisse einer For- Schleife anzeigen lassen mit Zufallszahlen. Wie geht dass?
Hey Leute,
Ich habe folgende Aufgabe: "Schreiben Sie ein Programm, das 20 Zufallszahlen erzeugt, diese untereinander anzeigt und zum Schluss die Summe der Zufallszahlen ausgibt."
Mein Problem an der Aufgabe ist, dass ich nicht weiß, wie man die Zufallszahlen am Schluss addieren kann. Hier mein bisheriger Code:
public static void main(String[] args) {
// TODO code application logic here
for(int i=0;i<=20;i++)
{
int zufallszahl = (int) ((Math.random()*6)+1);
System.out.println(zufallszahl);
}
}
}
Als Zufallszahlen habe ich die von 1-6 genommen, da wir dass im Unterricht auch immer so gemacht haben und denke ich auch verlangt ist.
Ich würde mich sehr über eine Antwort freuen!
Mit freundlichen Grüßen David
5 Antworten
Hallo DavidKlein123,
ich würde folgende Änderungen an Deinem Programm vornehmen, um es zum Laufen zu bekommen (Kommentare im Code).
public static void main(String[] args) {
// TODO code application logic here
// Variable für die Summe
int sum = 0;
for(int i=0;i<=20;i++)
{
int zufallszahl = (int) ((Math.random()*6)+1);
// hier noch nach jedem Durchlauf einen Zeilenumbruch ("\n") einfügen!
System.out.println(zufallszahl +"\n");
// Zum aktuellen Wert der Summe die Zufallszahl addieren (geht auch mit sum = sum + zufallszahl)
sum += zufallszahl;
}
// Am Ende noch die Summe ausgeben.
System.out.println(sum);
}
Viele Grüße
André, savest8
Vor der Schleife deklarierst du eine Variable vom Typ int und erhöhst diese pro Schleifendurchlauf um zufallszahl.
Hinter der Schleife lässt du dann die Summe bzw. den Wert der Variablen ausgeben.
Endlich mal eine schön formatierte Frage! :)
Einen kurzen Hinweis: Du erzeugst mit deiner for-Schleife 21 Zufallszahlen, entferne das = vor der 20.
Du kannst die Zahlen in einem Array speichern und dann addieren, also folgendermaßen:
public static void main (String[] args) throws java.lang.Exception
{
int[] zahlen = new int[20];
for(int i=0; i < zahlen.length; i++){
int zufallszahl = (int) ((Math.random()*6)+1);
System.out.println(zufallszahl);
zahlen[i] = zufallszahl;
}
int summe = 0;
for(int i = 0; i < zahlen.length; ++i){
summe += zahlen[i];
}
System.out.println("Die Summe ist " + summe);
}
LG SchönerElch
Na du musst dir die aktuelle Summe selbst mitrechnen. Du bist doch schon in der Schleife.
Lege dir also außerhalb der Schleife einen weiteren Integer an. nenne ihn von mir aus summe. Und in der Schleife addierst du dann bei jeder Iteration deine Zufallszahl drauf. Zack fertig ist deine Summe
Vor die for-Schleife : "int summe=0;"
In der for-Schleife "summe = summe + zufallszahl;"
Ich Trottel, stimmt, man braucht ja garkein Array!