Avatar billede jones279 Nybegynder
04. december 2004 - 17:43 Der er 10 kommentarer og
1 løsning

Random tal? Easy opgave!

Hey! Jeg sidder lige og knokler med Java! Jeg har lidt problemer med sådan en begynder opgave fra Javabogen...

Skriv et program, som udskriver tre tilfældige tal (lavet med Math.random()), deres sum og gennemsnittet.

Jeg kan sådan set godt selv finde ud af at finde deres sum og snit osv, men jeg kan ikke få de tre tal defineret... Jeg har gjort sådan her so far:

public class MathRandom
{
    public static void main(String[] arg)
    {
        double a, b, c;
       
        a = Math.random(double a);
        b = Math.random(double b);
        c = Math.random(double c);
    }
}

Men det vil den sgu ikke helt gå med til... Hvorfor ikke? Jeg har benyttet double fordi random jo ligger mellem 0 og 1. Et spørgsmål af nysgerrighed er: hvordan får man random til at ligge mellem fx 10 og 20 ?
Avatar billede arne_v Ekspert
04. december 2004 - 17:45 #1
a = Math.random();
        b = Math.random();
        c = Math.random();
Avatar billede arne_v Ekspert
04. december 2004 - 17:46 #2
Altså uden argument mellem ( og ).
Avatar billede arne_v Ekspert
04. december 2004 - 17:47 #3
double x = 10 + 10 * Math.random();

vil ligge mellem 10 og 20
Avatar billede jones279 Nybegynder
04. december 2004 - 17:47 #4
Så siger min compiler: Possible loss of precision
Avatar billede jones279 Nybegynder
04. december 2004 - 17:51 #5
okay, neat!
Hvorfor det egentligt?

10+10 = 20
* random

Hvad er logikken ved det?
Avatar billede jones279 Nybegynder
04. december 2004 - 17:52 #6
How, nu siger min compiler ingenting! Neat... Tak for hilfen med det!...:)
Avatar billede arne_v Ekspert
04. december 2004 - 17:53 #7
10 * random tal mellem 0 og 1 = random tal mellem 0 og 10
10 + random tal mellem 0 og 10 = random tal mellem 10 og 20
Avatar billede arne_v Ekspert
04. december 2004 - 17:53 #8
og et svar
Avatar billede jones279 Nybegynder
04. december 2004 - 17:55 #9
dvs et random tal mellem 200 og 210 ville være

double x = 200 + 10 * Math.random();

??
Avatar billede arne_v Ekspert
04. december 2004 - 17:56 #10
jep
Avatar billede jones279 Nybegynder
04. december 2004 - 17:58 #11
Cool! Jeg takker for hjælpen...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester