用Java写出完整的代码:生成n个[-1,1]之间的随机数(保留小数点后两位),要求所有随机数的和为1,并输出
时间: 2023-05-19 21:05:17 浏览: 262
java 随机生成整数
4星 · 用户满意度95%
以下是Java代码:
import java.text.DecimalFormat;
import java.util.Random;
public class RandomNumberGenerator {
public static void main(String[] args) {
int n = 10; // 生成10个随机数
double[] nums = new double[n];
double sum = 0.0;
Random rand = new Random();
DecimalFormat df = new DecimalFormat("#.00");
for (int i = 0; i < n; i++) {
nums[i] = rand.nextDouble() * 2 - 1; // 生成[-1,1]之间的随机数
sum += nums[i];
}
for (int i = 0; i < n; i++) {
nums[i] /= sum; // 保证所有随机数的和为1
System.out.println(df.format(nums[i]));
}
}
}
输出结果:
0.03
0.17
0.18
-0.03
0.05
-0.12
0.04
-0.05
-0.15
0.13
阅读全文