Lottozahlen, Zufallszahlen im Array

chellywn

Neues Mitglied
Hallo Leute, ich soll ein Programm anfertigen, das 6 Zufallszahlen von 1-49 ausgibt. Ich bin auch schon relativ weit mit meinem Programm, aber hänge an einer stelle fest und bin am verzweifeln. Wenn ich das Programm ausführe, wird mir bei jeder Zahl eine Null ausgegen.
Code:
import java.awt.*;
import java.awt.event.*;

class lottozahlen extends Frame implements ActionListener
{
int feld[] = new int [7];

Button b1;
TextArea ta;

int k;
int zahl;
int zzahl;

lottozahlen()
{
setSize(500,300);
setTitle("Lotto 6 aus 49");
setLayout(null);

Label l1 = new Label("Lottozahlen");
l1.setBounds(15,80,90,20);


b1 = new Button("Zufallszahl hinzufügen");
b1.setBounds(60,40,120,30);
b1.addActionListener(this);

ta = new TextArea();
ta.setBounds(105,80,120,150);


add(b1);add(l1);add(ta);
setVisible(true);
}

public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1)
{
ta.setText("");
pruefen_eintragen();
Eintrag();


}

if(e.getSource()==ta)
{String text=ta.getText();
zahl=Integer.parseInt(text);

}
}

void pruefen_eintragen()
{
boolean pr;


do{
   pr=true;
   zzahl=(int) (Math.random()*49+1);
   for (int a=0;a<7;a++)
    { if (feld[a]==zzahl) {pr=false;}
      }
    }
  while(pr==false);

}

void Eintrag()
     {
         ta.append("Ziehung der Lottozahlen: \n");
        for (int i = 0; i < 6; i++) {
        ta.append("Die " + (i+1) + ". Zahl ist " + feld[i] + "\n");
        }
}

public static void main (String a[])
{
lottozahlen l = new lottozahlen();
}}
 

Robat

Top Contributor
Zum Beispiel arr[0]=42;
Wie und wo du das jetzt in deinen Code einbauen musst, solltest du selber herausfinden ;)
 

krgewb

Top Contributor
Als Konvention sagt man immer (zumindest bei Java), dass Klassennamen mit einem Großbuchstaben und Methodennamen mit einem Kleinbuchstaben beginnen sollten. Bei dir ist es genau andersherum. (Das ist nur eine Konvention und hat keinen Einfluss darauf, ob das Programm funktioniert oder nicht.)

Du schreibst
Java:
int feld[] = new int [7];
...
for (int a=0;a<7;a++)
Wieso 7? Ist das die Zusatzzahl, die bis 2013 aus den verbleibenden 43 Kugeln gezogen wurde?
Heutzutage gibt es stattdessen die Superzahl. Diese ist einstellig und steht auf jedem Spielschein drauf. Ich weiß nicht, wie sie bei der Lottoziehung gezogen wird.

Das Folgende verstehe ich nicht. Ist das nur ein irrelevanter Schnipsel?
Java:
if (e.getSource() == ta) {
    String text = ta.getText();
    zahl = Integer.parseInt(text);
}
 
Zuletzt bearbeitet:

Neue Themen


Oben