JAVA程序!求产生随机数并求和!急啊 !!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA程序!求产生随机数并求和!急啊 !!相关的知识,希望对你有一定的参考价值。
请高手指点啊!救命的啊!!!
public int getRandom()int a=1,b=2,c=3,returnValue;
java.util.Random r=new java.util.Random();
int ran=r.nextInt(100);
if(ran<25)
return a;
if(ran<60&&ran>=25)
return b;
if(ran<100&&ran>=60)
return c;
return -1;
返回-1的情况是因为条件有错误,如果程序没有错的话,是不会返回-1的,只有1,2,3这三个数
随机生成一个小于100的数,那么这个数小于25的概率是25%,大于等于25并且小于60的概率是35%,大于等于60的概率是40%。
希望能对你有所帮助 参考技术A public int getTotal(int SIZE,int MAX) // SIZE 是要产生多少个随机数, MAX 是随机数的大小范围
int total = 0;
Random ran = new Random();
for(int i = 0; i < SIZE; i++)
total += ran.nextInt(MAX);
return total;
// over ^_^
使用python已知平均数求随机数
问题描述:产生40个数,范围是363-429之间,平均值为402
思路:
1 产生一个随机数
2 使用平均数求和随机数求出第二个数,生成20组
3 将排序打乱
# -*- coding: cp936 -*- import random import string ###################产生随机整数################### ###################第一个数随机产生,第二个使用平均数求出################### #count 数字的个数 #average 平均数 #begin 起始区间 #end 结束区间 def int_random (count, average, begin, end): #print "wzh_random" numarr = [0 for x in range(2)]; i = 0; while (1): num_first = random.randrange(begin, end); #第二个数 num_second = average * 2 - num_first; if (num_second >= begin and num_second <= end): numarr[i] = num_first; i = i + 1; numarr[i] = num_second; break return numarr; ###################产生随机数################### ###################第一个数随机产生,第二个使用平均数求出################### #count 数字的个数 #average 平均数 #begin 起始区间 #end 结束区间 def float_random (count, average, begin, end): #print "wzh_random" numarr = [0 for x in range(2)]; i = 0; while (1): num = random.uniform(begin, end); #取两位小数 num_first = round(num, 2); #第二个数 num_second = average * 2 - num_first; if (num_second >= begin and num_second <= end): numarr[i] = num_first; i = i + 1; numarr[i] = num_second; break return numarr; ###################写文件################### def write_file (filename, content): fo = open (filename, "ab"); fo.write(content); fo.close(); def show_list (list): for i in list: print i, print; ###################主函数调用产生整形随机数################### #40个数字,平均数400,363 - 429 之间 def test_random_int(): count = 40; average = 402; begin = 363; end = 429; numarr_count = 0; numarr = [0 for x in range(count)]; for i in range (count / 2): list = int_random (40, 402, 363, 429) j = 0; for j in range (len(list)): numarr[numarr_count] = list[j]; numarr_count += 1; content = ‘‘; #打乱排序 print "数据未打乱:"; show_list (numarr) random.shuffle(numarr); print "数据打乱:"; show_list (numarr) for i in numarr: content = content + ‘ ‘ + str(i); #print content; #追加写入文件 filename = "test.txt"; print "文件名称:",filename; write_file (filename, content) write_file (filename, "\n"); ###################主函数调用产生实型随机数################### #40个数字,平均数400,363 - 429 之间 def test_random_float(): count = 40; average = 402; begin = 363; end = 429; numarr_count = 0; numarr = [0 for x in range(count)]; for i in range (count / 2): list = float_random (40, 402, 363, 429) j = 0; for j in range (len(list)): numarr[numarr_count] = list[j]; numarr_count += 1; content = ‘‘; #打乱排序 print "数据未打乱:"; show_list (numarr) random.shuffle(numarr); print "数据打乱:"; show_list (numarr) for i in numarr: content = content + ‘ ‘ + str(i); #print content; #追加写入文件 filename = "test.txt"; print "文件名称:",filename; write_file (filename, content) write_file (filename, "\n"); #调用测试产生整形随机数 test_random_int(); #调用测试产生实型随机数 test_random_float();
以上是关于JAVA程序!求产生随机数并求和!急啊 !!的主要内容,如果未能解决你的问题,请参考以下文章
随即产生N个随即两位正整数,并按由大到小的顺序排列,并求中位数 用JAVA程序 急!!!!
java程序,随机产生包含20个元素的数组,求出数组中的最大值,最小值和平均值