LỜI CẢM ƠN Trong những năm cuối thế kỷ 20 tin học ở Việt Nam càng phát triển mạnh mẽ và ứng dụng ngày càng sâu rộng trong hầu hết các lĩnh vực khoa học kỹ thuật, kinh tế, văn hoá, xã hội. Cùng với các lĩnh vực khác trong công cuộc đổi mới đất nước ngành giáo dục và đào tạo đang từng bước áp dụng những tiến độ khoa học. Những phần mềm quản lý, dạy học với sự giúp đỡ của máy tính đã và đang phát triển của nền giáo dục nước nhà. Đặc biệt là trong công tác quản lý tin học làm giảm nhẹ sức lực của người quản lý, tiết kiệm thời gian, gọn nhẹ và thuận tiện hơn rất nhiều so với thực hiện công việc quản lý theo cách truyền thống cũ trên giấy tờ. ứng dụng tin học vào công tác quản lý đặc biệt là thu hẹp được không gian lưu trữ, tránh được thất lạc dữ liệu từng bước tự động hoá và cụ thể hoá lượng thông tin theo yêu cầu quản lý, có thể tìm kiếm, tra cứu thông tin nhanh một cách đầy đủ và chính xác hơn.
Trang 1LỜI CẢM ƠN
Trong những năm cuối thế kỷ 20 tin học ở Việt Nam càng phát triển mạnh
mẽ và ứng dụng ngày càng sâu rộng trong hầu hết các lĩnh vực khoa học kỹthuật, kinh tế, văn hoá, xã hội
Cùng với các lĩnh vực khác trong công cuộc đổi mới đất nước ngành giáodục và đào tạo đang từng bước áp dụng những tiến độ khoa học Những phầnmềm quản lý, dạy học với sự giúp đỡ của máy tính đã và đang phát triển củanền giáo dục nước nhà Đặc biệt là trong công tác quản lý tin học làm giảmnhẹ sức lực của người quản lý, tiết kiệm thời gian, gọn nhẹ và thuận tiện hơnrất nhiều so với thực hiện công việc quản lý theo cách truyền thống cũ trêngiấy tờ ứng dụng tin học vào công tác quản lý đặc biệt là thu hẹp đượckhông gian lưu trữ, tránh được thất lạc dữ liệu từng bước tự động hoá và cụthể hoá lượng thông tin theo yêu cầu quản lý, có thể tìm kiếm, tra cứu thôngtin nhanh một cách đầy đủ và chính xác hơn
Trang 2Khảo sát bài toán
Một số vấn đề liên quan đến bài toán:
Xác Suất Thống Kê 3 Kiến Trúc MT & XL 5
)
* 1 (
DVHT
DVHT DTL
DTL1: Điểm thi lần 1
DVHT: Đơn vị học trình
Trang 3* Điểm trung bình môn cao nhất(ĐTBMCN): được tính theo công thức sau ĐTBMCN =
) (
)
* (
DVHT
DVHT DTLCN
DTLCN: Điểm thi lần cao nhất
Điểm trung bình cho sinh viên thi tốt nghiệp(ĐTBTN): được tính theocông thức sau
ĐTBTN =
) (
) (
HeSo DCMTTN
DCNTTN: điểm các môn thi tốt nghiệp sau khi tính cả hệ số
HeSo: hệ số của môn thi tốt nghiệp
* Điểm trung bình cho sinh viên bảo vệ (ĐTBBVTN) được tính theocông thức sau
DPB
Khi tính điểm trung bình lần 1, cao nhất , tốt nghiệp , bảo vệ lấy đến hai sốthập phân khi đã làm tròn theo quy định
3 Các mức đánh giá kết quả học tập
Nội dung các mức đánh giá kết quả học tập của sinh viên gồm 3 mức:
Mức môn học: đánh giá kết quả học tập từng môn học trong một kỳ
Mức học kỳ: đánh giá kết quả học tập theo từng kỳ học của sinh viên dựavào mức môn học
Mức cả năm: đánh giá kết quả học của sinh viên cả năm dựa theo mức họckỳ
Mức cuối khóa: đánh giá kết quả học tập của sinh viên trong toàn bộ cảkhóa học
Trang 4Căn cứ vào điểm trung bình cuối khoá học và điểm trung bình chung tốtnghiệp, xếp loại tốt nghiệp được quy định thành 6 loại sau: Giỏi, Khá, Trungbình khá, Trung bình, Yếu , Kém Tiêu chuẩn cụ thể sau:
Loại giỏi: Điểm trung bình cuối khoá từ 8.0 trở lên không thi lại môn nào,điểm trung bình tốt nghiệp từ 8.0 trở lên
Loại khá: Điểm trung bình cuối khoá từ 7.0 trở lên, điểm trung bình tốtnghiệp từ 7.0 đến 8.0
Loại trung bình khá: Điểm trung bình cuối khoá từ 6.5 đến 7.0, điểm trungbình tốt nghiệp từ 6.5 đến 7.0
Loại trung bình: Điểm trung bình cuối khoá từ 5.0 đến 6.5, điểm trung bìnhtốt nghiệp từ 5.0 đến 6.5
Loại yếu: Điểm trung bình cuối khoá và điểm trung bình tốt nghiệp từ 4.0đến 5.0
Loại kém: Điểm trung bình cuối khoá và điểm trung bình tốt nghiệp từ 4.0trở xuống
Yêu cầu cụ thể của bài toán
Sử dụng chương trình Visual Basic để lập ra được các form
Thông qua chương trình VB kết hợp với Access hoặc SQL Server có thể đưa ra màn hình môt số câu lệnh đơn giản như:
Cho biết các mã, tên, lớp của các SV có địa chỉ là <nhập địa chỉ>
Cho biết mã môn, tên môn học ở học kỳ <nhập hoc kỳ>
Cho biết mã các SV có thi môn <nhập mã môn> và điểm thi trong khoảng <nhập khoảng điểm>
Cho biết mã, tên, lớp của các SV có thi môn <nhập mã môn>
và diểm thi trong khoảng <nhập khoảng điểm>
Trang 5 Cho biết mã, tên SV trong lớp <nhập lớp> và không thi môn
Trang 6Sinh viên
Mã SVTên SVNgày sinhĐịa chỉLớpGhi chú
Môn
Mã mônTên môn
Số trìnhHọc kỳ
Kq thi
Mã SV
Mã mônĐiểm
Trang 7Sotrinh Number Byte Đơn vị học trình
Sơ đồ quan hệ cài đặt trong Access
Trang 8
Công cụ lập trình
I: Ngôn ngữ VISUAL BASIC:
1- Giới thiệu về ngôn ngữ Visual Basic.
Trang 9Khi tung ra Visual Basic 1.0 BillGates chủ tịch kiêm tổng giám đốcMicorsofl đã mô tả đó là sản phẩn “đáng nể” Trải qua gần 10 năm và 6 phiênbản, Visual Basic như một ‘‘công cụ dễ và mạnh để phát triển các ứng dụngnhưng phô chương trên cho đến khi bạn thật sự thấy rằng, hiện nay đang cóhàng chục triệu người sử dụng và phát triển ứng dụng MS Windows.
Visual Basic đã nhanh mạnh hơn và dễ sử dụng hơn Visual Basic 1.0,Visual Basic 3.0 tăng thêm các cách thức đơn giản để điều khiển những cơ sở
dữ liệu mạnh nhất sẵn có Visual Basic 4.0 hỗ trợ sự phát triển 32 bit và bắtđầu tiến trình chuyển Visual Basic thành một ngôn ngữ lập trình hướng đốitượng đầy đủ Visual Basicthêm khả năng tạo tập tin hành (exe) thực sự và cókhả năng lập các điều khiển riêng
Phiên bản 6.0 mới nhất của Visual Basic kế tục truyền thống này:Những ứng dụng Windows 95/98 và Windows NT giờ đây được phát triển chỉcần rất ít thời gian so với trước đây Các lỗi lập trình (mối rối-bugs) không cònthường xuyên xẩy ra nữa và nếu có cũng dễ phát hiện và sửa chữa hơn
Nói đơn giản là với Visual Basic, việc lập trình với Windows trở nênhiệu quả hơn mà còn lý thú hơn
Đặc biệt Visual Basic cho phép bổ xung các menu, hộp văn bản, nútlệnh, nút tuỳ chọn, các hộp kiểm tra, các hộp danh sách, thanh cuộn, các hộptập tin thư mục cho các cửa sổ trống Người dùng có thể dùng các lưới (Gird)
để quản lý cơ sở dữ liệu trên bảng Chúng ta có thể truyền thông tin với cácứng dụng Windows khác và có thể là quan trọng nhất có phương pháp dễ dàng
để người sử dụng điều khiển và truy cập các cơ sở dữ liệu (những thành phần
đó dược Visual Basic gọi là các điều khiển)
Trang 10Có thể có nhiều cửa sổ trên màn hình Các cửa sổ này có toàn quyềntruy cập clipoard vào các thông tin trong hầu hết các ứng dụng Windows khác.Chúng ta có thể dùng Visual Basic để truyền thông tin với các ứng dụng khácđang chạy dưới Windows.
.Lí do chọn Microsofl Visual Basic:
Bất kể làm một viêc gì chúng ta cũng đều bắt đầu từ những cái hiện có
mà đi lên, không phải trở về con số không mới bắt đầu
Chúng ta từng làm việc trên máy tính, và ít nhất là thao tác trênWindows, tạo ra những văn bản trên Word, vậy chúng ta thấy những gì? Cógồm các dãy thực đơn (Menu), hộp thoai (Dialog), các nút lựa chọn (Optibutton), các nut kiểm tra (Check button), các nút lệnh (OK), (Cancel), Nếu phảihọc lập trình viên từ đầu, có thể nói chưa chắc chắn chúng ta đã tạo ra các đề
mục trên sau 1 đến 2 năm học Nhưng với Visual Basic bạn đã có thể tạo ra
được tất cả chúng, mà chỉ mất từ 1 đến 3 tháng Nói cách khác tất cả những gì
chúng ta thấy phần mềm trong Windows chúng ta có thể tạo ra từ Visual
Basic Tuy nhiên không nói đến mặt trái của Visual Basic, thì cũng không thật
khách quan khoa học Visual Basic tuỳ thuộc hoàn toàn vao Windows, chúng ta
có thể chạy các ứng dụng của Visual Basic trên một ứng dụng khác mà không
phải la Windows
2: Visual Basic và Micrroft Acess.
Visual Basic là ngôn ngữ lập trình hướng đối tượng, nó giả quyết đượcmọi bài toán Visual Basic cũng giả quyết được bài toán quản lý như Acess, đó
là những đặc trưng riêng của Visual Basic mà các ngôn ngữ khác không có Đểphát huy hết khả năng của và Acess chúng ta cũng phải hiểu thật rõ cơ chế sử
lý dữ liệu (Jet Engine), Jet Engine cho phép làm việc nhiều dạng thức dữ liệu
Trang 11khác nhau và cung cấp giao diện lập trình hướng đối tượng để làm viêc vớiCSDL Jet Engine là thành phần cốt lõi của hệ quản trị CSDL Acess do đó cóthể trở thành một nhà lập trình chuyên nghiệp với Visual Basic thì đầu tiên cầnnghiên cứu là Jet Engine.
Visual Basic 6.0 cho phép người lập trình nhúng các đối tượng hay sửdụng các hàm trong thư viện DLL một cách dễ dàng Visual Basic 6.0 dùngADO Control tahy Data Control của Visual Basic 5.0, công cụ cải tiến truynhập đến nhiều dạng dữ liệu của các hãng khác nhau cung cấp Visual Basic6.0 có điều khiển ActiveX phong phú hơn các phiên bản khác, các điều khiểnmới của VisualBasic 6.0 ADO Data, Coolbar, DataRepeater, DataTimePicker.FlatSrollbar, HierachicalFlexGril, Inagecombo, MonthView thay cho một sốđiều khiển của Visual Basic 5.0
3: Mối liên hệ giữa Acess và Visual Basic
Microsoft có 2 hệ quản trị CSDL (Visual Basic Foxpro và Acess) Acess
do Microsoft phát triển từ đầu và trở thành một trong những sản phẩn thànhcông nhất Visual Basic cũng kết nối Database Engine của Acess để xử lý dữliệu, Visual Basic không phải là một hệ quản trị CSDL mà là một ngôn ngữvạn năng Với Visual Basic, ta có thể phát triển nhiều loại ứng dụng khác nhau
Nó bao gồm cả trình biên dịch, cho phép nhà phát triển sinh ra các tậptin EXE chạy độc lập 9cần có thêm các thư viện, DLL, VBX, OCX).Còn nhưVisual Basic, tuy nhiên Microsoft cung cấp thêm bộ Acess Rungtime để chạycác ứng dụng mà không cài đặt Acess
Cách thiết kế trực quan (Visual) và cách lập trình hướng sự kiện được ápdụng trong Acess và Visual Basic Acess tỏ ra mạnh hơn kho cho phép quản lýcác sự kiện tinh tế hơn, chẳng hạn như TexBox control Acess cho phép phát
Trang 12triển các trương trình cập nhật dữ liệu thông minh hơn do kiểm soát được sốliệu nhập một cách tinh tế.
Ban đầu Acess đơn giản là một hệ quản trị CSDL quan hệ (RelationDatabase Management Syem) dùng trong văn phòng (nằm trong bộ Microsoftoffice Proessinal cùng với Word Exel, Power Point) do đó Microsoft đặc biệtchú trọng đến người sử dụng cuối (End user) hơn là nhà phát triển Điều nàylàm cho công cụ hỗ trợ thiết kế (giao diện thiết kế, các Wizard cho phép tựđông hoá các quá trình thư công trong quá trình thiết kế form, table, query) củaAcess tỏ ra mạnh hơn hẳn Visual Basic
Chẳng hạn, nhiều lập trình viên kinh nghiệm khi viết các câu lệnh SQLtrong Visual Basic thường dùng kèm bộ tiết kế query trong Acess để sinh racâu lệnh câu lệnh SQL một cách dễ dàng
Acess Basic có khác biệt nhất định so với Visual Basic Chỉ đến phiên bản7.0 thì Visual Basic 4.0 đến 6.0 và Acess mới dùng chung ngôn ngữ lập trình
mà Microsofl gọi là VBA-Visual Basic for Application
Ta thấy Acess và Visual Basic khác nhau ở cách tạo ra các ứng dụng vớicác công cụ thiết kế khác nhau nhưng thành phần xử lý CSDL thì có nhiều điểntương đồng vì chúng sử dụng Jet Engine
Visual Basic cho phép biên dịch các ứng dụng thành tập tin EXE Trong khi Acess ta phải phân phối luôn cả tài nguyên thiết kế Khái niệm CSDL trongAcess bao gồm cả phần dữ liệu (các bảng) và phần ứng dụng (Query,
From.Table, Repot, Macro, Module), trong khi đối với các hệ khác, CSDL chỉ bao gồm phần dữ liệu Chiến lược bảo mật tài nguyên thiết kế phải được đặt lên hành đầu khi chọn Acess làm công cụ phát triển ứng dụng
Trang 14Private Sub cmdform3_Click()
Trang 15Private Sub cmdform1_Click()
Dim strSQL As String, strConn As String
Dim Conn As ADODB.Connection
strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\csdl.mdb"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open strConn
strSQL = "select ma, ten, lop from sinhvien where"
strSQL = strSQL & " sinhvien.diachi = '" & txtdiachi.Text & "' "
Set rsKQ = CreateObject("ADODB.RecordSet")
rsKQ.Open strSQL, Conn, 1, 3
rsKQ.Close
Set rsKQ = Nothing
Trang 16Set Conn = Nothing
End Sub
Private Sub cmdthoat_Click()
Unload Me
End Sub
Private Sub cmdform2_Click()
Dim strSQL As String, strConn As String
Dim Conn As ADODB.Connection
strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\csdl.mdb"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open strConn
strSQL = "select mamon, tenmon from mon where"
Trang 17strSQL = strSQL & " mon.hocky= '" & txthocky.Text & "' "
Private Sub cmdform3_Click()
Dim strSQL As String, strConn As String
Trang 18strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\csdl.mdb"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open strConn
strSQL = "select masv from kqthi where"
strSQL = strSQL & " kqthi.mamon= " & txtmamon.Text & " "
strSQL = strSQL & " and kqthi.diem> '" & txtdiemdau.Text & "' "
strSQL = strSQL & " and kqthi.diem< '" & txtdiemcuoi.Text & "' "
Trang 19Private Sub cmdchobiet4_Click()
Dim strSQL As String, strConn As String
Dim Conn As ADODB.Connection
strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\csdl.mdb"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open strConn
strSQL = "select sinhvien.masv, tensv, lop from sinhvien, kqthi where" strSQL = strSQL & " sinhvien.masv = kqthi.masv "
strSQL = strSQL & " kqthi.mamon= " & txtmamon.Text & " "
strSQL = strSQL & " and kqthi.diem> '" & txtdiemdau.Text & "' "
strSQL = strSQL & " and kqthi.diem< '" & txtdiemcuoi.Text & "' "
Set rsKQ = CreateObject("ADODB.RecordSet")
Trang 20Private Sub cmdchobiet5_Click()
Dim strSQL As String, strConn As String
Dim Conn As ADODB.Connection
Trang 21strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\csdl.mdb"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open strConn
strSQL = "select sinhvien.masv, tensv from sinhvien, kqthi where"
strSQL = strSQL & " sinhvien.masv = kqthi.masv "
strSQL = strSQL & " and kqthi.lop = '" & txtlop.Text & "' "
strSQL = strSQL & " and kqthi.mamon= " & txtmamon.Text & " "
strSQL = strSQL & " and kqthi.diem is null "
Trang 22Private Sub cmdform6_Click()
Dim strSQL As String, strConn As String
Dim Conn As ADODB.Connection
strConn = "Provider=Microsoft.JET.OLEDB.4.0;data source = E:\vb\
strSQL = strSQL & " and kqthi.mamon = mon.mamon "
strSQL = strSQL & " and kqthi.lop = '" & txtlop.Text & "' "
strSQL = strSQL & " and kqthi.mamon= '" & txttenmon.Text & "' "
strSQL = strSQL & " and kqthi.diem is null "