public class MathRandom{

    public static int GetEvenNum(double a,double b){
        int s = (int)a +(int)(Math.random()*(b-a));
        if(s%2==0){
           return s;
        }else
           return s+1;
    }
      
    public static void For(double a,double b){
     for(int i=1;i<=6;i++){
            System.out.println("s" + i + "=" + GetEvenNum(a,b));
        }
        System.out.println();
        
    }
      
    public static void main(String args[]){
     For(1,1000);
    }
}
问题是让在1-1000的区间产生6个随机数 并且求出他们的和  我已经把随机数都求出来了  但是求和想了半天也没想出来该怎么弄,求大神给指教下,谢谢

解决方案 »

  1.   

    import java.util.Random;public class MathRandom {    public static int GetEvenNum(double a,double b){
            int s = (int)a +(int)(Math.random()*(b-a));
            if(s%2==0){
               return s;
            }else
               return s+1;
        }    public static void For(double a,double b){
            int sum = 0; // 保存和        for(int i=1;i<=6;i++){
                sum += GetEvenNum(a,b);
                System.out.println("s" + i + "=" + sum);
            }
            System.out.println();    }    public static void main(String args[]){
            For(1,1000);
        }
    }
      

  2.   

    package test;import java.util.Random;public class RandomSum {
    public static void main(String[] args) {
    int[] nums = new int[6];
    int sum = 0;
    Random random = new Random();
    for (int i = 0; i < nums.length; i++) {
    nums[i] = getNums(random);
    }
    for (int i = 0; i < nums.length; i++) {
    System.out.print(nums[i] + ",");
    sum += nums[i];
    }
    System.out.print("\r"+sum);
    } public static int getNums(Random random) {
    return random.nextInt(1000);
    }
    }
     我比较喜欢按照自己的思路,写代码
      

  3.   

    package test;import java.util.Random;public class RandomSum {
    public static void main(String[] args) {
    int[] nums = new int[6];
    int sum = 0;
    Random random = new Random();
    for (int i = 0; i < nums.length; i++) {
    nums[i] = getNums(random);
    }
    for (int i = 0; i < nums.length; i++) {
    System.out.print(nums[i] + ",");
    sum += nums[i];
    }
    System.out.print("\r"+sum);
    } public static int getNums(Random random) {
    return random.nextInt(1000);
    }
    }是这样的
      

  4.   

    建议用Random类来生成随机数,我给你个例子吧,结果都打印出来了:
    public class RandomTest {
    private static Random random = new Random();
    private static int[] getRandomArray(){
    int[] randomArray = new int[6];
    System.out.println("生成的1到1000的随机数为:");
    for(int i = 0; i < 6; i++){
    randomArray[i] = random.nextInt(1000) + 1;
    System.out.print("  " + randomArray[i]);
    }
    return randomArray;
    }
    private static int getRandomSum(int[] randomArray){
    int sum = 0;
    for(int random: randomArray){
    sum += random; 
    }
    return sum;
    }
    public static void main(String[] args) {
    int[] array = getRandomArray();
    int sum = getRandomSum(array);
    System.out.println("他们之和为: " + sum);
    }
    }
      

  5.   

    你这里的nextInt(1000)随机数是取不到1000但是可以取到0,也就是说范围区间是[0,1000),所以应该在后面加上1才正确
      

  6.   

    public static void getRandom(){
    int sum=0;
    Random ran=new Random();
    for (int i = 0; i < 6; i++) {
    sum=sum+ran.nextInt(1000)+1;
    }
    System.out.println(sum);
    }

    public static void main(String[] args) {
    getRandom();
    }
      

  7.   

    =你用的那个import java.util.Random根本没也用到啊
      

  8.   

    能不用数组吗  感觉不是很喜欢数组  而且对这方面很生疏那这个呢?public class RandomTest {
    private static Random random = new Random();
    private static void getRandomArray() {
    System.out.println("生成的1到1000的随机数为:");
    int sum = 0;
    for (int i = 0; i < 6; i++) {
    int random_i = random.nextInt(1000) + 1;
    System.out.print("  " + random_i);
    sum += random_i;
    }
    System.out.println("它们的和为: " + sum);
    }
    public static void main(String[] args) {
    getRandomArray();
    }
    }
      

  9.   


    static int sum = 0;
    public class MathRandom{
    public static int GetEvenNum(double a, double b) {
    int s = (int) a + (int) (Math.random() * (b - a));
    if (s % 2 == 0) {
    return s;
    } else
    return s + 1;
    } public static void For(double a, double b) {
    for (int i = 1; i <= 6; i++) {
    int temp = GetEvenNum(a, b);
    System.out.println("s" + i + "=" + temp);
    sum += temp ;
    }
    System.out.println(); } public static void main(String[] args) throws FileNotFoundException { For(1, 1000);
    System.out.println("总数为: " +  sum);
        }
    }红色部分为我添加的代码,比较看看。
      

  10.   

    public class MathRandom{
    <span style="color: #FF0000;">static int sum = 0;</span>
        public static int GetEvenNum(double a, double b) {
            int s = (int) a + (int) (Math.random() * (b - a));
            if (s % 2 == 0) {
                return s;
            } else
                return s + 1;
        }
     
        public static void For(double a, double b) {
            for (int i = 1; i <= 6; i++) {
                int temp = GetEvenNum(a, b);
                System.out.println("s" + i + "=" + temp);
                <span style="color: #FF0000;">sum += temp ;</span>
            }
            System.out.println();
     
        }
     
        public static void main(String[] args) throws FileNotFoundException {
     
            For(1, 1000);
            <span style="color: #FF0000;">System.out.println("总数为: " +  sum);</span>
        }
    }格式乱了。