# GÓC SÁNG TẠO > Khu vực lập trình > Java >  Làm sao để tạo số ngẫu nhiên không trùng nhau

## dangtin1

Mọi người ơi. Em muốn tạo 9 số ngẫu nhiên trong có giá trị từ 1 đến 9 mà không trùng nhau.
Mọi người bảo tạo đến đâu thì lưu đến đấy rồi kiểm tra xem nó được dùng hay chưa? Nếu chưa thì tạo tiếp cho đến khi được 9 số, nếu đc dùng rồi thì tạo lại tiếp. Nhưng em không hiểu làm thế nào để kiểm tra xem nó được dùng hay chưa?Có phải là lưu số đã tạo vào một mảng không? Help me!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Thanks!!!!!!!!!!!!!!!!!!!!!!!

----------


## annguyen

Hix. Không ai giúp mình à???

----------


## vipkongtu

em hoc trung cấp nghế mà môn lắp ráp cài đặt em hok hiểu có cách nào để khác phục hok chỉ em với

----------


## songdonggun

Bạn dùng Random trong gói java.util nhé [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA  l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR  EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]
Ví dụ:


```
import java.util.*;
....
Random objRd = new java.util.Random();
System.out.println(objRd.nextInt()); // In ra số ngẫu nhiên
System.out.println(objRd.nextInt(9)); // In ra số ngẫu nhiên nhỏ hơn 9
....
```

Bạn tự tìm hiểu thêm về Random của gói util nhé [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA  l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR  EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]

----------


## canhosaigon

nếu dễ vậy đâu ai hỏi đâu bạn....người ta hỏi trong trùng cơ mà ...Random() kiểu bạn nó quăng ra số 3 thì nó vẫn quăng ra 3 nữa...cái vấn đề ở đây là quăng số nào rồi thì ko quăng lại nữa

----------


## wuisatang

```
using System;
using System.Collections;
using System.Linq;
using System.Text;

namespace NonRepRandom
{
   class Program
   {
      static void Main(string[] args)
      {
         const int MAX=9;
         int count=0;
         ArrayList ls = new ArrayList();
         Random rd = new Random();

         //Add 1 random # có gtrị từ 1-9 vào n
         int n=rd.Next(1,MAX+1); 
         //Đưa n vào array list
         ls.Add(n);
         do  
         {
            n=rd.Next(1,MAX); //add số thứ 2 vào n
            //nếu số này chưa có trong array list thì add vào
            if (!ls.Contains(n))
               ls.Add(n);
            count++;
         }
         while(count<=1000*MAX);
         for (int i=0; i<ls.Count ; i++)
            Console.WriteLine("{0}", ls[i].ToString());
         Console.ReadLine();
      }
   }
}
```

----------

