如何获得数字大小在20到350之间的随机的double类型的随机值并保留两位小数
时间: 2024-03-13 20:43:30 浏览: 134
可以使用Java中的Math.random()函数来生成0到1之间的随机数,然后将其映射到20到350之间,并使用DecimalFormat类来格式化保留两位小数。具体代码如下:
```java
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
double randNum = Math.random() * (350 - 20) + 20;
DecimalFormat df = new DecimalFormat("#.##");
System.out.println(df.format(randNum));
}
}
```
输出结果为一个20到350之间的随机的保留两位小数的double类型的数字。
相关问题
java随机生成93-95的小数保留两位
你可以使用Java的Math类中的random方法来生成一个介于0和1之间的随机小数,然后将其乘以(95-93),再加上93,即可得到一个介于93和95之间的随机小数。最后,你可以使用DecimalFormat类来保留两位小数。以下是一个示例代码:
```java
import java.text.DecimalFormat;
public class RandomNumber {
public static void main(String[] args) {
double min = 93.00;
double max = 95.00;
double randomNumber = min + Math.random() * (max - min);
DecimalFormat df = new DecimalFormat("#.00");
String formattedNumber = df.format(randomNumber);
System.out.println("随机小数为:" + formattedNumber);
}
}
```
运行以上代码,你将得到一个保留两位小数的随机小数,它将介于93和95之间。
xcel中,B1和B2输入两个数,使用vba生成1个小数点后保留两位的随机数A,要求在B1与B2之间,然后生成9个0.01-0.04之间的随机两位小数,A分别与9个随机两位小数相加生成一个新的小数,生成9次,最后将9个随机数填到C4-C12中
在Excel中使用VBA来实现这个功能,可以按照以下步骤编写代码:
1. 首先,在VBA编辑器中创建一个新的模块,或者打开已有的模块。
2. 定义一个函数,例如`GenerateRandomNumbers`,接收B1和B2的值作为参数:
```vba
Function GenerateRandomNumbers(B1 As Double, B2 As Double) As Variant
Dim arr() As Double ' 存放随机数的数组
Dim i As Integer
ReDim arr(1 To 9)
' 生成一个小数点后保留两位的随机数,并确保在B1和B2之间
Dim randomNum As Double
randomNum = Int((B2 - B1 + 0.01) * 100) / 100 ' 四舍五入到小数点后两位
' 将该随机数存入数组
arr(1) = randomNum
' 生成剩余8个0.01-0.04之间的随机数并添加到数组
For i = 2 To 9
arr(i) = Int((0.04 - 0.01) * Rnd + 0.01) * 100 ' 保证是两位小数
Next i
' 计算并将结果添加到C列
Dim sum As Double
For i = LBound(arr) To UBound(arr)
sum = sum + arr(i)
Cells(i + 4, 3).Value = sum ' C4到C12分别存放结果
Next i
GenerateRandomNumbers = arr ' 返回整个数组
End Function
```
3. 调用函数:在需要的地方,比如单元格C4下面一行,你可以输入`=GenerateRandomNumbers(B1, B2)`来触发随机数的生成。
阅读全文