1. Trang chủ
  2. » Công Nghệ Thông Tin

Tự học thiết kế chương trình cho học sinh làm toán bằng Visual Basic 6.0 tập 1 part 3 pps

60 416 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • TỰ HỌC THIẾT KẾ CHƯƠNG TRÌNH CHO HỌC SINH LÀM TOÁN BẰNG VISUAL BASIC 6.0. TẬP I

  • MỤC LỤC

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 5

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 32

  • 33

  • 34

  • 35

  • 36

  • 37

  • 38

  • 39

  • 40

  • 41

  • 42

  • 43

  • 44

  • 45

  • 46

  • 47

  • 48

  • 49

  • 50

  • HẾT TẬP I

Nội dung

Trang 1

63 PictureBox Name

Picture C:\Program Files \ Microsoft Picture1 Visual Studio \ Common \ Graphic \ Bitmaps \ Asorted \ Hand.bmp

64 PictureBox Name

Picture Picture2 C:\Program Files \ Microsoft Visual Studio \ Common \ Graphic \ Bitmaps \ Asorted \ Hand.bmp

6s PictureBox Name

Picture C:\Program Files \ Microsoit Picture3 Visual Studio \ Common \ Graphic \ Bitmaps \ Asorted \ Hand.bmp

66 PictureBox Name

Picture C:\Program Files \ Microsoft Picture4 Visual Studio \ Common \ Graphic \ Bitmaps \ Asorted \ Hand.bmp

67 PictureBox Name ,

Picture Picture5 C:\Program Files \ Microsoft Visual Studio \ Common \ Graphic \ Bitmaps \ Asorted \ Hand.bmp

68

PictureBox

Name

Picture

Picture6

C:NProgram Files \ Microsoft Visual Studio \ Common \ Graphic \ Bitmaps \ Ascrted

\ Hand.bmp

Trang 2

Bude 1

THIET KE FORM CHO CHUONG TRINH

+ Trong bài này, các ban thấy có thêm một loại điều kiểm mới, đó là điều kiểm PictureBox Điều kiểm này sẽ chứa một hình ảnh nào đó Trong hình trên, các bạn thấy chúng tôi dùng 2 hình đó là hình cái chuông và hình bàn tay, 2 hình này chúng tôi lấy trong thư mục sau :

C:\Program Files \ Microsoft Visual Studio \Common \ Graphic \Bitmaps \ Asorted

+ Trong loại điều kiểm nay, bạn vào thuộc tính Picture của điều kiểm

PictureBox dé chen tap tin Bell.bmp cho câu 1 và Hand cho câu 2

+ Giả sử các bạn đã thiết kế xong

Bước 2

VIET CODE CHO CHƯƠNG TRÌNH

Option Expticit

1) Viết lệnh cho điều kiém CmdKetquat

Trang 3

n=n+2 End lf ff Txttc = "3" Then n=n+2 End lf

lf Oxtif = "5" And Txtid = "2" And Txtle = "3") Or (Txtlf = "5"

And Txt? d = "3" And Txtle = "2") Then n=n+2 End ff lí Txt†h = "2" And Txt1g = "5" Then n=n+2 End lí

TxtKetqua1 = n & " điểm, sai " & (¡- n)/2 & "bài" End Sub

+ Trong thủ tục trên, khai báo biến ¡ và n là biến nguyên Gán biến ¡ = 10 để phát hiện số câu sai với biểu thức (¡ - n)/2

(vì mỗi câu đúng sẽ được 2 diểm, nên có chia cho 2)

+ Điều kiện của IF với bài 3 của câu 1 phải đúng đồng thời với 3

TextBox nên các bạn thấy chúng tôi dùng phép toán AND Đồng thời các bạn lại thấy Txt†d v Txt1e có thể đúng với 2 trường hợp, nếu bạn nhập cho TxtTe = 2 và Txt1d = 3 hoặc ngược lai Txtle = 3 va Txtid =

2 thì đều đúng Do đó chúng ta dùng phép toán OR 2) Viết lệnh cho điều kiểm CmdKetqua2

Private Sub CmdKetqua2 _Click0 Dim n As integer

Dim i As Integer i=10

Trang 4

lý Txt2a = "5" Then n=n+2 End lí tí Txt2b = "6" Then n=n+2 End lí If Txt2c = "1" Then n=n+2 End lí If Txt2d = "6" And Txt2e = "5" Then n=n+2 End lí If (Txt2h = "6" And Txt2f = "5° And Txt2g = "1") Or (Txt2h = "6" And Txt2f = "t" And Txt2g = "5") Then n=n+2 End If TxtKetqua2 = n & " điểm, sai " & (ï - n)/2 & " bài" End Sub

+ Thủ tục này cũng giải thích tương tự như thủ tục vừa rồi

3) Viết lệnh cho điều kiểm CmdKetqua3

Trang 5

Bue 1

THIET KE FORM CUA CHUONG TRINH

Giả sử các bạn đã thiết kế và xác lập xong các thuộc tính cho tất

cả các diều kiểm

Bude 2 VIET CODE CHO CHUONG TRINH

Option Explicit

1) Viết Code cho điều kiểm có thuộc tính Name là CmdKetqua Private Sub CmdKetqua_ Click0 Dim P As Single Dim a As Single Dim b As Single Dim c As Single a = Val{Txta Text) b = Val(Txtb Text) c = Val(Txtc.TexÐ p=atb+c

lfa+b>c Andc+b>a And a+ c>b And Absla - b) < c And-Abs(a - c) < b And Abs(c - b) < a And (a > 0) And (b > 0) And (c > 0) Then

