1 van 1

Java

Geplaatst: ma 12 apr 2010, 21:35
door marjan
Oh Hallo ik ken de volgende code geschreven maar in mijn uitvoer code wil hij GetRadom niet aanvaarden weet iemand waarom wat ik verkeerd te doe

in de eerste code die hij schreef daar is niks mis mee denk ik

package Extrapac4;

import java.util.Random;

public class Dobbelsteen {

/**

* @author Jan Beurghs<br>

* 22-jul-2004<br>

* Eenvoudige klasse om pseudo willekeurige getallen te genereren.

*/

public class Randomdobbelsteen {

private Random r;

/**

* Constructor voor een Random dobbelsteen.

*/

public Randomdobbelsteen() {

r = new Random();

}

/**

* Genereren van een geheel pseudo willekeurig getal tussen

* twee meegegeven waarden.

* @param min een int met de ondergrens.

* @param max een int met de bovengrens.

* @return een pseudo willekeurig getal getal tussen min en max.

* Indien min niet strikt kleiner is dan max wordt een willekeurige

* waarde uit gans het bereik van int gegeven.

*/

public int getRandom(int min, int max){

int i;

if (min <= max){

i = r.nextInt(max + 1 -min) + min;

} else {

i = r.nextInt();

}

return i;

}

/**

* Genereren van een gebroken pseudo willekeurig getal tussen

* twee meegegeven waarden.

* @param min een double met de ondergrens.

* @param max een double met de bovengrens.

* @return een pseudo willekeurig getal getal tussen min en max.

* Indien min niet strikt kleiner is dan max wordt een willekeurige

* waarde uit gans het bereik van double gegeven.

*/

public double getRandom(double min, double max){

double db;

db = r.nextDouble();

if (min <= max){

db = db*(max -min) + min;

}

return db;

}

}

}

de uitvoer code

is deze

package Extrapac4;

public class Randomdobbelsteen {

public static void main(String[] args) {

// een generator wordt gemaakt.

Randomdobbelsteen willekeurig = new Randomdobbelsteen();

int worpInteger1;

int WorpInteger2;

worpInteger1 = (willekeurig).getRandom(1, 6);

System.out.println("Tussen 1 en 6: " + worpInteger1);

WorpInteger2 = willekeurig.getRandom(1, 6);

System.out.println("Tussen 1 en 6: " +WorpInteger2);

int aantalOgen = worpInteger1 + WorpInteger2;

System.out.printf("het aantal ogen is",+aantalOgen);

}

}

Kan iemand mij vertellen wat er mis is met het plan dangetRandom dat is de fout boodschapThe method getRandom(int, int) is undefined for the type Randomdobbelsteen wat moet ik hier veranderen

bedankt voor alle hulp groetjes marjan

Re: Java

Geplaatst: ma 12 apr 2010, 21:51
door ZVdP
Ik weet niet wat er verkeerd gaat, want ik heb de gehele code gekopieerd naar eclipse en die runt deze code zonder problemen...

Re: Java

Geplaatst: di 13 apr 2010, 11:26
door marjan
De beste

heb jij heb je de code helemaal onder elkaar geplaatst of de main in een nieuwe document?

Man bij mij word GetRedom altijd in het rood onderlijnt masterplan van de fout zijn denk je?

Groetjes Marjan

Re: Java

Geplaatst: di 13 apr 2010, 11:49
door ZVdP
Nu zie ik het probleem: Je hebt je klasse waarin je main staat dezelfde naam gegeven als het object dat je wil aanmaken, namelijk Randomdobbelsteen. Deze nieuwe klasse heeft dan natuurlijk geen getRandom() methode.

En verder is Randomdobbelsteen een klasse binnenin een klasse (Ik zie niet echt in waarom, maar dat is een andere zaak).

Om een nieuwe Randomdobbelsteen aan te maken zal je het volgende moeten doen:

Randomdobbelsteen willekeurig =new Dobbelsteen().new Randomdobbelsteen();

Re: Java

Geplaatst: di 13 apr 2010, 13:06
door marjan
hoi

met deze uitvoer code

package Extrapac4;

public class RandomDobbelsteen {

/**

*
@param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub



Dobbelsteen.Randomdobbelsteen willekeurig =
new Dobbelsteen().new Randomdobbelsteen();

int worpInteger1;

int WorpInteger2;

worpInteger1 = willekeurig.getRandom(1, 6);

System.
out.println("Tussen 1 en 6: " + worpInteger1);

WorpInteger2 = willekeurig.getRandom(1, 6);

System.
out.println("Tussen 1 en 6: " +WorpInteger2);

int aantalOgen = worpInteger1 + WorpInteger2;

System.
out.printf("het aantal ogen is",+ aantalOgen);

}

}

krijg ik het antalogen niet op het scherm hoe kan dat dit is het resutaat dat ik op scherm krijg

Tussen 1 en 6: 1

Tussen 1 en 6: 2

het aantal ogen is

het is al gelukt

Re: Java

Geplaatst: di 13 apr 2010, 13:10
door ZVdP
Dat komt omdat je laatste lijn System.out.printf() is.

Verander dit door System.out.println("het aantal ogen is"+ aantalOgen);