1. 程式人生 > >Delphi 中生成指定範圍不重複的隨機數

Delphi 中生成指定範圍不重複的隨機數

剛開始學習Dephi,寫這個相當於學習筆記,有不正確的地方,請各位大神多多指教

生成指定範圍的不重複大的隨機數 

指定隨機數的範圍,生成不重複的隨機數

while si < sum do                    //si 表示生成隨機數的個數

            begin
              randSum[si]:= Random(maxSum-minSum)+minSum;               //maxSum  表示最大範圍值,minSum表示最小範圍值
              if si > 0 then
                begin
                  ni := 0;
                  while ni < si do                                                        //每產生一個隨機數,就將這個隨機數與前面產生的所有的隨機數進行比較
                    begin
                      if randSum[ni] = randSum[si] then                  //將剛生成的隨機數與之前的產生的隨機數進行比較 ,如果隨機數重複
                        begin
                          Break;                                                                   //跳出while迴圈
                        end;
                      Inc(ni);                                                                   //如果沒有重複,ni加1,繼續也後面的進行比較
                    end;
                end
              else
                begin
                  Inc(si);
                end;
              if si = ni then                                                     //此時沒有break,所以沒有重複!如果break掉則si不變
                si := ni + 1;                                                         //i++;
            end;

相關推薦

Delphi 生成指定範圍重複隨機數

剛開始學習Dephi,寫這個相當於學習筆記,有不正確的地方,請各位大神多多指教 生成指定範圍的不重複大的隨機數  指定隨機數的範圍,生成不重複的隨機數 while si < sum do                    //si 表示生成隨機數的個數  

jsMath.random()生成指定範圍數值的隨機數

取整 以及 mat ceil lai floor alert 測試的 parse js中Math.random()生成指定範圍數值的隨機數 Math.random函數就不像php的rand函數一樣可以生成指數範圍的數據了,math.random只是生成了一個偽隨機數,之

java生成指定範圍內的隨機數

lan this 原理 n) public exti -1 方法 這才   我們經常說Java中的隨機數是偽隨機數,那麽我們要知道什麽是偽隨機數。 什麽是偽隨機數?   1、真正意義上的隨機數在某次產生過程中是按照實驗過程中表現的分布概率隨機產生的,其結果是不可預測的,是不

JS如何用Math.random()來生成指定範圍內的隨機數

寫在前面:關於取得隨機數的時候一般都會帶著小數點,生成一個整數總是更容易方便我們計算以及使用,那麼有哪些方法可以使隨機數生成一個整數? 傳送門:(我明天再寫。) 引言:隨機數在實際中使用很廣泛,比如要隨即生成一個固定長度的字串、數字。或者像js-task1中一樣隨機選

[js][技巧]生成指定範圍指定個數的重複隨機數

今天偶然看到的 比如要生成 1-100範圍之內的10個不重複隨機數,程式碼就可以這麼寫 var arr = []; for (var i = 1; i <=100; i++) { arr.push(i); } arr.sort(

java生成指定範圍重複隨機數(包含邊界值)

生成指定範圍內的隨機數rand.nextInt(100);這行程式碼將生成範圍 0~100 之間的隨機數,有趣的是,取值可能為 0,但不可能為 100。因為隨機生成值區間是 [0, 100)範圍內的整數,實際上就是區間 [0, 99]。因為最大邊界為100,可惜不能等於100

指定範圍獲取指定個數的正序排列的重複隨機數

/** * 隨機數排序 * */ private void paiXun(int [] i){ List<String> list=new ArrayList<Stri

C#生成重複隨機數

如果只是生成一個隨機數,C#中的Random函式就足夠用了,但如果需要生產若干個隨機數,且這些數不能重複,就需要自己來寫相應的方法了。 1.使用List<int>來儲存隨機數,List.Contain方法來判斷生成的隨機數是否已經存在 以在1-10中取5個不重複

java生成指定範圍隨機數

min str rand body clas java test class public 要生成在[min,max]之間的隨機整數, import java.util.Random; public class RandomTest { public stati

js生成指定範圍隨機數

index strong clas num var str dom return min 一、min ≤ r ≤ max function RandomNumBoth(Min,Max){ var Range = Max - Min; var Ran

生成N位重複隨機數

package com.jack.question.random; import java.util.Arrays; import java.util.Random; /** * @author lvh */ public class RandomArray { /* * 如題,定義一

生成重複隨機數序列(Java)

從1到n之間抽取出k個不重複的隨機數,用Math.random()實現的話,可參照下面的程式碼。 int r = (int) (Math.random() * n), 生成下標,據此下標,去到numbers數組裡拿到隨機數。然後將numbers[r]的值設定成

shell生成指定範圍隨機數與字串

shell 生成指定範圍隨機數與隨機字串 1.使用系統的 $RANDOM 變數 [email protected]:~$ echo $RANDOM17617$RANDOM 的範圍是 [0, 32767] 如需要生成超過32767的隨機數,可以用以下方

c# 生成指定範圍的數字和字母組合隨機數

private static char[] constant =  {  '0','1','2','3','4','5','6','7','8','9',  'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o'

JavaScript生成指定範圍隨機數隨機數序列

在JavaScript中我們經常使用Math.random()方法生成隨機數,但是該方法生成的隨機數只是0-1之間的隨機數。先看如下常用方法的特徵: 1.Math.random(); 結果為0-1

JS在一定範圍內取出一定的重複隨機數

//迴圈建立一個數組的函式 function randomArr(maxcount){ var arr = []; for(var i=0;i<maxcount;i++){ a

JS如何用Math.random()來生成指定範圍內(如:1-100)的隨機數

一、包括下線數字(lower)不包括上限數字(upper)/** * 產生隨機整數,包含下限值,但不包括上限值 * @param {Number} lower 下限 * @param {Numbe

生成重複隨機數,自己寫的,嘿嘿

package 基礎演算法; import java.util.Arrays; public class radomNums { public static void main(String[] args){ int[] array=new int[8]; i

JS生成指定範圍隨機數 Math.random

function randomNum(minNum,maxNum){ switch(arguments.length){ case 1: retur

Raptor生成任意範圍隨機數

1.問題背景     在Raptor中,有時候我們需要一些指定範圍的隨機數,但是我們從Raptor幫助檔案中可以發現,random產生[0,1)之間的隨機數,這顯然是不能滿足需要的,所以本篇教學探討怎麼生成任意範圍的隨機數。 幫助檔案中的random函式介紹