Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: Ý tưởng xây dựng chương trình trắc nghiệm

  1. #1
    Ngày gia nhập
    10 2010
    Bài viết
    3

    Mặc định Hỏi về Ý tưởng xây dựng chương trình trắc nghiệm

    Chào các bạn!
    Mình đang tìm hiểu về đề tài viết một chương trình thi trắc nghiệm bằng C# (mình sử dụng visual studio 2005)nhưng mình chưa biết sẽ phải vận dụng những giải thuật như thế nào.
    Ý tưởng của mình là sẽ thiết kế một cơ sở dữ liệu bằng SqlServer 2005, khi người dùng bắt đầu làm bài thì cơ sở dữ liệu được load lên từng câu một. Mỗi câu sẽ có 4 đáp án là 4 RadioButton
    Người dùng làm xong một câu, click vào Next thì cơ sở dữ liệu sẽ được load câu 2 lên, cứ thế hết một bộ đề. Và khi làm xong thì hệ thống sẽ tính điểm
    Mình chỉ muốn chỉ tìm hiểu đơn giản như vậy, chưa xét tới việc đảo đề hay nhiều bộ đề.
    Ở trên diễn đàn của chúng mình và các diễn đàn khác có rất nhiều chủ đề về trắc nghiệm nhưng chỉ toàn nói chung chung và chia sẻ code, đọc rất là khó hiểu. Bạn nào đã từng làm thì xin chỉ mình về ý tưởng, sẽ phải vận dụng những công cụ nào, cách thức như thế nào và phải dùng những cái gì để mình tự tìm hiểu. Ví dụ như trong cơ sở dữ liệu thì sẽ phải gồm những bảng nào và các trường nào. Khi dữ liệu trong cơ sở dữ liệu load lên thì sẽ phải dùng thuộc tính nào để hiển thị nội dung câu hỏi và các đáp án. Tính điểm cho người dùng khi họ làm xong bằng cách nào. Mình đã tự tìm hiểu mấy ngày nay mà không ra được. Có lẽ vẫn còn thiếu nhiều kiến thức. Mong các bạn chỉ cho mình hướng đi và ý tưởng. Cám ơn nhiều!
    Đã được chỉnh sửa lần cuối bởi phamvandai1989 : 25-10-2011 lúc 04:09 PM. Lý do: tiêu đề

  2. #2
    Ngày gia nhập
    03 2009
    Bài viết
    267

    Trích dẫn Nguyên bản được gửi bởi phamvandai1989 Xem bài viết
    Chào các bạn!
    Mình đang tìm hiểu về đề tài viết một chương trình thi trắc nghiệm bằng C# (mình sử dụng visual studio 2005)nhưng mình chưa biết sẽ phải vận dụng những giải thuật như thế nào.
    Ý tưởng của mình là sẽ thiết kế một cơ sở dữ liệu bằng SqlServer 2005, khi người dùng bắt đầu làm bài thì cơ sở dữ liệu được load lên từng câu một. Mỗi câu sẽ có 4 đáp án là 4 RadioButton
    Người dùng làm xong một câu, click vào Next thì cơ sở dữ liệu sẽ được load câu 2 lên, cứ thế hết một bộ đề. Và khi làm xong thì hệ thống sẽ tính điểm
    Mình chỉ muốn chỉ tìm hiểu đơn giản như vậy, chưa xét tới việc đảo đề hay nhiều bộ đề.
    Ở trên diễn đàn của chúng mình và các diễn đàn khác có rất nhiều chủ đề về trắc nghiệm nhưng chỉ toàn nói chung chung và chia sẻ code, đọc rất là khó hiểu. Bạn nào đã từng làm thì xin chỉ mình về ý tưởng, sẽ phải vận dụng những công cụ nào, cách thức như thế nào và phải dùng những cái gì để mình tự tìm hiểu. Ví dụ như trong cơ sở dữ liệu thì sẽ phải gồm những bảng nào và các trường nào. Khi dữ liệu trong cơ sở dữ liệu load lên thì sẽ phải dùng thuộc tính nào để hiển thị nội dung câu hỏi và các đáp án. Tính điểm cho người dùng khi họ làm xong bằng cách nào. Mình đã tự tìm hiểu mấy ngày nay mà không ra được. Có lẽ vẫn còn thiếu nhiều kiến thức. Mong các bạn chỉ cho mình hướng đi và ý tưởng. Cám ơn nhiều!
    èo nhìu vấn đề nhỉ. cái này theo ý kiến của mình thôi
    1. CSDL ở đây chỉ cần 1 bảng là đủ. bảng này mình đặt là CauHoi di, gồm các trường. ID,CauHoi, DapAn1, DapAn2, DapAn3, DapAn4, DapAnDung.
    2. Vấn các công cụ cần SQL 2005 như cậu yêu cầu, LinQ to SQL trong C#.
    3. Vấn đề chấm điểm. khi dùng linq load 1 câu hỏi lên thì sẽ có 1 class là CauHoi các đáp án xuất hiện lộn sộn A B C D. khi trả lời xong cậu xem ng ta trả lời câu nào có trùng với giá trị của DapAnDung ko, nếu đúng thì tăng điểm lên.

  3. #3
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    Bạn chắc là làm ở mức độ học hỏi là chính phải không? nếu thế thì cần làm 1 or 2 bảng thôi: Bảng câu hỏi+Loại câu hỏi(Lĩnh vực, môn,..).
    + Load câu hỏi: cho người ta chọn số lượng câu hỏi rồi load từ DB ra. Khi load câu hỏi thì load luôn câu trả lời lưu vào mảng. Chú ý: kiểu dữ liệu của mảng phải có ít nhất 2 trường: 1 cái lưu đáp án, 1 cái lưu phuơng án trả lời của người dùng.
    +Thi: next/back .. thì chỉ cần dùng 1 cái chỉ số để biết mình đang xử lý với câu hỏi nào. Khi người ta chọn phuơng án (radio checked change) thì lưu luôn câu trả lời vào mảng.
    +Kết thúc thi - chấm điểm: Chỉ việc so sánh giá trị đáp án=câu trả lời? là xong.
    Skype: mrfour.it - Yahoo:mrfour_it
    Gmail: mrfour.it@gmail.com
    Bạn muốn học lập trình? Bạn chưa có kiến thức cơ bản? Bạn muốn học từ cơ bản tới nâng cao?... Bạn muốn có source code để tham khảo? Muốn có người hỗ trợ khi học?....http://www.laptrinh123.com sẽ giúp bạn những điều đó!

  4. #4
    Ngày gia nhập
    10 2010
    Bài viết
    3

    Ở rum mình không có nút Thank nhỉ? Mình cũng sử dụng một bảng như các bạn nói, mình dùng DataTable để đựng bảng Cauhoi, tuy nhiên khi duyệt cái Table này thì nó lại duyệt một phát các dòng từ trên xuống. Mình muốn nó load từng câu một, vậy có lẽ là phải duyệt từng dòng và lần lượt lấy ra các cột. Mình không sao tìm ra được cách thức lấy.

    Mình sử dụng thế này:
    ...
    string sql = "Select * from Cauhoi";
    SqlDataAdapter da = new SqlDataAdapter(sql);
    DataSet = new DataSet();
    da.fill(ds);
    DataTable dtb =new DataTable();
    dtb=ds["Cauhoi"];
    foreach(DataRows dr in dtb.Rows)//Duyệt các dòng trong bảng Cauhoi
    {
    lblNoidung.Text = dr["Noidung"].tostring();//Laybel để hiển thị nội dung câu hỏi
    RadioButton rd = new RadioButton();
    rd.text =dr[]???//Mình không lấy được các cột ở đây ra vì nó lấy ra một loạt các radio và chỉ lấy một cột từ trên xuống dưới
    FlowHienthi.Controls.Add(rd);// Mình muốn một FlowLayoutPanel để hiển thị 4 radiobutton là 4 đáp án
    }
    Làm như trên thì nó lấy một loạt các câu và chỉ lấy được một cột. Mình thấy hình như theo cách trên là sai đường rồi thì phải. Nhưng mà chẳng nghĩ được cách nào khác cả.
    Bây giờ mình phải dùng đối tượng gì để lấy được một câu ra và load lên câu tiếp theo khi người dùng click vào Next.
    Các bạn chỉ cho mình hướng đi thôi, phải nghiên cứu thuộc tính và đối tượng gì để mình tìm hiểu.
    Cám ơn 2 bạn ha!

  5. #5
    Ngày gia nhập
    10 2011
    Bài viết
    21

    Mình có ý kiên này:|
    nếu bạn dùng tơi database thi cung ok
    nhưng ko dùng cung dc
    y mình là ta dung 1 label hiên thị câu hỏi
    và 4 radio để chọn câu hỏi
    rôi tạo 3 nút:chon-đánh dấu- kết thúc bài thi

    nút chọn:có tác dụng là chon kết quả câu hỏi đó mà ko sưa đổi đc(trong nút này có lưu kêt quả của tất cả câu hỏi ơ cách nut nha)
    nút đánh dấu: lưu kết quả mà minh phân vân
    nút kết thúc bài thi :châm điểm

    và ta tạo ra 1 list button:1 nút tương trưng 1 câu hỏi từ 1-->n nêu chon câu hỏi 1 thi hiển
    thị ra label+ text của radio cung thây đổi
    --minh nghi vậy đó,đó là danh cho 1 trương hơn,con sau này bạn mun nâng cấp lên
    thì tùy pai u tương của bạn

  6. #6
    Ngày gia nhập
    10 2010
    Bài viết
    3

    Smile Ý tưởng xây dựng chương trình trắc nghiệm

    Trích dẫn Nguyên bản được gửi bởi dragonball90 Xem bài viết
    Mình có ý kiên này:|
    nếu bạn dùng tơi database thi cung ok
    nhưng ko dùng cung dc
    y mình là ta dung 1 label hiên thị câu hỏi
    và 4 radio để chọn câu hỏi
    rôi tạo 3 nút:chon-đánh dấu- kết thúc bài thi

    nút chọn:có tác dụng là chon kết quả câu hỏi đó mà ko sưa đổi đc(trong nút này có lưu kêt quả của tất cả câu hỏi ơ cách nut nha)
    nút đánh dấu: lưu kết quả mà minh phân vân
    nút kết thúc bài thi :châm điểm

    và ta tạo ra 1 list button:1 nút tương trưng 1 câu hỏi từ 1-->n nêu chon câu hỏi 1 thi hiển
    thị ra label+ text của radio cung thây đổi
    --minh nghi vậy đó,đó là danh cho 1 trương hơn,con sau này bạn mun nâng cấp lên
    thì tùy pai u tương của bạn
    Đồng ý! Mình vừa đi học về. Buổi học hôm nay mình đã đưa nó ra được rồi. Mình cũng chọn một laybel để hiển thị câu hỏi và 4 RadioButton để hiển thị các câu trả lời. Bài học hôm nay thầy dạy chúng mình học về đối tượng DataBindings và thuộc tính BindingNavigator. Mình đã vận dụng 2 đối tượng này để lấy từng câu một ra và có thể Next sang câu tiếp theo được, tuy nhiên chỉ sợ là thủ công quá. Nhưng mà cảm giác rất khoái khi mục đích của mình thực hiện được. Vấn đề bây giờ là mình phải tìm hiểu cách chấm điểm và tính thời gian. Nhưng mà mình sẽ nghiên cứu trước đã, có vấn đề gì không ra được, mình sẽ lại phải phiền các bạn trên rum ha!
    Cám ơn các bạn nhiều
    Mà hình như bạn dragonball90 cũng học ở Hui hay sao vậy. Ý tưởng của bạn giống giống với chương trình trắc nghiệm của trường mình. Phải nói là phần mềm trường mình rất tuyệt vời đó.

Các đề tài tương tự

  1. Dự án "trải nghiệm nghề nghiệp" - báo sinh viên việt nam
    Gửi bởi hanhle132456 trong diễn đàn Tuyển dụng - Việc làm CNTT
    Trả lời: 0
    Bài viết cuối: 11-12-2012, 12:21 AM
  2. 1 câu trắc nghiệm về quá tải toán tử
    Gửi bởi kydinh trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 06-06-2012, 07:39 PM
  3. ADO.NET Chương trình trắc nghiệm ??
    Gửi bởi kid72 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 19-06-2011, 09:18 PM
  4. Làm trắc nghiệm môn cơ sở dữ liệu với
    Gửi bởi aduyen128 trong diễn đàn Thắc mắc MySQL và SQLite
    Trả lời: 12
    Bài viết cuối: 20-12-2010, 01:51 PM
  5. Bài toán tráo đổi câu trắc nghiệm
    Gửi bởi huulinh244 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 6
    Bài viết cuối: 05-04-2010, 09:37 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn