banansplitt™ Skrevet 20. april 2013 Del Skrevet 20. april 2013 (endret) Enkelt og greit; metoden skal skrive ut mellom 5-10 linjer og på hver linje skal det være mellom 1-80 random characters. Problemet er at det aldri blir mer enn rundt 30 characters per linje, selv om det er satt til 80? package exercises; import java.util.*; public class Exercise05 { public static void main(String[] args) { randomLines(); } public static void randomLines() { Random rand = new Random(); String chars = "abcdefghijklmnopqrstuvwxyz"; int lines = rand.nextInt(5) + 5; int maxCh = 80; for(int i = 1; i <= lines; i++) { for(int j = 1; j <= rand.nextInt(maxCh) + 1; j++) { System.out.print(chars.charAt(rand.nextInt(26))); } System.out.println(); } } } Endret 20. april 2013 av banansplitt™ Lenke til kommentar
Fred7555 Skrevet 20. april 2013 Del Skrevet 20. april 2013 (endret) Tror den indre loopen ikke fungerer slik du har tenkt. Husk at uttrykket blir sjekket etter hver loop, som betyr at et nytt tall blir generert for hver sjekk. Så hvis det tallet er lavere enn j, så vil loopen stoppe opp. Sannsynligheten for å alltid få høye tall er veldig lav. Om du heller oppretter en midlertidig variabel i 1. loop som genererer tallet, så vil det funke. Noe ala: import java.util.*; public class Exercise05 { public static void main(String[] args) { randomLines(); } public static void randomLines() { Random rand = new Random(); String chars = "abcdefghijklmnopqrstuvwxyz"; int lines = rand.nextInt(5) + 5; int maxCh = 80; for(int i = 1; i <= lines; i++) { int randNumb = rand.nextInt(maxCh); for(int j = 1; j <= randNumb + 1; j++) { System.out.print(chars.charAt(rand.nextInt(26))); } System.out.println(); } } } Endret 20. april 2013 av Fred7555 Lenke til kommentar
banansplitt™ Skrevet 20. april 2013 Forfatter Del Skrevet 20. april 2013 Aha. Tusen hjertelig! Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå