返回列表 發帖

產生不重複之隨機亂數

本帖最後由 陳品肇 於 2019-2-2 17:11 編輯

試產生4個範圍介於0~9, 不重複之隨機亂數.
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {         
  6.    
  7.     srand(time(NULL)); //給定亂樹種子
  8.     int n[4];
  9.    
  10.     cout<<"4個介於0~9的不重複隨機亂數為:";
  11.    
  12.     for(int i =0;i<4;i++)
  13.     {                        
  14.         n[i] = rand()%10;  // rand()%(最大值-最小值+1)+ 最小值 值放進陣列
  15.         
  16.         for(int j=0;j<i;j++)  //跑我之前已經產生的結果
  17.         {
  18.              if(n[i]==n[j])  //比較值是否已經存在
  19.              {
  20.                  i--;
  21.                  break;
  22.              }
  23.         }
  24.     }
  25.    
  26.    
  27.     for(int i=0;i<4;i++)
  28.     {
  29.        cout<<n[i]<<" ";
  30.     }
  31.     cout<<endl;
  32.     system("pause");
  33.     return 0;   
  34. }
複製代碼
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.    srand(time(NULL));
  7.    int n[4];
  8.    cout<<"4 個介於0~9 的不重複隨機亂數為:"<<endl;
  9.    for (int i=0; i<4; i++)
  10.    {
  11.      n[i]=rand()%10;
  12.      for (int j=0; j<i; j++)
  13.      {
  14.           if(n[i]==n[j])
  15.           {
  16.               i--;
  17.               break;
  18.           }
  19.      }   
  20.    }
  21.    for (int i=0; i<4; i++)
  22.    {
  23.    cout<<n[i]<<" ";
  24.    }
  25.    cout<<endl;
  26.    system("pause");
  27.    return 0;   
  28. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     srand(time(NULL));
  7.     int n[4];
  8.     for(int i=0;i<4;i++)
  9.     {
  10.             n[i]= rand()%10;
  11.               for(int j=0;j<i;j++)
  12.         {
  13.                 if(n[i]==n[j])
  14.                 {
  15.                               i--;
  16.                               break;
  17.                 }
  18.         }
  19.     }
  20.     cout<<"4個介於0-9不重複的隨機亂數為:";
  21.     for(int i=0;i<4;i++)
  22.     {
  23.         cout<<n[i]<<" ";
  24.     }
  25.       cout<<endl;
  26.   
  27.    system("pause");
  28.    return 0;
  29. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int r[4];
  7.     srand(time(NULL));
  8.     cout<<"4個介於0~9的不重複隨機亂數為:";
  9.     for(int i=0;i<4;i++)
  10.     {
  11.        r[i]=rand()%10;
  12.        for(int j=0;j<i;j++)
  13.        {
  14.                if(r[i]==r[j])
  15.                {
  16.                              i--;
  17.                              break;
  18.                }   
  19.        }
  20.     }
  21.     for(int i=0;i<4;i++)
  22.         cout<<r[i]<<" ";
  23.     cout<<endl;     
  24.     system("pause");
  25.     return 0;
  26. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {         
  6.    
  7.     srand(time(NULL));  
  8.     int n[4];
  9.    
  10.     cout<<"4個介於0~9的不重複隨機亂數為:";
  11.    
  12.     for(int i =0;i<4;i++)
  13.     {                        
  14.         n[i] = rand()%10;
  15.         for(int j=0;j<i;j++)
  16.         {
  17.              if(n[i]==n[j])
  18.              {
  19.                  i--;
  20.                  break;
  21.              }
  22.         }
  23.     }
  24.    
  25.    
  26.     for(int i=0;i<4;i++)
  27.     {
  28.        cout<<n[i]<<" ";
  29.     }
  30.     cout<<endl;
  31.     system("pause");
  32.     return 0;   
  33. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {         
  6.    
  7.     srand(time(NULL));
  8.     int n[4];
  9.    
  10.     cout<<"4個介於0~9的不重複隨機亂數為";
  11.    
  12.     for(int i =0;i<4;i++)
  13. {                        
  14.         n[i] = rand()%10;  
  15.         
  16.     for(int j=0;j<i;j++)  
  17. {
  18.        if(n[i]==n[j])  
  19. {
  20.          i--;
  21.          break;
  22. }
  23. }
  24. }
  25.    
  26.    
  27.     for(int i=0;i<4;i++)
  28. {
  29.        cout<<n[i]<<" ";
  30. }
  31.     cout<<endl;
  32.     system("pause");
  33.     return 0;   
  34. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.    srand(time(NULL));
  7.    int n[4];
  8.    cout<<"4個介於0~9的不重複隨機亂數為: ";
  9.    for(int i=0;i<4;i++)
  10.    {
  11.       n[i] = rand()%10;
  12.       for(int j=0;j<i;j++)
  13.       {
  14.          if(n[i]==n[j])
  15.          {
  16.             i--;
  17.             break;
  18.          }
  19.       }
  20.    }
  21.    for(int i=0;i<4;i++)
  22.    {
  23.       cout<<n[i]<<" ";
  24.    }
  25. cout<<endl;
  26. system ("pause");
  27. return 0;
  28. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     srand(time(NULL));
  7.     int x[4];
  8.     for(int i=0; i<4; i++)
  9.     {
  10.         x[i]=rand()%10+0;
  11.         for(int j=0; j<i; j++)
  12.         {
  13.             if(x[i]==x[j])
  14.             {
  15.                 i--;
  16.                 break;
  17.             }
  18.         }
  19.     }
  20.     for(int i=0; i<4; i++)
  21.     {
  22.         cout<<x[i]<<" ";
  23.     }
  24.     cout<<endl;
  25.     system("pause");
  26.     return 0;
  27. }
複製代碼

TOP

返回列表