www.webdeveloper.com
Results 1 to 4 of 4

Thread: How do I set a range for Random?

  1. #1
    Join Date
    Jul 2004
    Location
    West Coast, Canada
    Posts
    665

    How do I set a range for Random?

    Hey guys, How do you set a range for Random?

    Code:
    // ****************************************************************
    //   Random Phone Number
    //		Author: Jaime Bueza
    //		Student Number: A00579330
    //          
    // ****************************************************************
    import java.util.Random;
    
    public class PhoneNumber
    {
        public static void main(String[] args)
        {
    	int firstdigit, seconddigit, thirddigit, fourthdigit, fifthdigit, sixthdigit, seventhdigit;
    	
    	Random generator = new Random();
    
    	System.out.println ("This is your random phone number that has been generated:");
    
    	firstdigit = generator.nextInt(10);
    	seconddigit = generator.nextInt(10);
    	thirddigit = generator.nextInt(10);
    	fourthdigit = generator.nextInt(10);
    	fifthdigit = generator.nextInt(10);
    	sixthdigit = generator.nextInt(10);
    	seventhdigit = generator.nextInt(10);
    	
    	System.out.println ("Your new random number is: "+firstdigit+""+seconddigit+""+thirddigit+"-"+fourthdigit+""+fifthdigit+""+sixthdigit+""+seventhdigit+". Have a good day.");
    		
        }
    }
    Would it have to relate to how I constructed the object Random?? Random();

    is that suppoesd to be a range number inside the parenthesis?

    Kind regards,
    Jaime Bueza

  2. #2
    Join Date
    Jul 2004
    Location
    Canada, eh
    Posts
    784
    Do you mean to get a random number between m and n? I would say:
    Code:
    public int myRandom(int m, int n) {
      int a=Math.max(m, n);
      int b=Math.min(m, n);
      return Math.floor(Math.random()*(a-b))+b;
    }
    should do it.

  3. #3
    Join Date
    Jul 2004
    Location
    West Coast, Canada
    Posts
    665
    Originally posted by HaganeNoKokoro
    Do you mean to get a random number between m and n? I would say:
    Code:
    public int myRandom(int m, int n) {
      int a=Math.max(m, n);
      int b=Math.min(m, n);
      return Math.floor(Math.random()*(a-b))+b;
    }
    should do it.
    Thanks for the help bud!

    I was wondering how to make it so it generates a number of digits..say...6 digits randomly...instead of making a variable for each digit?

  4. #4
    Join Date
    Jul 2004
    Location
    Canada, eh
    Posts
    784
    You could use m=1000000, n=1999999, then get rid of the first digit.
    Code:
    public class RandomExample {
      public static void main(String args[]) {
        String sixDigits=new String(""+myRandom(1000000, 1999999)).substring(1);
        System.out.println(sixDigits);
      }
      
      public static int myRandom(int m, int n) {
        int a=Math.max(m, n);
        int b=Math.min(m, n);
        return (int)Math.floor(Math.random()*(a-b))+b;
      }
    }

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles