Math.random()我现在使用,它返回一些数字,例如0.7183306051883847. 这个函数有一些不好的方面:
0.一开始
没有设置数字符号长度的选项
没有向字符串添加字母的选项
我想知道,生成字符串(例如预期字符长度 - 6)的最短代码是什么?
2en81u39438sldksfn谢谢。
我只是好奇...
你如何模拟随机性?它是如何在现代操作系统(Windows,Linux等)中完成的?
编辑:好的,不仅仅是生成随机数,这可以通过rand()大多数高级编程语言中的调用函数来完成.
但是,我更关心它是如何在现代操作系统中实际完成的.
我试图创建一个范围从0到9的随机数的数组,其中这个变量是kickerNumbers.虽然说不兼容的类型我得到编译错误.我曾试图改变(int)到[int]喜欢它说,但我不认为这是正确的反正足够的切切实实的事实并非如此.有没有其他方式来写这个?我需要它作为前4个数字为0-9,但第五个数字需要更小,如0-4.对于0-4,我只是做了一个完全不同的变量.这是一个不错的选择吗?以下是给出错误的行的示例代码.
import java.util.Scanner;
import java.util.InputMismatchException;
public class CashBallTest
{
public static void main(String[]args)
{
Scanner keyboard = new Scanner(System.in);
int kicker;
int[] kickerNumbers = (int)(Math.random()*0+9);
int kickerPowerball=(int)(Math.random()*0+4);
Run Code Online (Sandbox Code Playgroud)
错误如下:
\CashBallTest.java:9: incompatible types
found : int
required: int[]
int[] kickerNumbers = (int)(Math.random()*0+9);
Run Code Online (Sandbox Code Playgroud)
我也试图改变(int)到(int[])但随后说,这是一个不可兑换的型计数为双时,它需要有一个int[],但我看不出它得到double类型.
我在C中使用rand()函数.为了限制范围我做rand()%1e6,所以数字在0和1e6之间.生成的一组数字样本如下......
5320428 6386236 5536806 7396572 8798055 1095930 9398652
所以你可以看到数字总是b/w 1e5和1e6.但是我想要随机分布的数字,即它们可以是20,2000或2e5等......,并且它们不太可能是b/w 1e5和1e6.如何在C中实现这种分布?
所以我有这段代码,它为我提供了一些图像的顶部和左侧属性的随机数。
var random1 = Math.ceil(Math.random() * 500);
var random2 = Math.ceil(Math.random() * 500);
$(document).ready(function () {
$('#randomp').css('top', random1);
$('#randomp').css('left', random2);
});
Run Code Online (Sandbox Code Playgroud)
问题是我更愿意随机化 1 到 100% 之间的数字。那可能吗?
我无法访问编译器 atm,但我正在考虑如何生成随机浮点值。要生成随机整数值,我将使用:
Random r = new Random();
int x = r.nextInt(8) + 9;
Run Code Online (Sandbox Code Playgroud)
我如何生成一个介于 6.2 和 7.4 之间的随机数?
我的代码:
import random
randomlist = []
for i in range(0,100):
n = random.randint(1.0,2.0)
randomlist.append(n)
print(randomlist)
Run Code Online (Sandbox Code Playgroud)
从上面的代码:
n = random.randint(1.0,2.0)
Run Code Online (Sandbox Code Playgroud)
这是正确的
但当
n = random.randint(0.1,1.0)
n = random.randint(0.001,1.001)
Run Code Online (Sandbox Code Playgroud)
给出错误
> Traceback (most recent call last): File
> "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py",
> line 31, in <module>
> start(fakepyfile,mainpyfile) File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py",
> line 30, in start
> exec(open(mainpyfile).read(), __main__.__dict__) File "<string>", line 4, in <module> File
> "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/random.py",
> line 248, in randint
> return self.randrange(a, b+1) File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/random.py",
> line 212, in randrange
> …Run Code Online (Sandbox Code Playgroud) 我想在 Java 程序中使用 math.random() 。
这种获得双打的方式的分布是怎样的?
我需要在 C# 中生成自定义随机时间 - 例如,不是随机几分钟,而是仅随机间隔 15 分钟 - 不是获得 17:11,而是 17:15。我怎样才能生成这个?我是这个问题的新手。谢谢