Zufallszahl generieren mit einer linken und rechten Grenze

M3lem

Mitglied
Hallo zusammen,
Ich stehe vor folgendem Problem.
Wenn ich einen Zufallszahl zwischen 20 und 580 generieren lassen will, wird trotzdem einen Zahl über 580 generiert.
Hier ist die Klasse
Java:
import processing.core.PGraphics;

import java.util.Random;

class Ball {
    int x, y;
    int fillColor;
    float xSpeed = 5;
    float ySpeed = 5;
    int widthBound, heightBound;
    Random random = new Random();
    Ball(int fillColor, int widthBound, int heightBound) {
        this.fillColor = fillColor;
        this.widthBound  = widthBound;
        this.heightBound = heightBound;
        this.randomPos();
    }


    void randomPos() {
        this.x = (int) (Math.random()*580+20);
        this.y = (int) (Math.random()*580+20);
        System.out.println("X: "+this.x);
        System.out.println("Y: "+this.y);
    }
    void draw(PGraphics g) {
        g.fill(this.fillColor);
        g.ellipse(this.x, this.y, 40, 40);
        x += xSpeed;
        y += ySpeed;


        if (x < 20 || x > widthBound-20) {
            xSpeed *= -1;

        }

        if (y < 20  || y > heightBound-20) {
            ySpeed *= -1;

        }
    }
}

Hier sind einige Ausgaben:
Code:
X: 208
Y: 442
X: 426
Y: 535
X: 421
Y: 593 // das ist die Zahl, die über 580 ist

Und das ist die Main-Methode:
Code:
import processing.core.PApplet;
public class Billiardtisch extends PApplet {
    public static void main(String[] args) {
        PApplet.runSketch(new String[]{""}, new Billiardtisch());
    }

    Ball[] balls = new Ball[100];
    public void settings() {
        super.size(600, 600);
    }
    public void setup() {
        frameRate(20);
        super.background(0);
        for(int i = 0; i < balls.length; i++) {
            balls[i] = new Ball((color((int) (Math.random()*(255)),(int) (Math.random()*(255)),(int) (Math.random()*(255)))),super.width,super.height);
        }
    }
    public void draw() {
        super.background(0,102,51);
        for (Ball elem : balls) elem.draw(super.g);
    }
}
 

MarvinsDepression

