delphi7的随机函数是啥?最好是有例子,并且随机函数在一定范围内。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi7的随机函数是啥?最好是有例子,并且随机函数在一定范围内。相关的知识,希望对你有一定的参考价值。

参考技术A 随机数相关的几个函数:
1、RandSeed;//随时机数发生的“种子”。如果不赋值那么每次执行产生的随机数列是一样的。
所以该值必须每次调用均应是不同值。
2、Randomize;//用当前机器时间作为“种子”初始化随机数发生器。
3、Random() ;//由“种子”初始化的随机数出发,开始产生随机数序列 但是Delphi中的Random()产生的是伪随机数,也就是说,程序的两次运行,Random()产生的随机数是一样的。先运行一下Randomize,再Random就是真正的随机数了即:Randomize //初始化随机数发生器
Random()
例:产生20-500之间的随机数Randomize;
20+Random(500-30+1);
参考技术B 用这个函数就可以了function RandomRange(const AFrom, ATo: Integer): Integer;

R:如何生成嘈杂的正弦函数

【中文标题】R:如何生成嘈杂的正弦函数【英文标题】:R: How to generate a noisy sine function 【发布时间】:2015-11-13 17:21:47 【问题描述】:

我对整个 R 事物还是很陌生。

我有以下目标;我有一个正弦函数,可以描述随时间变化的钙粒子数: 像 y = a * sin (b*t) + c

由于实际上钙的生成和去除是在随机事件中描述的,我想在我的函数中添加一个随机噪声项(最好在平均噪声幅度上进行扩展)。

类似于 z = y + random*Amplitude

你能帮帮我吗?

最好的

【问题讨论】:

【参考方案1】:

这是我将使用的一种方法 - 我提供了两种关于如何生成错误的选项(均匀分布与高斯分布):

### Equation: y=a*sin(b*t)+c.unif*amp
# variables
n <- 100 # number of data points
t <- seq(0,4*pi,,100)
a <- 3
b <- 2
c.unif <- runif(n)
c.norm <- rnorm(n)
amp <- 2

# generate data and calculate "y"
set.seed(1)
y1 <- a*sin(b*t)+c.unif*amp # uniform error
y2 <- a*sin(b*t)+c.norm*amp # Gaussian/normal error

# plot results
plot(t, y1, t="l", ylim=range(y1,y2)*c(1,1.2))
lines(t, y2, col=2)
legend("top", legend=c("y1", "y2"), col=1:2, lty=1, ncol=2, bty="n")

【讨论】:

【参考方案2】:

y &lt;- jitter(a*sin(b*t) + c) 使用 jitter() 函数会给你的函数添加随机噪声。您可以在 jitter() 中指定“数量”参数来控制幅度。

【讨论】:

jitter() 不就是为了可视化目的而设计的小噪音吗(避免重复的数据点相互混淆)? 不熟悉jitter,但在任何情况下它都不能如上所示工作给Error in a * b + c : non-numeric argument to binary operator 您不再需要 +c 部分,即只需 jitter(asin(bt)) - 如果您删除 @javadba 它将起作用。 谢谢@NickCotter

以上是关于delphi7的随机函数是啥?最好是有例子,并且随机函数在一定范围内。的主要内容,如果未能解决你的问题,请参考以下文章

delphi7中如何设定窗体里的组件随窗体变化?(按比例扩大或缩小)

Delphi7 -写在一切之前

机器学习数学基础 - 概率论

用js或jquery怎么实现一个数字随时间随机增加?

matlab imwrite函数保存图片问题。imwrite(X,map,filename,fmt) 中着重说一下map是啥意思,怎么用?

C#中能得到随机数的函数是啥啊,怎么才能将随机输出的随机数赋给一个变量?