Professional Documents
Culture Documents
INPUT OUTPUT
ALGORITHM
Giải thuật “Tìm vị trí xuất hiện đầu tiên của một số nguyên trong dãy số nguyên đã cho”:
Bước 1: Nhập dãy số nguyên
Bước 2: Nhập số nguyên a
Bước 3: Gán cho phần tử so sánh (s) giá trị của số đầu tiên trong dãy
Bước 4: So sánh a với s
Nếu a=s thì ghi nhận vị trí của phần tử s (p)
Nếu a≠s và s chưa phải phần tử cuối cùng trong dãy thì gán s bằng phần tử
tiếp theo và lặp lại bước 4
Nếu a≠s và s là phần tử cuối cùng của dãy thì gán p = 0
Bước 5: Nếu p ≠ 0 thì đưa ra vị trí cần tìm là p, ngược lại thông báo không
tìm thấy. Kết thúc
2.1.1 Diễn đạt giải thuật bằng sơ đồ khối
- Sử dụng các hình khối để minh hoạ cho các lệnh hay thao tác.
- Sử dụng mũi tên để diễn đạt thứ tự thực hiện
- Đây là cách diễn đạt khoa học, có tính nhất quán cao
- Các hình khối cơ bản
Khối bắt đầu
Khối kết thúc
Khối thao tác cụ thể
Khối kiểm tra điều kiện
Khối vào/ra dữ liệu
Khối gọi chương trình con
Vào/ra dữ liệu
Sai
§ iÒu KiÖn Xö lý
Một số ví dụ:
Ví dụ 1: Tính chu vi, diện tích hình chữ nhật
Begin
End
Cách 1 Cách 2
Begin
§ äc sè N
S:=0
Begin
i :=0
§ äc sè N
S :=S +i
S :=N(N+1)/2
i : =i+1
i >N
Sai In ra S
§ óng
In ra S
End
End
S=
B6. In kết quả C,S
End
Như vậy: Một bài toán có thể có nhiều thuật toán với các cách biểu diễn khác
nhau. Vấn đề là ta phải tìm ra thuật toán tốt để giải bài toán.
2.1.2 Diễn đạt thuật giải bằng giả ngôn ngữ
- Giả ngôn ngữ
Dựa trên ngôn ngữ lập trình bậc cao
Gần với ngôn ngữ tự nhiên của con người
Ví dụ:
Ngôn ngữ giả Pascal (tựa Pascal) có các ký pháp khá giống với ngôn ngữ lập
trình Pascal, được rút gọn sao cho dễ diễn đạt
- Giả ngôn ngữ được đưa ra với mục đích diễn đạt các giải thuật sao cho gần
với ngôn ngữ lập trình và ngôn ngữ tự nhiên.
- Sử dụng giả ngôn ngữ khiến việc chuyển từ giải thuật sang chương trình dễ
dàng hơn.
- Ví dụ: Giải thuật tính tổng n số tự nhiên đầu tiên
Nhập N
i:=0
S:=0
REPEAT
S:=S+i
i:=i+1
UNTIL (i>N)
In S
Gắn liền việc thiết kế giải thuật với việc lập trình ng÷
Ng«n ng÷
- Ví dụ: Sắp xếp dãy số theo thứ tự tăng dần lËp tr×
nh
Phác thảo “thô” với những “ý tưởng cơ bản”
“Từ dãy các số chưa được sắp xếp, tìm số nhỏ nhất và đưa lên đầu”
Lặp lại quy trình trên tới khi dãy chưa được sắp xếp trở thành rỗng.
Ban đầu, dãy chưa sắp xếp là dãy đã cho, dãy đã sắp xếp là rỗng.
Lưu trữ dãy bằng “mảng” (danh sách các số), đưa số nhỏ nhất (aj) lên đầu
danh sách là đổi chỗ nó với số đầu tiên.
Đổi chỗ
Số trung gian := aj
aj := số đầu tiên
Số đầu tiên : = số trung gian
…, cuối cùng ta được chương trình với ngôn ngữ cụ thể
2.2.3. Phương pháp phân tích giải thuật
- Tính đúng đắn
Chạy thử nghiệm, đối chiếu kết quả à phát hiện được tính sai.
Dùng công cụ toán học để chứng minh à tính đúng đắn.
- Tính đơn giản
Giải thuật có dễ hiểu, dễ lập trình không?
- Tính hiệu quả
Đơn giản chưa chắc đã hiệu quả.
Đối với nhiều bài toán, tính hiệu quả là quan trọng, các giải thuật đơn giản
lại gây tốn tài nguyên, chạy chậm.
Thời gian tính toán à Độ phức tạp tính toán
Những giải thuật hiệu quả phải có độ phức tạp (thời gian) tính toán chấp
nhận được.
- Tính dừng
Chứng minh, suy luận
Chạy thử
thêm vào những đối tượng đã được định nghĩa trước ở vị trí nào đó trên màn
hình.
Thành phần “Basic” nói đến ngôn ngữ “BASIC” (Beginners All-Purpose
Symbolic Instruction Code) một ngôn ngữ được dùng bởi nhiều nhà lập trình
hơn bất cứ một ngôn ngữ nào khác trong lịch sử máy tính. Visual Basic được
phát triển dần dần dựa trên ngôn ngữ BASIC, và bây giờ chứa đựng hàng trăm
điều lệnh, hàm, và từ khóa... có quan hệ trực tiếp với giao diện đồ họa của
Windows.
Ngôn ngữ lập trình Visual Basic không chỉ là Visual Basic. Hệ thống lập
trình Visual Basic, những ứng dụng bao gồm Microsoft Excel, Microsoft
Access, và nhiều ứng dụng Windows khác đều dùng cùng một ngôn ngữ.
Mặc dù mục đích của chúng ta là tạo ra những ứng dụng nhỏ cho bản
thân hay một nhóm, một hệ thống các công ty lớn, hoặc thậm chí phân phối
những ứng dụng ra toàn cầu qua Internet. Visual Basic là cung cụ mà bạn cần.
• Những chức năng truy xuất dữ liệu cho phép ta tạo ra những cơ sở dữ liệu,
những ứng dụng front-end, và những thành phần phạm vi server-side cho
hầu hết các dạng thức cơ sở dữ liệu phổ biến, bao gồm Microsoft SQL
Server và những cơ sở dữ liệu mức enterprise khác.
• Những kỹ thuật ActiveX cho phép ta dùng những chức năng được cung cấp
từ những ứng dụng khác, như là chương trình xử lý văn bản Microsoft
Word, bảng tính Microsoft Excel và những ứng dụng Windows khác.
• Khả năng Internet làm cho nó dễ dàng cung cấp cho việc thêm vào những
tài liệu và ứng dụng qua Internet hoặc intranet từ bên trong ứng dụng của
bạn, hoặc tạo những ứng dụng Internet server.
• Ưng dụng của bạn kết thúc là một file .exe thật sự. Nó dùng một máy ảo
Visual Basic để bạn tự do phân phối ứng dụng.
chú ý đến thành phần mã thực thi bên dưới. ứng dụng của chúng ta có thể phổ
biến được hay không phụ thuộc vào giao diện.
Sử dụng những điều khiển chuẩn của Visual Basic
Ta dùng những điều khiển để lấy thông tin mà người sử dụng nhập vào,
và để hiển thị kết xuất. Những điều khiển mà ta có thể dùng trong ứng
dụng bao gồm hộp văn bản, nút lệnh, và hộp danh sách,.... Những điều khiển
khác cho ta truy xuất những ứng dụng khác, xử lý dữ liệu của nó như là một
thành phần mã trong ứng dụng của bạn.
Lập trình với những đối tượng.
Những đối tượng là thành phần chủ yếu để lập tình Visual Basic. Những
đối tượng có thể là form, những điều khiển hay cơ sở dữ liệu.
Lập trình với phần hợp thành
Chúng ta đôi khi cần sử dụng khả năng tính toán của Microsoft Excel
trong ứng dụng Visual Basic, hay định dạng một tài liệu sử dụng thanh công
cụ định dạng của Microsoft Word, hoặc lưu trữ và xử lý dữ liệu dùng
Microsoft Jet... Tất cả những điều này có thể thực hiện được bằng cách xây
dựng những ứng dụng của chúng ta sử dụng những thành phần ActiveX. Thêm
vào đó, Visual Basic có thể giúp chúng ta tạo ra những điều khiển ActiveX
riêng.
Đáp ứng những sự kiện chuột và bàn phím
Những ứng dụng Visual Basic có thể đáp ứng một lượng lớn sự kiện
chuột và bàn phím. Ví dụ form, hộp ảnh, và những điều khiển ảnh có thể phát
hiện vị trí con trỏ chuột, có thể quyết định phím trái hay phím phải được nhấn,
và có thể đáp ứng những tổ hợp của phím chuột với phím Shift, Ctrl, hay Alt.
Sử dụng những điều khiển phím, ta có thể lập trình những điều khiển và form
để đáp ứng các hành động phím hoặc phiên dịch và xử lý mã Ascii của ký tự.
Thêm vào đó, những ứng dụng Visual Basic có thể hỗ trợ sự kiện rê và
thả cũng như tính năng rê và thả OLE.
Làm việc với văn bản và đồ họa.
Visual Basic cung cấp khả năng đồ họa và văn bản phức tạp trong ứng
dụng. Những thuộc tính văn bản có thể giúp ta nhấn mạnh các khái niệm quan
trọng và các chi tiết cần quan tâm. Thêm vào đó, Visual Basic cung cấp khả
năng đồ họa cho phép ta linh động trong thiết kế, bao hàm các hình ảnh động
bằng cách hiển thị một loạt các hình ảnh liên tiếp nhau.
Gỡ rối mã và quản lý lỗi
Đôi khi có những lỗi xảy ra bên trong mã của ứng dụng. Những lỗi
nghiêm trọng có thể là nguyên nhân một ứng dụng không đáp ứng lệnh, thông
thường yêu cầu người sử dụng khởi động lại ứng dụng, và không lưu lại
những gì ta đã làm. Quá trình tìm ra và sửa lỗi gọi là gỡ rối. Visual Basic cung
cấp nhiều công cụ giúp chúng ta phân tích ứng dụng làm việc như thế nào.
Những công cụ gỡ rối đặt biệt hữu ích trong việc tìm ra nguồn gốc lỗi, nhưng
chúng ta cũng có thể dùng những công cụ này để kiểm tra chương trình hoặc
tìm hiểu những ứng dụng khác nhau làm việc như thế nào.
Xử lý ổ đĩa, thư mục và file
Khi lập trình trong Windows, nó rất quan trọng để có khả năng thêm, di
chuyển, tạo mới hoặc xóa những thư mục và file, lấy thông tin về và xử lý ổ
đĩa. Visual Basic cho phép chúng ta xử lý ổ đĩa, thư mục và file bằng hai
phương pháp : qua những phương thức cũ như là điều lệnh Open, Write#, và
qua một tập hợp các công cụ mới như FSO (File System Object)
dụng khác. Visual Basic, VBScript, một ngôn ngữ script Internet, đều là tập
hợp con của ngôn ngữ Visual Basic.
Phân phối những ứng dụng
Sau khi tạo một ứng dụng Visual Basic, ta có thể tự do phân phối bất kỳ
ứng dụng nào đã tạo bằng Visual Basic đến bất cứ ai dùng Microsoft
Windows. Ta có thể phân phối ứng dụng trên đĩa, trên CD, qua mạng, trên
intranet hoặc Internet.
Nếu ta khai báo trong phần General, biến có thể được dùng ở bất kỳ đoạn
lệnh nào trong from và cũng chỉ mất đi khi from được giải phóng khỏi bộ
nhớ.
Nếu ta khai báo biến trong phần viết lệnh cho một sự kiện của một đối
tượng (tức khai báo giữa hai dòng Sub và End Sub của mã lệnh đó) thì biến
chỉ tồn tại và dùng được trong phạm vi hai dòng Sub và End Sub đó mà
thôi. Biến như vậy gọi là biến riêng hay biến nội bộ.
Nếu ta dùng từ khóa Public thay cho Dim để khai báo biến , biến sẽ tồn tại
trong suốt thời gian thực hiện chương trình và có thể dùng được trong bất cứ
đoạn lệnh nào của chương trình. Biến như vậy gọi là biến chung hay biến
toàn cục.
2. Các kiểu dữ liệu trong Visual Basic
Toán tử ý nghĩa
+ Cộng hai số hạng hoặc hai chuỗi
- Trừ hai số hạng
* Nhân hai số hạng
/ Chia, trả về kiểu số thực
\ Chia lấy nguyên
Mod Chia lấy dư
^ Lấy lũy thừa
Toán tử ý nghĩa
> So sánh xem số thứ nhất có lớn hơn số thứ hai không
< So sánh xem số thứ nhất có nhỏ hơn số thứ hai không
= So sánh xem số thứ nhất có bằng số thứ hai không
<> So sánh xem số thứ nhất có khác hơn số thứ hai không
>= So sánh xem số thứ nhất có lớn hơn hay bằng số thứ hai không
<= So sánh xem số thứ nhất có nhỏ hơn hay bằng số thứ hai không
Toán tử ý nghĩa
Trả về True nếu cả hai số hạng đều là True, trả về False nếu
And
một trong hai số hạng là False
Trả về True nếu một trong hai số hạng là True, trả về False nếu
Or
cả hai số hạng là False
Not Trả về True nếu số hạng là False, False nếu số hạng là True
Hàm ý nghĩa
Abs(số) Trả về giá trị tuyệt đối của con số truyền vào.
Sin(số) Trả về sin của một số
Cos(số) Trả về cos của một góc, góc truyền vào tính bằng radian.
Tan(số) Trả về tang của một góc, góc truyền vào tính bằng radian.
Atn(số) Trả về arctang của một con số.
Int(số) Trả về phần nguyên của một con số
Fix(số) Làm tròn số
Sgn(số) Trả về con số nguyên cho biết dấu của con số truyền vào.
Sqr(số) Trả vè căn bậc hai của số.
Val(chuỗi) Trả về một con số tương ứng với chuỗi truyền vào.
Str (số) Trả về một chuỗi ký tự biểu diễn con số truyền vào
1. Mô hình
Để xây dựng công cụ hỗ trợ lập trình dựa cơ sở thuật toán bước khởi đầu ta phải
mô hình hóa bài toán. Như đã biết có nhiều phương pháp để mô tả một giải thuật:
- Phương pháp biểu diễn từng bước
- Phương pháp vẽ sơ đồ khối
- Phương pháp giả ngôn ngữ
Trong các phương pháp trên thì phương pháp biểu diễn giải thuật bằng sơ đồ
thuật toán là hữu hiệu nhất, nó như một bản thiết kế. Thông qua đó bất kỳ một lập
trình viên nào cũng có thể thao tác để biến nó thành chương trình cụ thể. Phương
pháp biểu diễn thuật toán bằng sơ đồ thuật toán được mô tả như sau:
- Sử dụng các hình khối để minh hoạ cho các lệnh hay thao tác.
- Sử dụng mũi tên để diễn đạt thứ tự thực hiện
- Đây là cách diễn đạt khoa học, có tính nhất quán cao
- Các hình khối cơ bản:
*) Khối bắt đầu
*) Khối kết thúc
Begin End
*) Khối thao tác cụ thể
*) Khối kiểm tra điều kiện
*) Khối vào/ra dữ liệu Đúng
Điều
*) Khối gọi chương trình con A kiện
Ví dụ 1: Sơ đồ khối tính chu vi, diện tích hình chữ nhật (Hình trái)
Ví dụ 2: Sơ đồ khối tính tổng từ 1..N (Hình phải)
Begin
Begin
§ äc c¹ nh a,b § äc sè N
C :=2*(a+b) S:=0
S :=a*b
i :=0
In ra C,S
S :=S +i
End
i : =i+1
i >N
Sai
§ óng
In ra S
End
Từ sự mô tả trên để xây dựng được công cụ hỗ trợ lập trình dựa cơ sở thuật toán
và đưa ra mô hình bài toán như sau:
- Xây dựng bộ công cụ hỗ trợ vẽ sơ đồ thuật toán
- Xây dựng phần mềm sinh mã chương trình nguồn pascal từ sơ đồ thuật toán
Sai
Các thuộc tính:
- Id: Mã đối tượng
- Type: Kiểu đối tượng (Decision)
- Line in: Mã của các mũi tên đi vào
- Line out: Mã của mũi tên đi ra
- Outext: Để hiển thị thông tin trên khối
2.5 Khối nhập dữ liệu vào (Input)
Ký pháp:
Tại cửa sổ chính của chương trình này có hệ thống menu trong đó có các mục
như sau:
+ Menu Tập tin gồm: Tạo mới sơ đồ khối, ghi lại, thoát khỏi chương trình
+ Menu Hiển thị: Bật tắt việc hiển thị các thanh công cụ và thanh trạng
thái.
+ Menu Cây chương trình: Cung cấp các mục chọn chức năng để thao tác
với cây chương trình bên tay trái như Mở nút, thêm biến,...
+ Menu Lưu đồ: Cung cấp các chức năng thao tác với lưu đồ như soạn
thảo nội dung nút, Xoá nút, thay đổi vị trí điểm vào, điểm ra, Chạy thử, tạo
mã Pascal.
1.2. Biến
Để thiết lập danh sách các biến sẽ sử dụng trong chương trình: Click phải vào nút Biến trên
Cây thành phần, chọn [Thêm biến]. Hộp thoại thêm biến sẽ hiện lên như sau:
Gõ tên biến vào ô [Tên biến], chọn kiểu dữ liệu cho biến trong Combo [Kiểu]. Nếu biến là
mảng, tick vào ô kiểm [Mảng]. Click [Thêm]. Trên cây thành phần sẽ có thêm nút tương
ứng với biến đã thêm như sau:
Quan sát trên thanh công cụ, nhóm 3 có các nút mang hình các ký hiệu của lưu đồ thuật
toán. Để thêm một khối vào lưu đồ, ta click nút có hình vẽ khối đó và click vào nền của
vùng [Sơ đồ]. Chú ý:
- Nút BEGIN phải là nút đầu tiên được đặt vào lưu đồ và mỗi lưu đồ chỉ có một nút
BEGIN duy nhất.
- Luôn chon một nút để xác định nút kế tiếp của chính nó.
Ví dụ:
Tiếp theo, giả sử ta cần tạo khối Input cho biến a: trước hết phải chọn nút Begin trên [Sơ
đồ] nếu nó chưa được chọn. Sau đó click vào nút lệnh Input trên thanh công cụ. Khi con
trỏ chuột thành hình bình hành thì click tiếp vào vùng [Sơ đồ]. Kết quả sẽ như sau:
Sau khi soạn thảo xong lưu đồ thuật toán, ta có thể tiến hành chạy thử bằng cách chọn
[Lưu đồ]\ [Chạy thử]. Hộp thoại chạy thử như sau:
Dim B As Boolean
B = False
If Not IsMissing(Sel) Then
B = Sel
End If
If B Then
P.DrawWidth = 2
X1 = (mvarX - MaxWidth(P) / 2)
Y1 = (mvarY - MaxHeight(P) / 2)
X2 = (mvarX + MaxWidth(P) / 2)
Dim B As Boolean
B = False
If Not IsMissing(Sel) Then
B = Sel
End If
If B Then
X1 = (mvarX - MaxWidthPrinter / 2)
Y1 = (mvarY - MaxHeightPrinter / 2)
X2 = (mvarX + MaxWidthPrinter / 2)
Y2 = (mvarY + MaxHeightPrinter / 2)
X1 = (mvarX - MaxWidth(P) / 2)
Y1 = (mvarY - MaxHeight(P) / 2)
X2 = (mvarX + MaxWidth(P) / 2)
2. Lớp ClsNodeList:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ClsNodeList"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
3.ClsCommand:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ClsCommand"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
4. ClsCommandL ist:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ClsCommandList"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Collection" ,"ClsCommand"
Attribute VB_Ext_KEY = "Member0" ,"ClsCommand"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
Private mCol As Collection
Private nCount As Long
objNewMember.CommandType = ctAssign
objNewMember.VarName = VarName
objNewMember.Value = E
objNewMember.CommandType = ctProcCall
objNewMember.VarName = ProcName
5. ClsVar:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ClsVarList"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Collection" ,"ClsVar"
Attribute VB_Ext_KEY = "Member0" ,"ClsVar"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
Private mCol As Collection
objNewMember.VarName = VarName
objNewMember.DataType = DataType
objNewMember.Value = Value
objNewMember.VarType = vtSingle
objNewMember.VarName = VarName
objNewMember.DataType = DataType
objNewMember.VarType = vtArray
For i = LBound(Value) To UBound(Value)
objNewMember.Value(i) = Value(i)
Next
mCol.Add objNewMember, VarName
Set AddArray = objNewMember
Set objNewMember = Nothing
End Function
6. ClsVarL ist:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
L = mvarNodeList.VarUsed(VName)
VarUsed = L
End Function
MỤC LỤC
LỜI GIỚI THIỆU.............................................................. ...........1
Chương I: MỤC ĐÍCH YÊU CẦU CỦA BÀI TOÁN..........................2
1. Mục đích:................................................................ ...........2
2. Yêu cầu:.................................................................... .........2
Chương II: CƠ SỞ LÝ THUYẾT...................................................3
1. Thuật toán:.................................................................. ......3
1.1. Định nghĩa về giải thuật..................................... ........3
1.2. Giải thuật theo cách hiểu thông thường............3
1.3. Các thao tác trong thuật giải.............................3
1.4. Định nghĩa......................................................... ..4
1.5. Từ giải thuật đến chương trình....................... .....4
2. Các phương pháp biểu diễn:.............................................4
2.1.Các phương pháp biểu diễn giải thuật.........................4
2.1.1.Phương pháp biểu diễn từng bước............................4
2.2.Thiết kế và phân tích giải thuật...................................8
Chương III: TÌM HIỂU NGÔN NGỮ THỰC HIỆN.........................11
I. Tổng quan về ngôn ngữ lập trình Visual Basic.................11
II. Cấu trúc của một ứng dụng Visual Basic.........................13
III. Chúng ta có thể làm gì với Visual Basic...................... ....13
IV. Tóm tắt ngôn ngữ...........................................................16
1. Biến................................................................. .............16
2. Các kiểu dữ liệu trong Visual Basic.............................17
3. Các toán tử và hàm trong Visual Basic..................... ...18
4. Cấu trúc tuyển và cấu trúc lặp......................... ...........20
5. Thủ tục........................................................ ................21
Chương IV: MÔ HÌNH, PHƯƠNG HƯỚNG GIẢI QUYẾT.............23
1. Mô hình.................................... .......................................23
2. Phương pháp giải quyết..................................................25
3. Thiết kế dữ liệu trong ngôn ngữ Visual Basic...............28
Chương V: Cài đặt và sử dụng chương trình...........................31
1. Cài đặt chương trình:..................................................... ..31
1.1. Chạy chương trình:.............................................. ......31
1.2. Biến.............................................................. .............31
1.3. Soạn thảo lưu đồ thuật toán.....................................32
1.4. Soạn thảo nội dung của các nút khối:.......................33
1.5. Chạy thử chương trình:.............................................43
1.6. Tạo mã Pascal................................. ..........................45
Chương VI: NỘI DUNG CÁC LỚP ĐÃ CÀI ĐẶT..........................48
1. Lớp ClsNode:.................................... ...............................48
2. Lớp ClsNodeList:....................................................... .......64
3.ClsCommand:............................................... ....................67
4. ClsCommandL ist:...........................................................69
5. ClsVar:...................................................... .......................72
6. ClsVarL ist:............................. .........................................75
TÀI LIỆU THAM KHẢO..................................... .........................79
MỤC LỤC............................................................................... ..80