Bekanntes Mitglied
this.x = (int) (Math.random()*580+20);
hier entsteht eine Zufallszahl im Intervall [0..580[, zu der nochmals 20 hinzu addiert wird. Damit ergibt sich eine Range von 20 <= x < 600

P.S.: wenn Du schon eine Instanz der Klasse Random initialisierst, wieso nutzt Du sie dann nicht?
Random random = new Random();
Dabei würde folgendes ganau das gewünschte ergebnis liefern.
Java:
this.x = random.nextInt(20, 580); // falls 580 mit dabei sein soll -> (20, 581), denn die Obergrenze ist immer Exklusive
 

M3lem

Mitglied
hier entsteht eine Zufallszahl im Intervall [0..580[, zu der nochmals 20 hinzu addiert wird. Damit ergibt sich eine Range von 20 <= x < 600

P.S.: wenn Du schon eine Instanz der Klasse Random initialisierst, wieso nutzt Du sie dann nicht?

Dabei würde folgendes ganau das gewünschte ergebnis liefern.
Java:
this.x = random.nextInt(20, 580); // falls 580 mit dabei sein soll -> (20, 581), denn die Obergrenze ist immer Exklusive
Ich wusste nicht, dass man mit random.nextInt() die untere Grenze auch festlegen könnte.
Ich dachte, dass es nur um die obere Grenze geht und man dazu die untere Grenze addiert, aber jetzt hat weiß ich Bescheid, danke schön
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Gerade bzw. Ungerade Zufallszahl generieren Java Basics - Anfänger-Themen 5
krgewb Immer dieselbe Zufallszahl Java Basics - Anfänger-Themen 4
J for Schleife kleinste Zufallszahl finden Java Basics - Anfänger-Themen 25
S Zufallszahl mit Wahrscheinlichkeit Java Basics - Anfänger-Themen 13
brypa Zufallszahl Java Basics - Anfänger-Themen 9
C Zufallszahl + Werte bereich einstellen Java Basics - Anfänger-Themen 2
N Bereich Zufallszahl bestimmen (50 und 100 / 80 und 90) Java Basics - Anfänger-Themen 2
J Zufallszahl funktioniert nicht Java Basics - Anfänger-Themen 27
E Zufallszahl mit Wahrscheinlichkeit Java Basics - Anfänger-Themen 4
T Random soll Zufallszahl beibehalten. Java Basics - Anfänger-Themen 11
F Immer wieder gleiche Zufallszahl? Java Basics - Anfänger-Themen 4
D Zufallszahl zwischen 10 und 99? Java Basics - Anfänger-Themen 5
M Vierstellige Zufallszahl Java Basics - Anfänger-Themen 3
B Methoden Per Buttonklick eine Zufallszahl in ein Numberfield geben Java Basics - Anfänger-Themen 2
S Zufallszahl-Generatoren (Schnittstellen) Java Basics - Anfänger-Themen 14
S Zufallszahl (Statische Attribute und Methoden) Java Basics - Anfänger-Themen 10
M Erste Schritte Zufallszahl Spiel Problem Java Basics - Anfänger-Themen 7
N Zufallszahl beim Eintragen Java Basics - Anfänger-Themen 2
B Methoden Die Sache Mit der Zufallszahl Java Basics - Anfänger-Themen 3
I immer die gleiche Zufallszahl Java Basics - Anfänger-Themen 9
F Zufallszahl ohne Wiederholung Java Basics - Anfänger-Themen 7
R Zufallszahl Java Basics - Anfänger-Themen 5
P Typecasting für Ganzzahlige Zufallszahl (Math.random) Java Basics - Anfänger-Themen 2
S Zufallszahl erzeugen in 50er Schritten Java Basics - Anfänger-Themen 2
P Erste Schritte Zufallszahl in Ascii-Code umwandeln ?!? Java Basics - Anfänger-Themen 6
M Exception bei Zufallszahl Java Basics - Anfänger-Themen 15
M neue Zufallszahl in Schleife Java Basics - Anfänger-Themen 2
TheKing Zufallszahl die man durch 15 dividieren kann Java Basics - Anfänger-Themen 6
Luk10 Zufallszahl "ohne" eine bestimmte Zahl(en) Java Basics - Anfänger-Themen 8
N zufallszahl Java Basics - Anfänger-Themen 3
D Java Zufallszahl Java Basics - Anfänger-Themen 5
N Zufallszahl Java Basics - Anfänger-Themen 2
A Eingabe und Zufallszahl Java Basics - Anfänger-Themen 12
S Zufallszahl -> Schleife Java Basics - Anfänger-Themen 10
TheKing ZufallsZahl im negativbereich Java Basics - Anfänger-Themen 2
S Zufallszahl mit 6 Stellen erzeugen Java Basics - Anfänger-Themen 4
D bei Zufallszahl immer 2 Java Basics - Anfänger-Themen 12
K Zufallszahl Java Basics - Anfänger-Themen 4
Z Alle 15 sek eine Zufallszahl auf Bildschirm Java Basics - Anfänger-Themen 10
M Zufallszahl - kleine Frage Java Basics - Anfänger-Themen 4
S Zufallszahl Java Basics - Anfänger-Themen 9
I Zufallszahl ziwschen 0 und 7 Java Basics - Anfänger-Themen 3
F Zufallszahl in einem bestimmten Intervall Java Basics - Anfänger-Themen 9
B Befehl zum erstellen einer Zufallszahl. Java Basics - Anfänger-Themen 8
S 4-stellige Zufallszahl Java Basics - Anfänger-Themen 4
P Methode funzt nicht => Zufallszahl darf nicht 2x erschein Java Basics - Anfänger-Themen 4
M zufallszahl ohne doppelvorkommen Java Basics - Anfänger-Themen 2
H Zufallszahl Java Basics - Anfänger-Themen 2
K [Java] Zufallszahl als ganze Zahl Java Basics - Anfänger-Themen 5
G Zufallszahl zwischen 2 und n Java Basics - Anfänger-Themen 10
R Zufallszahl random Java Basics - Anfänger-Themen 8
E zufallszahl zwischen 1 und 6 Java Basics - Anfänger-Themen 6
J eigene methode erstellen die eine Zufallszahl generiert. Java Basics - Anfänger-Themen 12
J Zufallszahl ohne Math.random Java Basics - Anfänger-Themen 4
S Spiel: Wer ist näher an der Zufallszahl? Java Basics - Anfänger-Themen 4
N Überprüfung der ZufallsZahl? Java Basics - Anfänger-Themen 2
S Zufallszahl ermitteln Java Basics - Anfänger-Themen 2
C Zufallszahl zwischen... Java Basics - Anfänger-Themen 10
H zufallszahl Java Basics - Anfänger-Themen 2
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
JavaBeginner22 Java 2 Zufalls zahlen generieren. Java Basics - Anfänger-Themen 11
Marlena Bauer IBAN generieren (Deutschland) aus Abfrage von BLZ und Kontonummer? Java Basics - Anfänger-Themen 31
H Zufallszahlen generieren Java Basics - Anfänger-Themen 5
S Personalnummer automatisch generieren Java Basics - Anfänger-Themen 11
J Zufallszahlen generieren und Werte vergleichen Java Basics - Anfänger-Themen 3
Gaudimagspam Nummern generieren Array Java Basics - Anfänger-Themen 4
W Erste Schritte Ein Spielfeld aufbauen/generieren Java Basics - Anfänger-Themen 1
J Fehler beim generieren von 4 Zufallszahlen Zahl doppelt ist eigentlich ausgeschlossen Java Basics - Anfänger-Themen 9
B Liste von Tagen generieren ab einem bestimmten Datum und Endedatum Java Basics - Anfänger-Themen 4
S Aus gleichverteilte Zufallszahlen normalverteilte Zufallszahlen generieren ? Java Basics - Anfänger-Themen 1
G Generieren neuer ID Java Basics - Anfänger-Themen 21
J Erste Schritte Lottozahlen richtig generieren. Java Basics - Anfänger-Themen 12
SchmidiMC Methoden Random in Methode neu generieren lassen Java Basics - Anfänger-Themen 1
3 Zufalls-Zahlen aus ArrayList generieren & auslesen Java Basics - Anfänger-Themen 6
T Hash von doubles generieren Java Basics - Anfänger-Themen 5
I String teilen und zwei Wörter generieren Java Basics - Anfänger-Themen 1
D Methoden Listen generieren Java Basics - Anfänger-Themen 4
T Javadoc in Eclipse generieren Java Basics - Anfänger-Themen 1
S JLabels generieren lassen Java Basics - Anfänger-Themen 1
fLooojava Passwort generieren - kleines Programm Java Basics - Anfänger-Themen 15
1 String zu int generieren Java Basics - Anfänger-Themen 7
F Vererbung Sonnensystem mit Planeten generieren Java Basics - Anfänger-Themen 11
B Erste Schritte Möglichkeiten generieren Java Basics - Anfänger-Themen 25
I Eindeutige Stringvariablen in Schleife generieren Java Basics - Anfänger-Themen 4
K Java source code generieren Java Basics - Anfänger-Themen 5
E einfaches Schachbrett generieren Java Basics - Anfänger-Themen 9
A JButtons dynamisch generieren mit verschiedenen actionhandlern Java Basics - Anfänger-Themen 6
J Formular generieren Java Basics - Anfänger-Themen 7
K Wie kann ich aus jar Dateien wieder normale Klassen generieren? Java Basics - Anfänger-Themen 7
R mit GregorianCalendar Datum generieren Java Basics - Anfänger-Themen 3
P Zufallszahlen fuer Lotto generieren Java Basics - Anfänger-Themen 28
K Methode Passwort generieren Java Basics - Anfänger-Themen 10
M For-Schleifen dynamisch generieren? Java Basics - Anfänger-Themen 10
G HTML Seite generieren Java Basics - Anfänger-Themen 2
E Buttons in Android generieren? Java Basics - Anfänger-Themen 4
H HTML Code generieren Java Basics - Anfänger-Themen 9
Houly Integer Zahlen generieren Java Basics - Anfänger-Themen 11
T Zeichenkette generieren lassen Java Basics - Anfänger-Themen 6
A Zufallszahlen generieren Java Basics - Anfänger-Themen 2
HaukeG Java Klasse generieren Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben