Tải bản đầy đủ (.pdf) (23 trang)

Hệ thống bài tập visual basic pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.47 MB, 23 trang )

 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 1 -
 THNG BÀI TP VISUAL BASIC
Email :
Mobile : 0989995221
PHN I : Bài Tp C S Làm Vic Trên u Khin
Bài 1 : Tng Quan V Visual Basic
BT1, Xây dng ng dng
• a Form vào ng dng
• Thit lp Form khi ng
• Gi Form2 hin th tu khin trên Form1
• Cách thoát khi ng dng
BT2, S dng hàm MsgBox và InputBox
• Thit k chng trình
• TextBox cho phép nhp thông tin trc tip hoc qua lnh
• Khi click nút InputBox : s dng lnh InputBox  nhp thông tin. Sau ó hin th
thông tin vào TextBox
• Khi Click nút MsgBox : s xut thông tin trênTextBox ra thông báo bng MsgBox
• Khi Click nút lnh Exit : s thoát khi chng trình
BT3, S dng hàm MsgBox hin th tin trình khi ng và kt thúc Form
{s kin : Initialize, Load, QueryUnload, Unload, Terminate}
Yêu cu hc viên cho bit th t tin trình thc hin ca chng trình.
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 2 -
Bài 2 : Làm Vic Trên Các u Khin C S
BT1, Chng trình Hello
• Thit k Form
• Khi bn nhp tên vào ô text bên di và kích nút Hello thì kt qu là 1 li chào
hin th lên Label  trên
• Nút Clea dùng  xoá trng ni dung ca textbox và label
BT2, Di chuyn Form (Top,Left)


• Thit k giao din chng trình
• Khi click trên các nút lnh thì Form s di chuyn ti các v trí nh trên.
• Label s hin th kt qu v trí hin va c di chuyn ti.
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 3 -
BT3, S kin n Enter trên TextBox
• Cho phép nhp thông tin bt k vào ô Text1. Không cho phép cp nht bt k
thông tin nào trên Text2
• Sau khi n Enter  Text1 thì ni dung trên ó sc hin th xung bên di
Text2
BT4, Cn chnh và thit lp kiu font, màu sc trên Textbox
• Phn cn chnh : làm vic trên OptionBox
o Cho phép bn chn 1 trong 3 loi cn chnh : trái - gia - phi
o VD : Text1.Alignment = 0’
• Phn x lý cho phép bn thit lp kiu ch cho Text : làm vic trên CheckBox
o Các kiu ch : m – Nghiêng - Gch Chân - Gch Ngang
o Text1.FontBold = Check1.Value
• Phn Màu Sc : Làm vic trên OptionBox
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 4 -
o Cho phép thay i màu nn (BackColor) và màu ch (ForeColor)
o S dng 2 loi màu sc là trng (vbWhite) và en (vbBlack)
BT5, Làm vic trên OptionBox và Ni Chui
• Bn s thay i ni dung trên ô Text tu thuc vào s la chn bên di các
OptionBox
• Khi n OptionBox thì thông tin s lu vào bin strLoaiMay và strHDH.Sau ó s
ng  hin th lên Textbox
• Text1.Text = "Bn ang chn s dng " & strLoaiMay & " chy trên nn " &
strHDH
BT6, Công c Timer

• Yêu cu :
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 5 -
o Thit k chng trình gm 1 Timer và 3 Label
o Label th nht cho hin th liên tc gi hin ti ca h thng
o Label th hai hin th ngày tháng ca h thng bng ting anh
o Label th ba hin th ngày tháng ca h thng bng ting vit
BT7, Làm vic trên ListBox
Yêu cu :
• Thit k giao din nh trên
• Cho phép nhp d liu vào 1 ô text, d liu có thc a vào ListBox khi n
nút [Thêm Vào ListBox]
• Khi n nút [Xoá Khi ListBox] thì phn tang c chn s b xoá b khi listbox
(chú ý nu cha chn hoc listbox trng thì không thc hin chc nng này)
• Phn thông tin ca ListBox s cho bit các thông tin nh sau :
o ListCount : tng s phn tang có trong listbox(ListCount)
o ListIndex : v trí ca phn tang c la chn trên list box (ListIndex )
o Text : ni dung ca phn tang chn tên listbox (Text)
• Chng trình s kt thúc khi bn n nút Kt Thúc
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 6 -
BT8, Bài Toán Tính Tng
Yêu cu :
• Bn s thit k 3 mu form nh thc hin vic vic tính toán trên 2 s.
• Vic la chn phép toán s tu thuc bn la chn u khin tng ng
BT9, Bài tp v HscrollBar và VscrollBar
• Thit k giao din
• Yêu cu :
o Thit lp các HscrollBar có min =0 và max =255
o Khi thay i giá tr các Hscroll thì pha màu li cho nn Form

• Me.BackColor = RGB(HScroll1.Value, HScroll2.Value,
HScroll3.Value)
o Các giá tr màu tng ng c hin th bên cnh
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 7 -
Bài 3 : Cu Trúc u Khin – Hàm – Th Tc
BT1, Gii phng trình bc 2
• Yêu cu
o Ch cho phép thay i giá tr h s a,b,c
o Khi click Gii phng trình, yêu cu a ra thông báo nghim  Label kt qu:
§ Nu vô nghim, n 2 ô text cha nghim i
§ Nu nghim kép, ch hin th 1 ô text cha nghim ó
§ Nu 2 nghim, cho hin thy  trên 2 ô text
BT2, Tìm Max – Min trong 6 s nguyên c nhp
Yêu Cu
• Cho phép nhp 6 s bt k vào 6 ô text. Chú ý nu nhp sai(không là kiu s) thì
phi bt ngi dùng nhp li. (S dng s kin Validate).
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 8 -
• Khi click nút Tìm s ln nht thì kim tra xem s nào trong 6 só ln nht thì
hin th ra ô text kt qu.
• Tin hành tng t tìm s nh nht trong 6 s.
BT3, Lch Can – Chi
• Yêu cu
o Sau khi click nút m Âm Lch thì nút này s b m.Nút này ch sáng lên
khi có s thay i trên ô text nhp nm dng lch
o Ô Text kt qu luôn m, không cho chnh sa.(Có th s dng Label thay
th)
• Hng dn
o Nm âm lch c ghép li t 10 Can và 12 Chi.(vi chu k 60 nm)

o Can có c khi ta ly nm dng lch chia cho 10 và ly phn d
o Chi có c khi ta ly nm dng lch chia cho 12 và cng ly phn d.
o Nhng phn dó là ch s tng ng trong bng Can-Chi sau :
CAN Canh Tân Nhâm Quý Giáp t Bính inh u 
N mod 10
0 1 2 3 4 5 6 7 8 9
CHI Tí u n Mão Thìn  Ng Mùi Thân u Tut i
N mod 12
4 5 6 7 8 9 10 11 0 1 2 3
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 9 -
BT4, Kim tra s nhp có là nguyên t hoc hoàn thin không?
Yêu cu :
• Cho phép bn nhp 1 s nguyên bt k (ch cho phép nhp s vào ô Text)
• Cho phép bn la chn 2 chc nng  kim tra só là nguyên t hay hoàn
thin. Khi mun chy chc nng nào thì bn kích vào u khin chc nng ó.
BT5, Kim tra tam giác
Yêu cu :
• Bn c phép nhp 3 cnh ca tam giác vào 3 ô Text (chú ý ch cho phép nhp
 vào ô text)
• Khi n thc hin thì tin hành kim tra xem 3 cnh bn nhp có lp thành tam giác
hay không.
o Nu không lp thành tam giác thì thông báo ra ô text kt qu
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 10 -
o Nu úng là tam giác thì bn tin hành kim tra xem ó là loi tam giác gì
u – cân – vuông cân – vuông – thng). ng thi vic thông báo loi
tam giác thì bn tính chu vi và din tích ca tam giác ó và hin ra text kt
qu tng ng.
BT6 , Bài toán tính tin n

Yêu cu :
• Ch cho phép nhp d liu kiu s trên 2 ô ch sn
• Khi n Tính tin thì ta phi kim tra và m bo xem ch s mi >= ch s c thì
i thc hin tính tin,nu không tho mãn thì hin thông báo lên cho ngi dùng
bit  nhp li
• Tin n c tính da trên tng sn ã s dng
o 100 su tính giá 500/s
o T 101-150 mi s có giá là 800/s
o T 151-200 giá mi sn là 1000/s
o T 210 tri thì s là 1200/s
BT7, Tính lãi sut và s tháng vi giao dch gi tin
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 11 -
Yêu cu :
• Cho phép bn nhp các thông tin c bn nh sau : s tin ban u bn gi, lãi
sut ngân hàng theo chu k tháng, chu k tính lãi.
• Giao dch 1
o Cho phép bn nhp s tháng mà bn s d kin gi
o Sau ó thc hin tính toán cho bn bit c s tin lãi và tng s tin s
nhn c nu bn gi úng theo s tháng ó
• Giao dch 2
o Cho phép bn nhp s tin mình mun nhn c t s tin gc
o Chng trình s tin hành tính toán và cho bn bit là s tháng ti thiu
n phi gi  nhn c s tin ó.
Bài 4 : X Lý Chui và Mng S Nguyên
BT1, In o ngc chui ký t
Yêu cu :
• Cho phép bn nhp 1 chui ký t bt k vào ô text chui
• Sau ó tin hành in ra chui o ngc ca nó xung ô text kt qu. Vic thc
hin in ngc có th tin hành theo 2 cách là s dng vòng For  in o ngc

ng ký t trong chui ni dung nhp hoc dùng hàm StrReverse (Text2.Text =
StrReverse(Text1.Text))  tng o chui
BT2, Lc ký t trùng lp trong chui
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 12 -
Yêu cu :
• Cho phép bn nhp 1 chui ký t có ni dung bt k vào ô text ni dung
• Khi n nút thc hin thì bn tin hành duyt chui và lc b nhng ký t trùng lp.
i dung kt qu s là 1 chui mi không có ký t trùng lp na.
BT3, Kim tra nguyên âm - ph âm trong chui ký t
Yêu cu :
• Cho phép bn nhp 1 chui ký t bt k vào ô nhp
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 13 -
• Sau khi bn n nút Lit kê thì chng trình tin hành kim tra chui va nhp. Kt
qu tr li s là :
o Các Nguyên âm trong chui (không trùng lp) và tng s lng ca nó
o Các ph âm (không trùng lp) và tng s lng có trong chui nhp
• Kt thúc chng trình bng cách n nút Thoát
BT4, Chun hoá chui ký t
Yêu cu :
• Cho phép bn nhp 1 chui ký t bt k và có li (tha du cách, ký tu không
vit hoa) vào ô text
• Vic chun hoá ni dung thì tu thuc chc nng c la chn  OptionBox. Có
2 chc nng chun hoá là chun hoá cách (xoá các du cách tha) hoc chun
hoá xâu (xoá toàn b du cách tha và bin ch cái u thành ch hoa)
• Kt qu thu c s hin th ra ô text kt qu bên di
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 14 -
BT5, Bài tp tng hp v mng s nguyên

