产生随机输出:从901到999的100个数字

时间:2014-04-10 15:10:11

标签: java random

我试图创建10列和10行数字的两个独立输出。我知道我可以使用数字4到7进行第一次输出,使用数字10到90进行第二次输出。但是我在使用数字901到999进行第三次输出时遇到了麻烦。下面是我的Java代码:

import java.util.Random;

public class LabRandom
{

private static final Random rand = new Random();

public static void main(String[] args)
{

    int number;

    int i = 1;

    while (i <= 100)
    {
        //number = rand.nextInt(4) + 4;
        System.out.printf("%-5d", rand.nextInt(4) + 4);

        if (i % 10 == 0)
        {
            System.out.println();
        }
        i++;
    }
    System.out.println();

    i = 1; 

    while (i <= 100)
    {
        //number = rand.nextInt(4) + 4;
        System.out.printf("%-5d", rand.nextInt(9)*10+10);

        if (i % 10 == 0)
        {
            System.out.println();
        }
        i++;
    }
    System.out.println();

    i = 1;

     while (i <= 100)
    {
        //number = rand.nextInt(4) + 4;
        System.out.printf("%-5d", rand.nextInt(100)*10);

        if (i % 10 == 0)
        {
            System.out.println();
        }
        i++;
    }

   }    
}

3 个答案:

答案 0 :(得分:1)

我无法理解你想要的东西。如果要在900到999范围内创建100个随机选择数字的输出,并且每10个这样的数字后面有换行符,请尝试将此循环添加到代码中:

i = 1;
while (i <= 100) 
{
    // generate a random number from 0 to 100-1,
    // then add 900 to transform the range to 900 to 999
    System.out.printf("%-5d", rand.nextInt(100) + 900);

    if (i % 10 == 0)
    {
        System.out.println();
    }
    i++;
}

答案 1 :(得分:0)

顺便说一句,如果你真的想要打印10到90的数字,那么你的第二个循环是不正确的。 现在你打印10的倍数,从10到90,例如10,20,30 ..... 90

对于每个数字之间,你会想要: rand.nextInt(80)10

答案 2 :(得分:0)

        // difference between the highest and the lowest value you want to have in your result
        int range = 99;
        // the lowest possible value you want to see in your result
        int lowestValue = 901;
        //note that you will never get the numbers 900 and 1000 this way, only between
        int result = rand.nextInt(range) + lowestValue;

您可能想要了解nextInt(value)究竟是做什么的(在适当的IDE中很容易做到,因为它将提供JavaDoc工具提示,当然可以在这样的通用Java类中详细介绍)。