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