Gå til innhold

Anbefalte innlegg

Skrevet

Her er koden jeg har til nå.

 

		// For-løkke åpnes
	for (int n = 1; n <= antKast; n++) {

		terningen.kast();
		int verdi = terningen.getVerdi();

		switch (verdi) {
		case 1:antEnere++;
			break;
		case 2:antToere++;
			break;
		case 3:antTreere++;
			break;
		case 4:antFirere++;
			break;
		case 5:antFemere++;
			break;
		case 6:antSeksere++;
			break;
		}


		tall += verdi + " ";


	} // for-løkke stenges

 

Brukeren skal velge et antal kast mellom 1 og 1000. Så skal verdien på terningene komme i linjer med 25 på hver linje. Spørsmålet er hvordan setter jeg inn ett linjeskift etter hver 25. terningkast?

 

Håper på svar.

Videoannonse
Annonse
Skrevet

Bruk modulus operatoren. Noe a la

if(n%25=0)
 tall += "\n";

rett før for-løkka avsluttes burde fungere.

 

p.s. synes du burde venne deg til å bruke 0-indekserte lister. kan fort bli off-by-one feil.

Skrevet

du kan forenkle hele switch blokken til noe så enkelt som:

		int[] ant = new int[6];
	// For-løkke åpnes
	for (int n = 1; n <= antKast; n++) {

		terningen.kast();
		terningen.getVerdi();

		// dette er en tabell som lagrer ant kast på hver terningverdi.
		// antall enere finner du på ant[0] og ant seksere finner du på
		// ant[5].
		ant[terningen.getVerdi()-1];			

		tall += verdi + " ";


	} // for-løkke stenges

Skrevet
At jeg starter med case 0 mener du i switch-løkka?

 

EDIT: Ah, for-løkka ja. Fikk det ikke til å funke med i = 0.

Da er det ofte lurt å bruke litt ekstra tid på å finne ut hvorfor det ikke funker; det sparer du mye mer tid på i det lange løp. Selv om du finner da en stil som passer deg vil du få problemer når du skal se på andres kode.

 

Om du fikk problemer med 0-indeksert var det sikkert fordi du ikke endret betingelsene samtidig. Det er like mange iterasjoner i

for(i = 0; i < 25; i++)

som i

for(i = 1; i <= 25; i++)

Skrevet
Jeg har

if(n % 25 == 0)
tall += "\n";

 

Jeg vil da få linjeskift etter første terningkast (n = 0).

if(n % 25 == 1)
tall += "\n";

gir linjeskift etter andre terningkast. Resten burde ikke vaere saa vanskelig aa finne ut.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...