Yêu cu :
• Nhp s lng phn t mng mun có, Sau ó n nút sinh s thì chng trình s
ng sinh ra 1 mng s nguyên ngu nhiên và hin ra ô text bên di
• Chc nng kim tra s trong mng :
o Tìm và in ra trong mng các phn t là s nguyên t (ch có 2 c)
o Tìm và in ra các phn t là s hoàn thin (tng c bng chính nó)
• Chc nng kim tra s theo u kin :
o Bn a s t [1-9] vào 2 ô ComboBox
o Cho phép bn chn chc nng chia ht cho [combo1] và tn cùng là
[combo2]
o Khi n tìm kim thì chng trình tin hành duyt mng và in ra các phn t
tho mãn u kin mà bn chn
• Chc nng tính toán trên mng :
o Tính tng trên mng : tng các phn t chn, l và tng toàn b các phn

 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 15 -
o Phn t có giá tr ln nht, nh nht trong mng.
• Chc nng sp xp :
o Sp xp các phn t tng dn, gim dn
o Sp xp các phn t chn lên trên, l thì xung di
o Sp xp các phn t l lên trên, chn thì xung di
PHN II : Lp Trình C S D Liu
Bài 1 : C S D Liu Access – Truy Vn SQL
CSDL 1 : Qun Lý Sinh Viên (qlsinhvien.mdb)
Thit k các bng (table) sau :
ng Khoa
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Makhoa
Text (5) Mã khoa

TenKhoa Text (50) Tên khoa
ng Sinh Viên
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
MaSV
Text (5) Mã sinh viên
HoTen Text (50)  và tên
Makhoa Text (5) Mã khoa
Ngaysinh Date/Time Ngày sinh
Phai Yes/No Phái (Nam/N)
Dienthoai Text (50) n thoi
Diachi Text (50) a ch
ng Môn Hc
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Mamon
Text (5) Mã môn hc
Tenmon Text (5) Tên môn
Sotinchi Number (Integer) S tín ch (S tit)
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 16 -
ng Kt Qu
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
MaSV
Text (5) Mã sinh viên
Mamon
Text (5) Mã môn hc
Diem Number (Single) m thi môn ca SV
Liên kt các bng (Relation Ship)
CSDL 2 : Qun Lý Bán Hàng Hoá (hanghoa.mdb)
Thit k các bng (table) sau :
ng Khách Hàng

Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Makh
Text (5) Mã khách hàng
Tenkh Text (50)  tên khách hàng
Diachi Text (50) a ch
Dienthoai Text (50) n thoi
Fax Text (50)  Fax
ng Hoá n
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Sohd
Text (5)  hoá n
Makh Text (5) Mã khách hàng
Ngayhd Date/Time Ngày lp hoá n
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 17 -
ng Hàng Hoá
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Mahh Text (5) Mã hàng hoá
Tenhh Text (50) Tên hàng hoá
Donvi Text (10) n v tính
ng Chi Tit Hoá n
Tên Trng (Field) Kiu D Liu (Type) Mô T (Description)
Sohd Text (5)  hoá n
Mahh Text (5) Mã hàng hoá
Soluong Number (Integer) S lng
Dongia Number (Double) n giá
Liên kt các bng (Relation Ship) :
Bài 2 : H Thng Bài Tp
I, H thng bài vi CSDL qlsinhvien.mdb
BT 1 : Thit k 1 Form có giao din nh sau :

 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 18 -
Form trên có chc nng dùng  cp nht danh mc Khoa
Các chc nng trên form :
• B nút di chuyn cho phép di chuyn qua li các bn ghi
• Nút Thêm : dùng  cho phép thêm mi 1 bn ghi mi
• Nút Sa : dùng  ghi d liu theo s thay i ca ngi dùng
• Nút Xoá : xoá b bn ghi hin hành
BT 2 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  cp nht danh mc Môn hc
Các chc nng trên form :
• B nút di chuyn cho phép di chuyn qua li các bn ghi
• Nút Thêm : dùng  cho phép thêm mi 1 bn ghi mi
• Nút Sa : dùng  ghi d liu theo s thay i ca ngi dùng
• Nút Xoá : xoá b bn ghi hin hành
• Ô TextBox s tín ch : ch cho phép nhp giá tr là kiu s
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 19 -
BT 3 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  cp nht h s sinh viên.
Các chc nng chính ca Form :
• B nút di chuyn cho phép di chuyn qua li gia các bn ghi. Khi di chuyn thì
phi ch rõ th t bn ghi hin hành trên tng s bn ghi.
• B nút cp nht (Thêm, Sa, Xoá) thc hin các chc nng tng ng
• S dng DataCombo  lit kê tên khoa mà sinh viên theo hc
• S dng Option  hin th trng Phái (Gii Tính)
• Nu nhp ngày sinh thì phi kim tra d liu nhp vào có phi là kiu ngày tháng
hay không. (S dng s kin Validate)
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 20 -

