PASCAL 使用随机函数生成一个 10 元素的函数

发布于 科技 2024-02-15
18个回答
  1. 匿名用户2024-01-25

    1.随机生成:random表示随机,如random(100); 指随机生成 0 99 的整数。

    2.连续使用 10 个随机数,生成一系列 10 个数字,每个数字介于 -100 和 100 之间。 这就是第一句话的意思。

    例如,以下系列符合条件:

    3.子序列是此序列中的一系列连续数字。

    例如,66 45 -55 是它的子序列,这样的子序列很多,你需要找到最大的一个。

    例如,此序列中最大的是:

    那么我的序列的最大和的子序列,也就是答案,是 25 66 92 90 98

    思路:对于 i:=1 到 10,做 a[i]:=random(100);

    但是没有负数,所以你可以从 0 中减去 a[2]、a[3]、a[5]、a[7]、a[10](只是几个),这样就有了负数,对吧?

    然后你正在寻找一个子序列,看看哪个是最大的,好的,输出。

  2. 匿名用户2024-01-24

    楼上分析。

    我会编写程序。

    vara,b:array[1..10] of integer;

    i:integer;

    t:integer;

    beginfor i:=1 to 10 dobeginif random(2)<1 then a[i]:=-random(100)

    else a[i]:=random(100)end;for i:=1 to 10 doif a[i]>0 then begin t:=t+1;b[t]:=a[i];end;

    for i:=1 to t-1 do

    write(b[i],' ');

    write(b[t]);

    end.附言你给谁并不重要,只要帮你解决它。

  3. 匿名用户2024-01-23

    上述说法是不正确的。

    随机函数 random 是 Pascal 语言中的标准函数,random(x) 的值是任何大于或等于 0 且小于或等于 x-1 的正整数(请注意,这在实践中很容易出错),其中 x 是整数类型。

    Randomize 是一个初始化随机数生成器,它允许每次用 Pascal 语言运行程序时随机函数的值都不同。 如果不编写此语句,则每次运行程序时随机函数的值将与上次运行程序时相同。

  4. 匿名用户2024-01-22

    varn:integer;

    beginrandomsize;

    n:=random(x);x 是要输入的数字,小于 maxintwriteln(n);

    end.使用起来非常简单,只要好好学习就行了!

  5. 匿名用户2024-01-21

    randomize

    i:=random(范围上限 - 范围下限)+ 执行 randomize 语句后的范围下限(必填)。

    random(n) 生成一个 0 n-1 的随机整数 随机 生成一个 0 1(小于 1)的随机小数,这是实用的。

    生成 n m 的随机整数 random(m-n+1)+n 生成 0 n 的随机小数(小于 n) random*n 生成 n m 的随机小数 random*(m+n)-m

  6. 匿名用户2024-01-20

    使用时先使用。

    随机。

    然后使用 random 进行随机化。

    示例:程序示例;

    beginrandomize;

    writeln(random(10));随机数的范围是 0...9 即 0...n-1

    end.

  7. 匿名用户2024-01-19

    randomize:一种随机函数生成器,每次生成不同的随机数。

    random(n):表示生成 0 n-1 的随机数。

    random(n)+m:生成 n n+m 的随机数。

  8. 匿名用户2024-01-18

    随机化初始化。

    random(x) 是随机取 0 x 之间。

  9. 匿名用户2024-01-17

    你只需要随机化一次,并在程序中第一次使用它。

    否则,它会继续初始化,从而产生相同的随机数种子。

    这可能是一个随机数种子,它利用时间制作一个随机数种子,在很短的时间内,就会得到相同的随机数种子。

  10. 匿名用户2024-01-16

    将生成随机数种子的语句放在 for 循环之外,并在循环中调用它。

  11. 匿名用户2024-01-15

    random(1000-100)+100

    由于 random 生成上限为 0 的整数,因此范围首先向下移动 100,然后在获得结果后再向上移动 100(加 100)。

  12. 匿名用户2024-01-14

    writeln( 100 + random(901) )

    为了纠正这一点,random(x) 生成属于 [0 x-1] 的整数的随机数,而 randomize 就是初始化随机因子,它通常与时间有关,并且 randomize,这将使随机因子变成一个只与时间相关的数字,所以不要在非常接近的时间使用 randomize, 否则会出错,即使多个随机数完全相同。

  13. 匿名用户2024-01-13

    你,写你想写的。

  14. 匿名用户2024-01-12

    在使用 random 之前,您需要使用 randomize 语句初始化随机数种子。

    每个随机数实际上是根据最后一个随机函数的结果计算出来的函数,所以叫伪随机,也就是说,如果前一个数是固定的,那么下一个数就确定了。

    random 实际上是 f(x) 的一个函数,然后不断迭代,即如果第一个随机数是 f(x),那么第三代是 f(f(f(f(f(x))),第一个 f(x) 中的 x 是随机数种子,一般由随机化函数执行的那一刻决定。

    fp 中随机函数中使用的特定 f(x) 在 fp 的帮助中进行了描述。

  15. 匿名用户2024-01-11

    在使用 random 之前添加一个 ranomize,整个程序只需要一个就足够了,而 random 是一个伪随机数。

    Randomize 提供不同的种子引用。

  16. 匿名用户2024-01-10

    您好,我想打开函数时犯了一个错误。

  17. 匿名用户2024-01-09

    简单来说,这个问题就是找一个介于 10 到 99 之间的随机整数,过程如下:

    vari,n:longint;

    beginreadln(n);

    randomize;

    for i:=1 to n do

    writeln(random(89)+11);

    end.

  18. 匿名用户2024-01-08

    vari,n:longint;

    beginrandomize;

    n:=random(89);

    write(n+10);

    end.随机函数在比赛中很少使用,因此了解它们很好。

相关回答
19个回答2024-02-15

楼上估计不是70,70之前是钱+经验+包包,包包是同级-49级,所以是一级)蓝色的衣服。71-79每天将随机奖励金钱+两枚凯旋徽章+经验,之后只有金钱和经验可用; 80后每天每次赠送金钱+2枚凯旋徽章,随机英雄首次奖励2枚冰霜徽章+13g(相当于每日任务奖励),此后每次奖励2枚凯旋徽章+13g。

6个回答2024-02-15

function jia(s1,s2:ansistring):ansistring;

var i,j,l1,l2:longint; >>>More

9个回答2024-02-15

1.要确定 a 是否能被 b 整除,只要 a 的余数除以 b = 0,那么它就可以被 b 整除。 否则,输出 a、除法、b、等号、商(可用可整除函数 div 整除),然后使用 a-b* 商。 >>>More

13个回答2024-02-15

我的回答一定是正确的。

rand()*100+50 是 -50 到 50 之间的随机数,而不是整数。 >>>More

8个回答2024-02-15

如果你不重复,我会给你一个更经典的**。

int a[35]; >>>More