# Math.random() Zahlen von 25 - 50. Wie?



## The Merowinger (21. Nov 2006)

Hallo, 
wie kann ich denn Zahlen zwischen 25 und 50 Generieren lassen?

Die Methode random will ja keine Parameter annehmen.

Mit dem Code bekomme ich ja nur Zahlen zwischen 0 und 50, oder?.


```
Math.random()*50
```

Ich will aber Zahlen zwischen 25 und 50.

Wie stelle ich das am besten an?

Danke & Gruß

The Merowinger


----------



## SlaterB (21. Nov 2006)

random*25 + 25 bzw ähnlich, je nach Grenzen


----------



## Gast (21. Nov 2006)

Man nehme:
eine Zufallszahl zw. 0 und 25
addiere die Zahl 25
und schon erhält man:
Eine Zahl zwischen 25 und 50

Manchmal hilft auch ein bisschen nachdenken ;-)


----------



## hobojo (21. Nov 2006)

```
int max = 50;
int min = 25;
int zahl = (int)Math.round(Math.random() * (max - min)+ min); // Liefert Zahlen von 25 - 49
int zahl2 = (int)Math.round(Math.random() * (max - min + 1)+ min); // Liefert Zahlen von 25 - 50

public static int randomBetween(int min, int max) {
  return (int)(int)Math.round(Math.random() * (max - min)+ min);
}
```


----------



## Leroy42a (21. Nov 2006)

hobojo hat gesagt.:
			
		

> return (int)(int)Math.round(Math.random() * (max - min)+ min);
> }[/code]



 :shock: Achso: _Sicher ist sicher!_


----------



## Anderer Gast (21. Nov 2006)

hab einen alternative vorschlag, der intern das gleiche macht. Nur hat eben ein paar API Funktionen verwendet:



```
int start = 25;
      int end = 50;

      Random generator = new Random();
      randomNumber = generator.nextInt(end-start) + start;
```


----------



## The Merowinger (21. Nov 2006)

Danke für die vielen schnellen Antworten. 8)


----------



## Leroy42a (21. Nov 2006)

Anderer Gast hat gesagt.:
			
		

> ```
> generator.nextInt(end-start) + start;
> ```



Aber beachten, daß der obige Code eine Ganzzahl aus dem
Intervall [start, end_)_ berechnet.


----------