Bài 4 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  qun lý sinh viên theo khoa
Các chc nng chính ca Form :
• Các ô TextBox hin th danh mc các khoa có trong CSDL
• B nút di chuyn dùng  di chuyn các bn ghi danh mc khoa
• Khi các bn ghi danh mc khoa di chuyn thì tìm kim danh sách các sinh viên
a khoa ó và hin th lên DataGrid bên di.
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 21 -
Bài 5 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  qun lý m thi ca sinh viên.
Các chc nng chính ca form là :
• Các ô Textbox lit kê 1 thông tin ch yu ca sinh viên là mã sinh viên hà h tên
sinh viên
• B nút di chuyn cho phép di chuyn qua li gia các bn ghi. Khi di chuyn thì
phi cho bit v trí bn ghi hin hành trên tng s bn ghi.
•  trong DataGrid lit kê kt qu hc tp ca sinh viên ang xem. Thông tin lit kê
m : mã sinh viên, Tên môn mà SV ã thi, m thi, kt qu ca tng môn.
• Mc kt qu hin th là “” khi m thi >=5, ngc li hin th là “Trt”
II, H thng bài vi CSDL HangHoa.mdb
Bài 1 : Thit k 1 Form có giao din nh sau :
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 22 -
Form trên có chc nng dùng  cp nht danh mc Khách hàng
Các chc nng chính ca chng trình :
• B nút di chuyn cho phép di chuyn qua li gia các bn ghi. Khi di chuyn thì
phi cho bit v trí bn ghi hin hành trên tng s bn ghi.
• B nút cp nht (Thêm, Sa, Xoá) thc hin các chc nng tng ng
Bài 2 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  cp nht danh mc Hàng hoá

Các chc nng chính ca chng trình :
• B nút di chuyn cho phép di chuyn qua li gia các bn ghi.
• B nút cp nht (Thêm, Sa, Xoá) thc hin các chc nng tng ng
Bài 3 : Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  qun lý chi tit hàng bán theo hoá n.
 thng bài tp Visual Basic Biên son : GV Bùi Tin Trng
Ngun : - 23 -
Các chc nng chính ca Form là :
• DataCombo lit kê toàn b các hoá n có trong CSDL
• Khi ta chn bt k s hoá n nào,  di DataGird s lit kê chi tit các mt
hàng có trong hoá n ó.
• Cho bit tng s mt hàng c bán trong hoá n ã chn ó.
Bài 4 :
Thit k 1 Form có giao din nh sau :
Form trên có chc nng dùng  qun lý hoá n theo khách hàng.
Các chc nng chính ca Form là ;
• Các ô TextBox lit kê danh sách khách hàng trong CSDL
• B nút di chuyn cho phép di chuyn qua li gia các bn ghi. Khi di chuyn thì
phi cho bit v trí bn ghi hin hành trên tng s bn ghi.
• Vi mi khách hàng, ta lit kê các hoá n mà khách hàng ó ã giao dch. Thông
tin bao gm : S hoá n giao dch, Ngày lp hoá n và tng giá tr ca hoá n
ó.
• Tng giá tr hoá n tính theo công thc.
o TongThanhTien = SUM(Soluong*Dongia)

×