“_IF và biểu thức diều kiện trong cửa sổ Code

Trang 6

ˆ chúng tôi viết trên một dòng

TxtKetqua = " Thỏa điều kiện " Txtev = P TxtDT = SqriP *(P- a} * (P - bị * (P - c)) Else TxtKeiqua = “ Không thỏa điều kién |” End If End Sub

+ Trong thủ tục trên, đầu tiên là khai báo các biến p, a, b và c có

kiểu là Single + Kế đến là gan các giá trị của các TextBox cho các biến có tên tưởng ứng

+ Gián cho chủ vi P=a+b+c

+ Kế đến là kiểm tra điều kiện IE (Kiểm tra độ đài 3 cạnh của tam giác có thỏa mãn định lý 1 và định lý 2 hay không)

+ Néu dling thi sé báo là thỏa điều kiện, đồng thời tính chụ vi va

diện tích của tam giác, thông báo ở các TextBox tương ứng Trái lại

nếu không thỏa thì bao ra TextBox Ia không thỏa điều kiện

+ Cách dùng phép AND để mô tả điều kiện về sự tổn tại 3 canh của một tam giác (a, b, c) phải đồng thời thỏa man 9 điều kiện Sự

đồng thời đó chính là do phép AND thực hiện,

2) Viết Code cho điều kiểm CmdThoat

Private Sub CmdThoat_ClickQ End

End Sub

Trang 7

3) Viết Code cho điều kiểm CmdXoa

Private Sub CmdXoa_Click() Txtas"" Txtb="" Txte ="" TxiKetqua =" “ Txtev =

TxtDT ="

End Sub

Bước 3

CHAY THU CHUONG TRÌNH + Bạn nhấn phím F5 để chạy thử chương trình

+ Bạn thử nhập ở Txta là 5, Txtb là 10, Txtc là 12 + Bạn thấy : 10-5 <12 < 1045 12-5 < 10 < 12+5 12-10< 5< 10+12 + Các bất đẳng thức này đúng, nghĩa là các cạnh nhập vào thỏa các định lý 1 và định lý 2

+ Do dé ban sẽ có kết quả của chu vi và diện tích của tam giác thể hiện trong form khi bạn Click vào nút Command có tên “ Kiểm tra DK và xem kết quả “ như hình sau :

Trang 8

IIxiðil°yN-TIZIEI Bạn nhập độ dài 3 cạnh của tam giác và kiểm tra cổ hợp lệ hay không Mời bạn nhập vào cạnh ä `

Mời bạn nhập vào cạnh b

Mời bạn nhập vào cạnh € `

L Kiểm tra ĐK và xem kết quả |

Kết quả kiểm tra [Thoả đều kiện - ————

Chu vitamgiác P7

Diện tích tam giác B89,191469587914 ——”————

Xoá nội dung trong cdc TextBox Thoát khỏi Form

sStat| Ì @ €) 03 ] || ty Proectt -o | By Micioson w #i®:Psnt |[lyKiemua Sem Hình 7b Form kết quả khi bạn nhập 3 cạnh có độ đài là 5, 10 và 12

+ Bây giờ bạn Click vào nút để xóa thông tin trong cdc TextBox, sau đó bạn nhập vào độ dài của 3 cạnh như sau :

+ Txta là 1, txtb là 2 và Txtc là 3,3

+ Ta thấy 1 + 2 < 3,3 Điều kiện trong lí không thỏa (Định lý 1)

+ Vậy là chắc chắn khi bạn Click vào nút xem kết quả thì ở hộp

TextBox kết quả sẽ thông báo là “ Không thỏa điều kiện” còn ở 2 hộp

TextBox Chu vi và Diện tích sẽ trống trơn (Nếu như viết Code đúng)

Chúng ta sẽ có Form như sau :

Trang 9

| 22 18 ET

Bạn nhập độ dài 3 cạnh của tam giác va kiểm tra có hợp lệ hay không

,

Mời bạn nhập vào cạnh a

Mời bạn nhập vào cạnh b

Mời bạn nhập vào cạnh c

Kết quả kiểm tra [Khôngthoảđiều kiện! — `

Chu vi tam giác

Diện tích tam giác [Sisson oily ants

Xoá nội dung trong các TextBox

Thoát khỏi Form

Rsun| | @ 8: 01 9 | noel M NVMeeotw.|43-Pad |[Kemua LỆ 917PM Hình 7c Form khi bạn nhập độ dài 3 cạnh của tam giác là 1, 2 và 3,3

+ Bạn thử nhập một số trường hợp để xem chương, trình thực hiện

như thế nào Chắc chắn các bạn sẽ thấy thông tin thể hiện sẽ chính

xác với khi bạn tính thực tế ở ngoài

Trang 10

TÍNH CĂN BẬC 2

_ YÊU CẦU CỦA ĐẦU BÀI

+ Bạn nhập vào một số thực để tính căn bậc 2, một thông báo lỗi được đưa ra nếu bạn nhập vào một trị âm, ngược lại sẽ báo ra căn bậc hai của số thực vừa nhập

+ Từ yêu cầu trên, chúng tôi thiết kế một Form như sau :

1 Transpare

Ns Sona Sort]

|N an objects te bar or below an [Returne/sets the toxt deplayed

Pstat| | BS; D [A Project icrosolt v_ BY Microsott Word - Cuan3 doc

Hình 8a Form của chương trình

J4 sam

Trong Form trên, bạn thấy có các điều kiểm sau :

1 Label dé lam tiéu dé hướng dẫn người sử dụng nhập vào một số thực bất kỳ

Trang 11

2 TextBox, một dùng để nhận giá trị của số thực, một dùng,

để thông báo kết quả

2 Command button, một dùng để thoát khỏi Form, một dùng

để xem kết quả

Form có tiêu để “TINH CAN BÁC 2 CỦA MỚOT SỐ THỤC ”

BANG CAC THUOC TINH CUA CÁC ĐIỀU KIEM

TT [ Đốitượng | Các thuộc tính Giá trị — |

1 |Fomm Name FrmCanbac2

BackColor Mẫu xanh

Caption TINH CAN BAC 2 CUA MOT SO THUC

WindowState 2~ Maximized

2 | Label Name tblTieude

BackColor Màu cam

Caption Bạn nhập một số thực để

tinh can bac 2 Font Name VNI - Aptima

Font Size 12

Font Style Bald

3 | TextBox Name TxtSathuc

BackColor Mau héng

Font Name MS Sans Serif

Font Size 18

Font Style Bold

Text (Xoa chi Text)

4 | TextBox Name TxtKetqua

BackColor Mau trang

Font Name VNI - Aptima

Font Size 12

Font Style Bold

Text

(Xda chit Text)

Trang 12

3| Command Name CmdKetqua

Button Caption Xem két qua

Font Name VNI - Aptima

Font Size 12

Font Style Bold

6 | Command Name CmdThoat

Button Caption Thoát khỏi Form

Font Name VNI ~ Aptima

Font Size 12

Font Style Boid

Bước 1

THIẾT KẾ FORM CỦA CHƯƠNG TRÌNH

Giả sử các bạn đã thiết kế và xác lập xong các thuộc tính của tất cả các điều kiểm

Đước 2 VIẾT CODE CHO CHƯƠNG TRÌNH

Option Explicit

1) Viết Code cho điều kiểm CmdKetqua

Trang 13

End lí End Sub

2) Viết Code cho điều kiểm CmdThoat

Private Sub CmdThoat_Click0 End End Sub

Bước 3 CHẠY THỬ CHƯƠNG TRÌNH

+ Giả sử bạn nhập vào TextBox nhập số 16, sau đó bạn Click vào nút Xem kết quả, bạn sẽ thấy có hình như sau :

/Ø|Sg-is[xI z alee Edt Yew Project Format Debug Run Query Ojagram Tools Add-ins Window Help 18h] 2230 TS TINH CAN BAC 2 CUA MOT SO THUC OTs] Ed cM [= By Project (Project) —” (EmCarbasc2) T1 FmCarbsc2

fein bie 2 cia 16 = 4

‹ »

Le vỊ

Piston] SAY Arce] wyMcomw | gite-ron JJSTNHCA Ả 3IPM Hình 8b Form khi nhập số 16 và Click vào nút Xem kết quả

Trang 14

+ Bây giờ bạn thử nhập vào một số âm, ví dụ bạn nhập vào số ~ 25 sau đó bạn Click chuột vào nút Command button Xem kết quả, bạn sẽ thay thong bao trong hop TextBox có tên TxtKetqua kết quả câu “Số âm không tính được căn bậc 2“ Form được thể hiện như hình bên dưới

+ Bạn có thể tự mình thử thêm một số trường hợp nữa, để xem có kết quả ra sao IETE-.LTTHEE:T Normal

.08Hi@Z : ›:®ơio- &# Đo (le gà Yew Inet Famat Iodk Tale Wow te

+ VNI-Apta Eo [3&8

: ~lzl x|

IST] *19°-]H 7U EEXEESÌ |* „8% EgiTrvTrrgrrryrnigrnnmi | i Bạn nhập một số thực để tinh căn bậc hai 2811 *:0l ##Œ [-⁄Z-A- + suman]

| du bạn nhập vào pmmand button Xem Ốp TextBox c6 tén Thđưc cần bác 2 -

Ƒ trường hợp nửa, để

#] p[S] z| «|

Dan BG | Macca \ NOOR A oes

[Poe id Sel afi (QF NI NT

stort] | B 6: 2) 3 |) ty Prec -Miiooot.| py Mirosot Wor-c |[E TINH CAN BAL fe 712M

Hinh 8c Form khi nhập vào - 25

Trang 15

.“ s v2

SO CHAN, SO LE

YÊU CẦU CUA DAU BAI

Dựa vào 2 số ở hai TextBox mà bạn xác định được bằng cách di chuyển con chạy trong HscroliBar

Ở TextBox 1 là số thứ nhất

Ở TextBox 2 là số thứ hai

+ Bạn sẽ tính được có bao nhiêu số lẻ nằm trong khoảng từ số thứ nhất đến số thứ hai và cho biết các số lê đó là những số lễ nào theo thứ tự từ nhỏ đến lớn

+ Bạn sẽ tính được tổng giá trị của các số lẻ nằm trong khoảng đó + Bạn sẽ tính được có bao nhiêu số chấn nằm trong khoảng từ số thứ nhất đến số thứ hai và cho biết các số chẵn đó là những số chẵn nào theo thứ tự từ nhỏ đến lớn + Bạn sẽ tính được tổng giá trị của các số chẩn nằm trong khoảng từ số thứ nhất đến số thứ hai

+ Bạn sẽ tính được tổng giá trị của tất cả các số từ số thứ nhất đến

số thứ hai

Từ những yêu cầu ở trên, chúng tôi thiết kế một Form gồm các điều kiểm như sau :

Trang 16

Tổng giá trị các sổ lẻ từ Hsr1 đến Hsr2

Tổng giá írÌ các số chẵn từ Hsr1 đến flsr2

| Thoát khỏi Farm | Tổng các số chẵn và lẽ từ Hsr1 đến Hsr2

Rsun| | Œ 8; 2) | tạPeeel:MeostVwal [ty TINH TOAN SO GHA Kế mem

Hinh 9a Form chương trình số chẩn, số lẻ

Nhìn vào Form trên, bạn thấy có các điều kiểm như sau :

"2 HscrollBar để bạn chọn giá trị

* 4 TextBox , 2 TextBox ding dé chtta giá trị mà bạn chọn từ hai HscrollBar 2 Textbox còn lại dùng để thông báo kết quả

* 6 Command Button, trong dé 5 Command Button dùng để xác dịnh các yêu cầu Một dùng để thoát khỏi chương trình

* Form cé tiéu dé “ TINH TOAN SO CHAN LE “

Trang 17

BẰNG CÁC THUỘC TÍNH CỦA (;ÁC ĐIỀU KIỂM

[TT

Đối tượng | Các thuộc tính Giá trị

1 | Form Name FrmSoChanLe

BackColor Mau xanh dương

Caption TINH TOAN SO CHAN LE

WindowState 2-Maximized

2-1 TextBox Name TxtThongbao

BackColor Mau cam dam

Font Name VNI - Swiss - Condense

Font Size 18

Font Style Bold

MultiLine True

Text (Xóa chữ TexU

3 | TextBox Name TxtLietke

BackColor Mau xanh chuối đậm

Font Name MS ~ Sans — SeriÍ Font Size 14 Font Style Bold Multiline True Text (Xóa chữ TexU) 4 TextBox Name Txt]

| BackColor Mau vang

Fant Name MS — Sans Serif

Font Size 14

Font Style Bold

Text (Xóa chữ Text)

5 | TextBox Name Txt2

BackColor Mẫu xanh nhạt

Font Name MS - Sans ~ Serif

Font Size 14

Font Style Bold

Text (Xóa chữ Text}

Trang 18

6} HlscrollBar Name Isr1 Min 0 Max 200 7| HserollBar Name Hsr2 Min 0 Max 200 8 | Command Name CmdSole

Button Caption Số số lẻ từ Hsr1 đến HSr2

Font Name VNI - Aptima Font Size 12

Font Style Bold ị

3 | Command Name CmdSochan Ị

Button Caption Số số chan từ Hsr1 đến HSr2

VNI — Aptima

Font Name 12

Font Size Bold

Font Style

10 | Command Name CmdTongsole

Button Caption Tổng giá trị các số lẻ từ Hsr1 đến HSr2

Font Name VNI - Aptima

Font Size 12

Font Style Bold

1Í | Command Name CmdTongsochan

Button Caption Tổng giá trị các số chẳn từ

Hsr1 đến HSr2 Font Name VNI = Aptima

Font Size 12

Font Style Bold

12 | Command Name CmdTongChanLe

Trang 19

Font Size 12 |

Font Style Bold |

13 | Command Name CmdThoat

Button Caption thoát khỏi Form

Tont Name VNI Swiss — Condense Font Size 20 Ị Font Style Bold TU

Bue I THIET KE FORM CHO CHUONG TRINH

+ Trong bai nay, ban thấy có thêm điều kiểm HsreroliBar, dé

thanh cuốn ngàng, bạn có thể dị chuyển con chạy hoặc Click vào nút dẫu mặi tên trái phải để giảm hoặc tăng giá trị, điều kiểm này có

sẵn trong hộp công cu

+ Giả sử bạn đã thiết kế và xác lập xong các thuộc tính cho các

diéu kiểm

Đước 2

VIẾT CODE CHO CHƯƠNG TRÌNH

Trước khí viết

Code, chúng tôi hướng dẫn cho các bạn một chút

+ Để tìm từ số thứ nhất đến số thứ hai có bao nhiêu số lẻ, vì số thứ

nhất và số thứ hai có giá trị xác định, do đó ta có thể dùng vòng lặp :

FOR số thứ nhất TO Số thứ hai NEXT

+ Vong lặp này sẽ đi từ số thứ nhất đến số thứ hai, muốn tìm số lẻ ta phải tìm số dư của số đó khí chia cho 2, nếu số dư bằng 1 thì ta kết

tuận số đó là số lẻ

Trang 20

+ Tương tự như vậy nếu là số chan thi

So Mod 2 = 0

+ Để tìm tổng giá trị của các số lẻ, ta dùng thêm một biến để

cộng dồn, và biểu thức này sẽ đặt trong phát biểu !F ,,END IF là số

lễ, tương tự như vậy với tổng giá trị của số chan

Riêng đối với một số bất kỳ, ta không cần dùng các điều kiện về số

đư như ở trên

+ Chúng tôi sẽ giải thích thêm những gì mới nếu có trong phan

viết Code

Option Explicit

1) Viết Code cho điều kiểm CmdSochan

Private Sub CmdSochan_Click() Dim i As Long Dim n As Long Dim ch As String For i = HSr1 To HSr2 If iMod 2=0 Then

n=n+1 “ Tăng lên 1 khi số là số chắn

Trang 21

+ Hàm Left trên để lấy chuỗi Ch, bỏ kí tự sau cũng (đó là dấu phẩy *,“ thừa nằm ở phía sau)

_ + Ban thử thay đổi sau đó chạy thử chương trình thì sẽ thấy những điều chúng tôi vừa nói

2) Viết Code cho điều kiểm CmdSole

Private Sub CmdSole_Click() Dim i As Long Dim n As Long Dim ch As String For i = HSr1 To HSr2 If iMod 2 =1 Then n=n+1 ch=ch&¡&"„" End If Next TxtThongbao = " Từ " & HŠr1 & " đến " & HSr2 & " có " &

n &" số lẻ, đó là các số "

TxtLietke = Leftich, Len(ch) - 1) End Sub

+ Thủ tực này cũng giải thích như trên, chỉ khác là tìm số số lẻ nên Ì Mod 2 = 1 (Chứ không phải là bằng 0)

3) Viết Code cho điều kiểm CmdThoat

Private Sub CmdThoat _Click0 End

End Sub

Trang 22

4) Viết Code cho điều kiểm CmdTongcacso

Private Sub CmdT ongcacso_Clickl) Dim i As Long Dim n As Long TxtLietke ="

ˆ cho bằng trống để không thấy thông tin trước đó

For i = HSrl To HSr2 n=n+i Next

TxtThongbao = " Tổng giá trị của các số chẵn và lẻ từ " &

HSr1 & " đến " & HSr2 & "là "&n End Sub

+ Trong thủ tục trên không phân biệt số chắn hay số lễ, nên ta

không cần dùng phát biéu tf END IF 5) Viết Code cho điều kiểm CmdTongsochan

Trang 23

Next

TxtThongbao = " Tổng giá trị của các số chan tu" & HSr1

& " đến " & HSr2 & "là "&n

End Sub

+ Thủ tục này tính tổng các giá trị của các số chắn, nên dùng, í Mod 2=0

6) Viết Code cho điều kiểm CmdTongsole

Private Sub CmdTongsole_Click0 Dim i As Long Dim n As Long TxtLietke ="" For i= HSrl To HSr2 Ifi Mod 2 = 1 Then n=nti End If Next

TxtThongbao = " Tổng giá trị của các số lẻ từ " & HSr1 & "

đến ° & HSr2 & " là " & n End Sub

Giống thủ tục trên, chỉ khác là ¡ Mod 2 = 1 (thay vì ¡ Mod 2 = 0)

7) Viết Code cho điều kiểm HSr1

Trang 24

8) Viết Code cho điều kiểm HSr2

Private Sub HSr2_Change() Txt2 = HSr2.Value End Sub + Thủ tục nay sé gan giá trị vừa thay đổi ở HSr2 cho TextBox có tên là Txt2

Bước 3 CHẠY THỬ CHƯƠNG TRÌNH

Giả sử bạn Click vào nút mũi tên bên phải trên HSr2 bên phải cho đến khi TextBox tương ứng có giá trị là 15, không tác động gì đến HŠrT xem như HSr1 có giá trị bằng 0 Sau đó Click chuột vào nút có

tiêu đề “ Số số lẻ từ HSr1 đến HSr2 “ bạn sẽ có hình như sau :

&- TÍNH TOAN SỐ CHAN LE i wee a + r

Us ks a

56 5616 ti Hsrt dén Hst2 J Téng giá frị các sổ lẻ từHsr1 đến Hsr2_

Tổng giá trị các số chẵn từ Hsr1 đến Hsr2

| Thuát khỏi Form | Tổng các số chẵn và lẽ từ Hsr† đến Hsr2

stat] |B 6: 03 39 (| bac |2156-P4i [ RVMesst.[SriNHTO TẾ søpw

Hình 9b Khi chọn HSr2 = 15 và HSr1 =0

Trang 25

Nếu bạn lần lượt click vào các nút có tiêu đề :

+ Số số chẵn từ HSr] đến HSr2

+ Tổng giá trị các số lẻ từ HSr1 đến HSr2 + Tổng giá trị các số chẵn từ HSr1 đến HSr2

+ Tổng giá trị các số chắn và lẻ từ HSr1 đến HSr2 Bạn sẽ có các hình như sau :

Tổng giá trị các số lẻ từ Hsr† đến Hsr2

Số số chân từ Hsri đến Hsr2Ñ_ Tổng giá trị các số chẵn từ Hsr1 đến Hsr2 Thoát khỏi Form Tổng các số chẵn và lẽ từ Hsr1 đến Hsr2 start || GB Ss E) (| tị hoeet | Z716-P | NVMcoe [fis TINH KE 1023PM

Hình 9c

Trang 26

CSO _

Số số chấn từ Hari dén Hsr2 siá trị các số chân từ Hsr† đến Hsr2 Tả Tổng các số chin va lẽ tử Hsr1 đến Hsr2

XRsun| | @ 8: 22 QD) bìeeel-M.| #9t5-Pen [RVMeesnw [STiwnTo TỶ ia2n

si khe

Hình 9d

PSU

¡Ôn = a aa Ƒ— gid tri các số lẻ từ Hsr1 đến Hsr2 one id

Theat khéi Form [7223 cdc sé chan va lẽ tờHsrr đến Hsr2

Trang 28

DAY TANG

YÊU CẦU CỦA ĐẦU BÀI

+ Trong bài này, các bạn hãy viết chương trình nhập vào 10 số

nguyên, mỗi lần một số qua hộp thoại InputBox (Bạn cũng có thể

dùng 10 hộp TextBox để nhập 10 số, nếu dùng như vậy thì sẽ mất

công hơn) Khi nhập xong nếu muốn xem 10 số vừa nhập thì Click vào

một nút sẽ thấy, muốn kiểm tra dãy số có tăng hay không, bạn Click vào một nút khác

+ Quy ước, dãy tăng là một dãy có số thứ nhất sẽ nhỏ hơn hoặc bằng số thứ hai, ngược lại là không tăng (Nếu quy ước dãy tăng là

một dãy có số thứ hai lớn hơn Pr thứ nhất, thì bạn sửa Code lại một chút bằng cách bỏ dấu bằng “ = + Qua đầu bai như trên, nt tôi thiết kế một Form như sau :

stent] |B 8: CÀ É [Í[R Projectt - Microsott V EfMicesdfWod:Can3€| [ge sm Hình 10a Form của chương trình

Trang 29

Nhìn vào Form trên, bạn thấy có các điều kiểm như sau :

“1 Label dùng để ghi tiêu đê

= 1 TextBox dùng để thông báo kết quả

» 3 Command Button, trong đó 1 Command Button dùng để Thoát

khỏi chương trình, 2 Command button dùng để xem kết quả

® Form có tiêu để “ KIEM TRA DẠY SO TANG HAY KHONG “,

BANG CAC THUOC TINH CUA CAC DIEU KIEM

TT | Déitugng | Các thuộc tính Giá trị

1 |Form Name FrmDaySoTang

BackColor Mẫu xanh dương

Caption KIEM TRA DAY SO CO

TANG HAY KHONG

WindowState 2-Maximized

2 | Label Name tb[Tieude

BackColor Màu hồng

Caption Nhập vào 10 số nguyên xem

day số có tăng hay không

Font Name VNI - Aptima

Font Size 14

Font Style Bold

3 | TextBox Name TxtThongbao

BackColor Mau cam

Font Name VNI ~ Aptima

Font Size 24

Font Style Bold

MultiLine True ©

Text TextBox Théng bao két qua

4 | Command Name CmdThoat

Button Caption Thoát khdi Form

Font Name VNI ~ Brush

Trang 30

Font Size 20

Font Style Bolditalic

5 | Command Name Cmdini Oso

Button Caption In ra 10 số mà bạn nhập vào,

Font Name VNI = Aptima

Font Size 12

Font Style Boldhalic

6 | Command Name CmdDayTang

Button Caption Kiểm tra dãy tăng hay không Font Name VNI - Aptima Font Size 12 Font Style Bolditalic '

Bước I

THIET KE FORM CUA CHUONG TRÌNH

Bạn lần lượt lấy từng điều kiểm ở hộp công cụ để thiết kế được như

trong hình, sau đó bạn xác lập các thuộc tính cho các diễu kiểm như đã

hướng dẫn trong bang các thuộc tính ở trên Giả sử bạn đã thiết kế xong

Bước 2

VIẾT CODE CHO CHƯƠNG TRÌNH Option Explicit

1) Viết Code cho diéu kiém Cmdin10so

Private Sub Cmdln10so_ClickQ

Dim So(9) As Long‘ Khai bao mang 1 chiéu cố định gồm

Trang 31

Dim i As Integer Dim ch As String

So(0) = Val(InputBoxt" BAN NHAP VAO SỐ THỦ 1 ")} So(1) = ValinputBox(" BAN NHAP VAO SO THU 2 ")) So(2) = Val(InputBox(" BAN NHAP VAO SO THỦ 3 ?} So(3) = ValtnputBoxf' BẠN NHAP VAO SƠ THỊ 4 ")) So) = ValnputBoxt" BẠN NHAP VAO SỐ THỦ 5 ”)) So(5) = Val(InputBox(" BAN NHAP VAO SO THU 6 ")) Sol6) = Val(InputBox(" BAN NHAP VAO SỐ THU 7 ")} So(7) = Val{inputBox(" BAN NHAP VAO SO THU 8 *)) So(8) = Val(InputBox(" BAN NHAP VAO SO THU 9 ")} S0(9) = Val{inputBox(" BAN NHAP VAQ SO THU 10”) Fori= 0 To 9 * Vong lap FOR in ta 10 số

ch = ch & So(l) &"," Next

TxtThongbao = Left (ch, Len(ch) — 2) End Sub

+ Trong thủ tục trên, chúng tôi khai báo một mắng cố định 1 chiều,

có tên là So và mảng này có 10 phần tử kiểu số, bạn lưu ý là nó chạy từ 0 đến 9

+ Hàm InputBox sẽ cho bạn nhập vào từng số theo thứ tự từ số thứ nhất đến số thứ 10, và số thứ nhất sẽ gắn cho So(0), số thứ hai gan cho

So(l) và số thứ 10 sẽ gán cho So(9)

+ Như vậy khi bạn Click vào nút Command Button có tên In ra 10 số mà bạn vừa nhập thì trên màn hình sẽ hiện ra lần lượt 10 hộp InputBox có tiêu để ghí chú là số thứ 1, số thứ 2, , số thứ 10 (Tiêu

Trang 32

để này dược khai báo trong hàm InputBox như trên, bạn có thể tham

khảo đây dủ và chỉ tiết thêm ở cuốn tự học lập trình Visual Basic 6.0

của cùng tác giả)

+ Sau khi bạn đã nhập xong 10 số, Để in ra 10 số mà bạn vừa nhập, bạn phải dùng vòng lặp FOR, vì hộp TextBox nó sẽ hiện trên

một dòng, do đó bạn phải nối chuỗi để cuối cùng có được đầy đủ các

số vừa nhập, nếu không nối chuỗi, bạn chỉ thấy được số cuối cùng đó

là số thứ 10 Bạn có thể thử bằng cách sửa lại Code và sẽ thấy kết quả

như chúng tôi đã nói

+ Trong chuỗi nối ở trên có dấu phẩy vì chúng tôi muốn có dấu phẩy

phân cách giữa 2 số và một khoảng trắng để chuỗi in ra dep hon + Trong câu lệnh TxtThongbao = Left (ch, Len(ch) - 2)

+ Chúng tôi dùng hàm Left để lấy những kí tự bên trái của chuỗi Ch và

bỏ bớt 2 kí tự còn thừa phía sau, đó là dấu phẩy và khoảng trắng

+ Nếu bạn dùng câu lệnh TxtThongbao = ch thì sẽ có thêm dấu phẩy và khoảng trắng ở phía sau chuỗi Bạn thử để thấy kết quả như chúng tôi đã nói

2) Viết Code cho điều kiểm CmdDayTang

Private Sub CmdDayTang_Click() Dim So(9} As Long Dim i As Integer Dim ch As String Dim n As Integer Dim a As Integer Dim b As Integer Dim j As Integer

$o0(0) = Val(InputBox(" BAN NHAP VAO SO THU 1 ")) So(1) = Val(InputBox(" BAN NHAP VAQO SO THU 2 ")) So(2) = Val(InputBoxf' BẠN NHAP VAO SỐ THỦ 3 9)

Trang 33

$o(3) = VallinputBox(" BAN NHAP VAO SO THU 4")

Trang 34

Trong thủ tục trên, phần khai báo mảng cũng giống như ở trên Trong thủ tục này chúng tôi cần giải quyết là xác định được 10 số vừa nhật? xong là day tang hay không, chúng tôi giải quyết bằng cách như sau :

+ Dùng vòng lip FOR để ïn lại 10 số vừa nhập, đồng thời thông báo thêm phía sau cau day tăng hay giảm tương ứng với 10 số mà bạn nhập vào theo thứ tự có tăng hay không,

+ Bạn có thể dùng vòng lập Do While - =Loop, ở dây chúng tôi muốn giới thiệu theo lý luận khác để giúp cho các bạn biết thêm,

+ Đầu tiên chúng tôi gắn biến a = So (i), sau đó gắn biến j=i*+1.Điều này để có 2 phản tử kế nhau để sơ sánh, đó là Soi) và Sofi+ 1)

+ VÌ trong vòng lập FÒÓR; ¡ chạy từ 0 đến 9, nên có lúc | sẽ bằng 10, đó là khi ¡ = 9, mà trong thực tế không có 5o (10) Do đó chúng tôi phat ding phát biểu IF với diều kiện j < 10 mà bạn thấy ở trên,

+ Nếu mỗi lần so sánh mà số trước nhỏ hơn hoặc bằng số sau thì

biến n sẽ tăng lên 1 Vậy nếu kết quả đúng hết thì n sẽ bằng 10 Lúc này ta có thể kết luận ngay đây là một dãy tăng, ngược lại sẽ báo là dãy không tăng,

3) Viết lệnh cho điều kiểm CmdThoat Private Sub CmdlThoat_Click)

Trang 35

Bước 3

CHAY THU CHƯƠNG TRÌNH

Giả sử bạn Click vào nút có tiêu dé “In ra 10 số mà bạn nhập vào”, bạn sẽ có Form hiện ra như sau :

extBox +hAnn LAn

BẠN NHẠP VAO S0 THỦ † [ony

stan| | Sy 7] | th FoecH -M | NỂMicosotW_| #716a-Pan |[Py KIEMTR (Í- 837 PM

Hinh 10b Form khi vừa Click vào nút in ra 10 số mà bạn nhập vào

+ Nhìn vào hình trên bạn thấy trên Form sẽ xuất hiện một hộp

thoại InputBox có tiêu dé BAN NHAP VAO SO THU 1, bạn nhập vào

số 10 và Click OK hoặc gõ phím Enter, hộp thoại thứ hai hiện ra với tiêu để BAN NHAP VAO SO THU 2, ban nhập vào 20,

Đến hộp thoại thứ 10 hiện ra với tiêu để BAN NHAP VAO SO THU 10, bạn nhập vào 100 và gõ Enter (10, 20, 30, 40, 50, 60, 70,80,90,100), bạn sẽ có kết quả như sau :

Trang 36

“?4aáđ£ é#dc one

Wswet| | B BaD | ty protects m.| NyMieosetwe.| gy 6s Pom |S KIEM TA Kf O41 FM

Hình 10c Form khi ban nhap 10 số như trên

+ Nhìn vào hình trên bạn thấy trong TextBox thông báo sẽ hiện ra

10 số theo thứ tự mà bạn nhập như trên, do chiều dài của TextBox

không đủ và do bạn lại xác lập thuộc tính MultiLine của TextBox này là True, do đó nó sẽ xuống dòng, nếu không xác lập cho thuộc tính này thì nó sẽ có giá trị mặc nhiên là False, lúc này các kí tự thiếu sẽ mất đi Bạn sẽ thấy như sau :

10, 20, 30, 40, 50, 60, 70, 80, 90, 11 (Kiểm tra dây, tăng bay không

start] |B Sy 1 || By Prieto] wy Miciosot w J gr i6e-Pom |[m KiEMIR | 650PM

Hinh 10d_ Form khi thay đổi thuộc tính MultiLine là False

+ Bây giờ bạn thử nhập 10 số lần lượt theo thứ tự như sau : 12, 23, 34, 35, 36, 45, 46, 48, 49, 50 Bạn sẽ thấy hình như sau :

Trang 37

lạ KIEM TRA DẠY S0 CO TANG HAY KHONG

n xem đấy số có tăng hay không

112, 23, 34, 35, 36, 45, 46, 48, 49, 50 Đây là dãy tăng

Vhadt thdc lạxưc

Ø 8.7292 &yPoesl.M | WMeosetv | ý7166.Psn |[SKIEMTR lý 955M

Hình 10e sen]

+ Bạn thấy 10 số vừa nhập là một dãy tăng, nên chương trình sẽ báo ra đúng với kết quả mà bạn mong muốn, bạn thử kiểm tra lại với một dãy số khác như sau : 12,12 + Bạn thấy đây cũng là một dãy tăng, bạn thử xem chương trình có 2,13, 13, 13, 14, 14, 14, 14

báo đúng như vậ In ra 10 số mà bạn nhập vào Kiểm tra đây: tăng hay không

at] BELA WD | By Promet a.) Byron | prise-Pant ff KIEM TA cỈ 655PM

Trang 38

+ Vậy là bạn thấy chính xác phải không Bạn thử nhập thêm một số dãy tăng nữa để kiểm tra xem có đúng không, chắc chắn các bạn sẽ thấy báo đúng + Bây giờ bạn thử nhập vào một dãy như sau : 23, 10, 20, 30, 40, 50, 60, 70, 80, 90

+ Bạn thấy đây là một dãy số không tăng, bạn thử nhập và xem kết

quả ra sao nhé ! TANG HAY KHONG 23, 10, 20, 30, 40, 50, 60, 70, 80,

90 Không phải là dãy tăng

Asien) |B E57 | threo.) gykeeetw | jgyte-pẻv Jƒm meMrn- cỆC sơarw

Hình 10g Form khi bạn nhập 10 số như trên

+ Rất là chính xác phải không các bạn, các bạn có thể nhập thêm

một số dãy số để kiểm tra

Trong bài trên, các bạn nhập qua hộp thoại InputBox cho 10 số, mặc dầu các số đó được hiện ra trong TextBox thông báo, nhưng bạn

không nhớ được 10 số mà mình nhập đã nhập, để thấy được 10 số mà

mình đã nhập, hoặc sau khi nhập xong, mình có thể sửa lại nếu như mình đã nhập sai, muốn vậy, bạn phải dùng các TextBox

Bạn xem chúng tôi thiết kế chương trình sau để thực hiện bài trên

Trang 39

Trong bài này chúng tôi không dùng hàm InputBox để nhập, chúng tôi sẽ nhập trực tiếp trên Form, trong các TextBox Sau khi nhập xong,

người sử dụng Click vào nút xem kết quả thì sẽ thấy thông tin là dãy

số mà người sử dụng đã nhập vào, thông báo dãy có phải là dãy tăng hay không

Theo yêu cầu như trên, chúng tôi thiết kế Form của chương trình

như sau :

s&.XET ĐAY CŨ TANG HAY KHONG [Jeb

Tinh day tang nhap bang TextBox [1 Ti 1 lai (|

1 2 3 4 5 6 7 8 9 10

Hem cb phdi la day thay hay bhbng |

Thad bhbi cheteng Cink |

Masten] |B Sy AD | ty Prowectt -Mecrosot.| By Mesosot Word-C [lxerpavco l{: 32w

: Hình 11a

Trang 40

Nhìn vao Form trén, bạn thấy có các điều kiểm như sau : 11 Labet ding dé ghi tiêu đê

1 1TextBox, trong dé 10 TextBox dé nhap 10 36, 1 TextBox

dùng để thông báo kết quả

2 Commaad Button, trong đó 1 Command Button dùng để Thoát

khỏi chương trình, 1 Command buton dùng để xem kết quả Form có tiêu dé “ XET DAY CO TANG HAY Ki HONG *

BẰNG CÁC THUỘC TÍNH CỦA CÁC ĐIỀU KIỂM

[TT | Đối tượng | Các thuộctính Giá trí

1 | Form Name FrmDaySoTangTextBox

BackColor Mau cam

Caption XET DAY CO TANG HAY

KHONG

WindowState 2-Maximized

2 | Label Name LblTieude

BackColor Màu xanh

Ngày đăng: 10/08/2014, 15:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN