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

Tin học xây dựng

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.74 MB, 85 trang )



ĐẠI HỌC GIAO THÔNG VẬN TẢI
BỘ MÔN TỰ ĐỘNG HÓA THIẾT KẾ CẦU ĐƯỜNG












BÀI GIẢNG

TIN HỌC XÂY DỰNG



















Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 2

PHầN Mở ĐầU TỔNG QUAN MÔN HỌC 5
PHầN 1 NGÔN NGỮ LẬP TRÌNH VISUAL BASIC CƠ BẢN 7
CHƯƠNG I TỔNG QUAN VISUAL BASIC 6.0 8
I.1. Giới thiệu về Visual Basic 8
1.2. Integrated Development Environment (IDE) 9
1.2.1 Cấu trúc một dự án VB 9
1.2.2 Các thành phần của IDE 9
1.2.3 Soạn thảo chương trình 10
1.3. Trợ giúp trong quá trình làm việc (Help) 11
CHƯƠNG II CẤU TRÚC LẬP TRÌNH TRONG VISUAL BASIC 12
II.1 QUY TẮC VIẾT MÃ LỆNH 12
II.2 CÁC TỪ KHÓA TRONG VB6 13
II.3 CÁC KIỂU DỮ LIỆU CƠ BẢN 13
II.3.1 Boolean 13
II.3.2 Byte 14
II.3.3 Integer (Kiểu nguyên) 14
II.3.4 Long 14
II.3.5 Single 14
II.3.6 Double (Kiểu thực) 14
II.3.7 String (Kiểu chuỗi) 14
II.3.8 Date (Kiểu thời gian) 16

II.3.9 Kiểu mảng (array) 16
II.3.8 Kiểu dữ liệu do người dùng định nghĩa 16
II.3.9 Kiểu lớp (class) 17
II.3.10 Kiểu Variant 17
II.3.11 Chuyển đổi (convert) kiểu dữ liệu 18
II.4 KHAI BÁO BIẾN 18
II.4.1 Khai báo biến với các kiểu dữ liệu thông thường 18
II.4.2 Khai báo hằng. 18
II.4.3 Khai báo kiểu tự định nghĩa 19
II.4.4 Khai báo mảng 19
II.4.5 Khai báo, tạo và làm việc với biến đối tượng. 21
II.4.6 Các chú ý khi khai báo 21
II.5 BIỂU THỨC 21
II.5.1 Các khái niệm 21
II.5.2 Các loại phép toán 21
II.6 CÁC CÂU LỆNH 1
II.6.1 Lệnh gán 1
II.6.2 Lệnh rẽ nhánh If 1
II.6.2 Câu lệnh lựa chọn Select Case 3
II.6.3 Câu lệnh lặp xác định 4
II.6.4 Câu lệnh lặp xác định trong một tập hợp 5
II.6.5 Câu lệnh lặp không xác định 5
II.7 CHƯƠNG TRÌNH CON (HÀM VÀ THỦ TỤC) 6
II.7.1 Khái niệm 6
II.7.2 Hàm - Function 6
II.7.3 Thủ tục - Sub 7
II.7.4 Truyền tham số cho chương trình con 7
II.8 TRUY XUẤT DỮ LIỆU TRONG VISUAL BASIC 9
II.8.1 Các khái niệm 9
II.8.2 Biến toàn cục 10

II.8.3 Biến cục bộ 10
II.8.4 Biến module 10
II.9 GỠ LỖI TRONG VISUAL BASIC (Debug) 10
2.9.1 Xử lý lỗi lúc RunTime 11
2.9.2 Dùng khai báo Option Explicit 11
2.9.3 Dùng Breakpoints 11
2.9.4 Dùng Immediate Window 12
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 3
2.9.5 Dùng Watch Window 12
2.9.2 Dùng Comment (chú thích) 12
II.10 TỔ CHỨC CHƯƠNG TRÌNH 13
CHƯƠNG III FORM VÀ MỘT SỐ ĐIỀU KHIỂN THÔNG DỤNG 14
III.1 Các khái niệm liên quan 14
III.2 Form 16
III.2.1 Khái niệm 16
III.2.2 Thuộc tính 16
III.2.3 Sự kiện 16
III.3 Nhãn (Label) 16
III.3.1 Khái niệm 16
III.3.2 Thuộc tính 16
III.3.3 Sự kiện 16
III.4 Khung (Frame) 17
Khung cũng có các thuộc tính và sự kiện thông dụng như của điều khiển nhãn như: Name, Caption, Click,
DblClick
17
III.3 Nút lệnh (CommandButton) 17
III.3.1 Khái niệm 17
III.3.2 Thuộc tính 17
III.3.3 Sự kiện 17

III.4 Ô nhập dữ liệu (TextBox) 17
III.3.1 Khái niệm 17
III.3.2 Thuộc tính 18
III.3.3 Sự kiện 18
III.5 ListBox 19
III.3.1 Khái niệm 19
III.3.2 Thuộc tính 19
III.3.3 Phương thức 19
III.6 ComboBox 19
III.7 Check Box 20
III.7.1 Khái niệm: 20
III.7.2 Thuộc tính: 20
III.8 Option Button 20
III.9 Điều khiển thanh cuộn ngang (HscrollBar) 20
III.9.1 Khái niệm 20
III.9.2 Thuộc tính 20
III.9.3 Sự kiện 21
III.10 Điều khiển thanh cuộn đứng (VScrollBar) 21
III.11 Điều khiển thời gian (Timer) 21
III.11.1 Khái niệm 21
III.11.2 Thuộc tính: 21
III.11.3 Sự kiện 21
III.12 Danh sách ổ đĩa (DriveListbox), thư mục (DirListbox), tập tin (FileListbox) 21
CHƯƠNG IV LÀM VIỆC VỚI TẬP TIN (FILE) 23
IV.4 Mô hình File System Object (FSO) 23
IV.4.1 Tạo đối tượng FileSystemObject 23
IV.4.2 Truy cập ổ đĩa, thư mục, tập tin 24
IV.4.3 Thông tin về ổ đĩa 24
IV.4.4 Làm việc với thư mục 24
IV.4.5 Làm việc với tập tin 24

IV.4.6 Ví dụ 25
IV.5 Hàm I/O và lệnh xử lý tập tin 27
IV.5.1 Mở tập tin 27
IV.5.2 Đọc nội dung tập tin 28
IV.5.3 Ghi dữ liệu lên tập tin 28
IV.5.4 Đóng tập tin 28
IV.5.5 Ví dụ 29
PHầN 2 TIN HỌC XÂY DỰNG 31
CHƯƠNG I THIẾT KẾ GIAO DIỆN 32
I.1 Menu 32
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 4
I.1.1 Khái niệm 32
I.1.2 Các thuộc tính 32
I.1.3 Cách tạo menu 33
I.2 Hộp thoại (Dialog Box) 33
I.2.1 Khái niệm 33
I.2.2 Hộp thoại thông điệp 34
I.2.2.1 Loại chỉ xuất thông báo 34
I.2.2.2 Loại tương tác với người dùng 34
I.2.3 Hộp thoại nhập 35
I.2.4 Các loại hộp thoại thông dụng (Common Dialog) 35
I.2.4.1 Hộp thoại mở và lưu tập tin 35
I.2.4.2 Hộp thoại Chọn màu 36
I.2.4.3 Hộp thoại chọn Font chữ 36
I.2.4.4 Hộp thoại In ấn 37
I.3 Xử lý các sự kiện chuột và bàn phím 38
I.3.1 Sự kiện chuột 38
I.3.2 Sự kiện bàn phím 39
I.4 Sử dụng Multiple document interface (MDI) 39

I.4.1 Khái niệm 39
I.4.2 Thiết lập ứng dụng MDI 40
I.5 Tạo giao diện Wizard (Thuật sĩ) 40
CHƯƠNG II XỬ LÝ ĐỒ HỌA 42
II.1 Tọa độ màn hình 42
II.2 Màu (Color) 43
II.3 Các thuộc tính đồ họa của Form và PictureBox 44
II.4 Các phương thức đồ họa 44
II.4.1 Phương thức Print 44
II.4.2 Phương thức PSet 45
II.4.3 Phương thức Line 46
II.4.4 Phương thức Circle 48
II.4.5 Phương thức PaintPicture 48
II.5 Các điều khiển đồ họa 52
II.5.1 Điều khiển hộp hình ảnh (Picture Box) 52
II.5.2 Điều khiển hình ảnh (Image) 52
II.5.3 Điều khiển hình dạng (Shape) 52
II.5.4 Điều khiển Line 53
II.6 Các phép biến đổi tọa độ 53
CHƯƠNG III LÀM VIỆC VỚI AUTOCAD/EXCEL 57
III.1 Làm việc với AutoCAD 57
III.1.1 Hệ thống các đối tượng trong AutoCAD 60
III.1.2 Kết nối VB với AutoCAD 60
III.1.3 Một số phương thức cơ bản 61
III.1.4 Ví dụ minh họa 61
III.2 Làm việc với Microsoft Excel 61
III.2.1 Hệ thống các đối tượng trong Excel 61
III.2.2 Kết nối VB với MS Excel 62
III.2.2 Một số phương thức cơ bản 63
III.2.3 Ví dụ minh họa 63


Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 5













Phần mở đầu
TỔNG QUAN MÔN HỌC

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 6
Lesson 1

TỔNG QUAN MÔN HỌC

Nội dung - Mục tiêu
- Tìm hiểu cơ bản về ngôn ngữ lập trình Visual Basic (VB).
- Sử dụng các điều khiển, viết mã lệnh và xây dựng chương trình trong VB6
- Cơ sở về phương pháp hướng đối tượng.
- Lập trình hướng đối tượng dựa trên VB6.

- Sinh viên nắm được các kỹ năng cơ bản của lập trình, ứng dụng vào ngành xây dựng
thông qua môi trường VB6.
- Hiểu về phương pháp hướng đối tượng, xây dựng chương trình theo phương pháp hướng
đối tượng với VB6.
- Nói tóm lại dù chưa đạt mức thành thạo nhưng cũng sẽ tự mình hoàn thành được các
chương trình nhỏ phục vụ chuyên môn sau này.
- Hướng mở rộng: VB.NET, VBA, VBScript (Vẽ hình + Giải thích).

Phương pháp học
- Nắm vững kiến thức cơ bản, dành nhiều thời gian cho việc thực hành trên máy tính.
- Đam mê, tự tìm hiểu, đi từ những ví dụ cơ bản.
- Chú tâm ngay từ đầu, mục đích không phải chỉ để thi qua.
- Học từ nhiều nguồn tài liệu khác nhau, đặc biệt là Internet, giúp tra cứu mỗi khi gặp khó
khăn và thắc mắc.
- Bài giảng sẽ đi từng phần các kiến thức cơ bản, kết hợp với việc thực hành ngay trên lớp.
Thời gian sử dụng máy chiếu >70%. Sinh viên hăng hái tham gia xây dựng bài sẽ được
cộng điểm khuyến khích.

Tài liệu tham khảo
- Microsoft Visual Basic 6.0 Và Lập Trình Cơ Sở Dữ Liệu
- Tự Học Lập Trình Visual Basic 6.0…

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 7














Phần 1
NGÔN NGỮ LẬP TRÌNH VISUAL BASIC
CƠ BẢN

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 8
CHƯƠNG I
TỔNG QUAN VISUAL BASIC 6.0

Mục tiêu:
Chương này giới thiệu về môi trường phát triển tích hợp (IDE) Microsoft
Visual Basic 6.0; cũng như giúp sinh viên có cái nhìn tổng quan về Visual Basic.
Học xong chương này, sinh viên phải nắm bắt được các vấn đề sau:
- Sử dụng môi trường phát triển tích hợp VB 6.0 để phát triển ứng dụng.
- Cách tạo dự án mới (New Project) trong VB 6.0.
- Sử dụng tốt hệ thống trợ giúp trong quá trình làm việc
Kiến thức có liên quan:
- Sử dụng hệ điều hành Windows.

I.1. Giới thiệu về Visual Basic
Visual Basic 6.0 (VB6) là một phiên bản của bộ công cụ lập trình Visual Basic (VB), cho
phép người dùng tiếp cận nhanh cách thức lập trình trên môi trường Windows.


Visual Basic là gì?

Phần "Basic" đề cập đến ngôn ngữ BASIC (Beginners All-Purpose Symbolic Instruction
Code), một ngôn ngữ lập trình đơn giản, dễ học, được phát triển cho những người không
chuyên sâu về lập trình. VB được phát triển và mở rộng dựa trên BASIC.
Phần "Visual" đề cập đến phương pháp được sử dụng để tạo giao diện đồ họa người dùng
(Graphical User Interface hay viết tắt là GUI). VB có sẵn các thành phần điều khiển trự
c
quan (controls), các điểu khiển này được lập trình viên sắp xếp trên form tạo thành giao
diện người dùng.
Chính bởi sự đơn giản, dễ học nên VB6 là cách nhanh và tốt nhất để lập trình trong môi
trường Microsoft Windows. VB6 cung cấp bộ công cụ hoàn chỉnh để đơn giản hóa việc lập
trình ứng dụng dựa trên giao diện đồ họa.

Visual Basic còn có hai dạng khác: Visual Basic for Application (VBA) và VBScript.
VBA là ngôn ngữ nằm phía sau các chương trình Word, Excel, MSAccess, AutoCAD, .v.v
còn gọi là Macros. Dùng VBA trong MSOffice, ta có thể làm tăng chức nă
ng bằng cách tự
động hóa các chương trình.
VBScript được dùng cho Internet và chính Operating System.

Cài đặt Visual Basic
Phiên bản: Visual Basic 6.0
Cấu hình tối thiểu: 32 MB RAM, CPU Pentium II, Windows 98.
Sử dụng các file cài đặt (1CD) để cài, sửa đổi, xóa VB. Ngoài ra có thể cài thêm thư viện
MSDN – Help (3CD)
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 9
1.2. Integrated Development Environment (IDE)
IDE là tên tắt của môi trường phát triển tích hợp, đây là nơi tạo ra các chương trình VB.

1.2.1 Cấu trúc một dự án VB
- Dự án (Project) là tập hợp các file để hình thành nên chương trình ứng dụng.
- Dự án VB (VB Project) = Code Modules + Class Modules + Userform
- Code Module: mã lệnh chính của chương trình
- Class Module: thiết kế các lớp của dự án
- Userform: giao diện dạng hộp thoại của dự án để nhập số liệu và xuất kết quả.

VB hỗ trợ tạo nhiều kiểu ứng dụng khác nhau. Để tạo mới một dự án thực thi ta chọn
Standard EXE rồi chọn Open.
1.2.2 Các thành phần của IDE
- Form trắng để thiết kế giao diện cho ứng dụng
- Cửa sổ dự án hiển thị các file được tạo trong ứng dụng.
- Cửa sổ thuộc tính hiển thị các thuộc tính của đối tượng và điều khiển được chọn.
- Toolbox chứa các điều khiển cần thiết đễ xây dựng một ứng dụng VB.
- Cửa sổ viết mã chương trình (Code).
- MenuBar, Toolbar, Layout, Immediate Window,ViewCode, ViewForm

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 10
Menu Bar
Chứa đầy đủ các lệnh để làm việc với VB6, kể cả các menu để truy cập các chức năng đặc
biệt dành cho việc lập trình như Project, Format, hoặc Debug

Toolbars (Debug, Edit, form Editor, Standard)
Các toolbars gồm các biểu tượng cho phép chọn nhanh các chức năng cần thiết. Sử dụng
Menu View | Toolbars để tắt hoặc mở các toolbars.
Các toolbars có thể sửa đổi theo ý thích bằng chức năng: View | Toolbars | Customize

Toolbox
Bao gồm các điều khiển (controls), dùng thiết kế giao diện đồ họa.

Khi có nhiều các control, có thể sử dụng Add Tab để sắp xếp lại vị các control theo ý
muốn.

Project Explorer
Là nơi liệt kê các forms, modules và class trong dự án hiện hành.

Properties window
Cửa sổ thuộc tính hiển thị các thuộc tính của đối tượng và điều khiển được chọn. Một
property là một đặc tính của một đối tượng chẳng hạn như size, caption, hoặc color.
Khi bạn sửa đổi một property bạn sẽ thấy hiệu quả ngay lập tức, thí dụ thay đổi property
Font của một Label sẽ thấy Label ấy được display bằng Font chữ mới.

Form Layout
Dùng form Layout để chỉnh vị trí của các form khi form hiện ra lần đầu lúc chương trình
chạy.

Immediate Window
Dùng để gở rối (debug) quá trình test ứng dụng.
Ta có thể xem các thông số khi chạy chương trình hay khi đang tạm ngừng. Có thể thay đổi
giá trị các biến hay chạy một dòng chương trình.
1.2.3 Soạn thảo chương trình
Trong Visual Basic IDE, cửa sổ mã lệnh (Code) cho phép soạn thảo mã chương trình với
một số chức năng (Tắt mở trong Tools|Option)
- Đánh dấu (Bookmarks): Chức năng này cho phép đánh dấu các dòng lệnh của chương
trình giúp việc xem lại các phần mã lệnh dễ dàng. Sử dụng tính năng này qua thanh công
cụ hoặc menu Edit.
- Tự động kiểm tra cú pháp (Auto Syntax Check). Khi chức năng này bật, nếu viết một
dòng chứa lỗi, VB sẽ thông báo về lỗi và hiển thị con trỏ ngay dòng chương trình lỗi. Nếu
không có chức năng này, VB chỉ hiển thị dòng mã sai với màu đỏ không kèm chú thích.
- Yêu cầu khai báo biến (Require Variable Declaration) (Tùy chọn): VB sẽ thông báo

lỗi khi một biến được dùng mà không khai báo và sẽ chỉ ra vị trí của biến đó.
- Gợi nhớ mã lệnh: (Auto List Members) Tự động hiển thị gợi ý khi ta gõ vào tên của
chúng. Sử dụng Ctrl+Space để sử dụng chức năng tự động hoàn thành mã chương trình.
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 11
1.3. Trợ giúp trong quá trình làm việc (Help)
Trong khi lập trình có thể cần tìm hiểu thông tin liên quan đến các commands, functions
.v.v của VB6. Các thông tin này được Microsoft cung cấp rất đầy đủ trong thư viện trợ
giúp Microsoft Developer Network | MSDN Library Visual Studio 6.0.
Truy cập thông qua menu Help | Contents của VB6, hoặc chọn (bôi đen) một từ khóa trong
code rồi ấn F1.
Phần trợ giúp được thiết kế giống như 1 quyển sách, kết hợp với chức năng tìm kiếm theo
từ khóa khiến người đọc dễ dàng tra cứu. Các thông tin được liên kết với nhau đầy đủ giúp
việc tham khảo đạt hiệu quả cao.
Yêu cầu: Máy tính phải cài đầy đủ thư viện MSDN (3CD)
Context Sensitive Help (trợ giúp đúng tình huống)
Nhiều phần của VB6 hỗ trợ context sensitive, có nghĩa là khi gặp lỗi hoặc cần trợ giúp chỉ
cần ấn F1 hoặc bôi đen từ khóa rồi nhấn F1. Chương trình sẽ hiển thị thông tin liên quan
đến vấn đề cần trợ giúp.
Các phần context sensitive là:
• Các Windows của VB6 như Properties, Code .v.v
• Các control trong Toolbox.
• Các Object trên một form hoặc Object tài liệu.
• Các đặc tính trong Window Properties.
• Các keywords của VB6
• Các thông báo lỗi (error messages)

Ngoài ra, trong Help thường có Example là các ví dụ minh họa cách dùng cho một đối
tượng nào đó dùng tham khảo rất phù hợp.
Tìm kiếm trợ giúp trên Internet

Việc tìm kiếm thông tin trên Internet là hết sức cần thiết, dù trong lĩnh vực nào. Đặc biệt là
trong công việc lập trình. Chúng ta có thể tra cứu, tìm kiếm ví dụ, thảo luận về vấn đề mắc
phải…
Một số website hữu ích:
- Trang chủ của Microsoft Developer Network
- Trang tìm kiếm nhanh và hiệu quả
- Mã nguồn miễn phí và nhiều ví dụ hữu ích

Question for today!

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 12
Lesson 2
CHƯƠNG II
CẤU TRÚC LẬP TRÌNH TRONG VISUAL BASIC

Mục tiêu:
Chương này giới thiệu về các cấu trúc lập trình trong VB; đây là các cấu trúc cốt
lõi để xây dựng nên một chương trình VB.
Học xong chương này, sinh viên phải nắm bắt được các vấn đề sau:
- Sử dụng môi trường lập trình VB để viết mã lệnh, các quy tắc, từ khóa.
- Các kiểu dữ liệu trong VB.
- Cách khai báo hằng, biến trong VB.
- Biểu thức trong VB.
- Các câu lệnh đơn cũng như các câu lệnh có cấu trúc.
- Chương trình con trong VB.
- Truy xuất dữ liệu, tổ chức chương trình trong VB.
- Gỡ lỗi trong VB.
Kiến thức có liên quan:
- Cách sử dụng môi trường phát triển của VB


II.1 QUY TẮC VIẾT MÃ LỆNH
Cũng giống như các ngôn ngữ lập trình khác, VB đưa ra những quy tắc cho người lập trình
trong quá trình viết mã lệnh. Người lập trình cần phải tuân theo các quy tắc này để trình
biên dịch có thể dịch mã lệnh mà không phát sinh lỗi cú pháp.
- Các câu lệnh phải là các dòng riêng biệt. Nếu có nhiều lệnh trên cùng một dòng thì
giữa các lệnh ngăn cách nhau bằng dấu hai chấm (:). Nếu dòng lệnh quá dài, muốn ngắt
lệnh thành hai dòng thì sử dựng dấu cách và dấu gạch dưới (_).
- Dòng chú thích được bắt đầu bằng (‘)

Qui ước đặt tên biến của ngôn ngữ VB cũng tương tự như các ngôn ngữ khác:
• Chỉ dùng được ký tự (hoa và thường), số, và ký tự gạch chân.
• Phải bắt đầu bằng ký tự, dài không quá 255 ký tự.
• Không có khoảng trống, không trùng tên từ khóa.
Ví dụ:
Đúng Sai
My_Car My.Car
ThisYear 1NewBoy
Long_Name_Can_beUSE He&HisFather

Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 13
Các lỗi cú pháp sẽ được VBA IDE phát hiện và báo lỗi cho người lập trình ngay trong quá
trình viết mã lệnh.
II.2 CÁC TỪ KHÓA TRONG VB6
Từ khoá là tập hợp các từ cấu thành một ngôn ngữ lập trình. Mỗi ngôn ngữ lập trình có một
bộ từ khoá riêng, dưới đây là danh sách các từ khoá trong ngôn ngữ lập trình VB6:

As For Mid Print String
Binary Friend New Private Then

ByRef Get Next Property Time
ByVal Input Nothing Public To
Date Is Null Resume True
Else Len On Seek WithEvents
Empty Let Option Set
Error Lock Optional Static
False Me ParamArray Step
II.3 CÁC KIỂU DỮ LIỆU CƠ BẢN
Kiểu dữ liệu là một tập hợp các giá trị mà một biến của kiểu có thể nhận và một tập hợp
các phép toán có thể áp dụng trên các giá trị đó.
Trong VB6 có rất nhiều kiểu dữ liệu khác nhau như: Boolean, Double, Integer, Object,
String, Variant Từng kiểu có mục đích riêng và việc sử dụng đúng sẽ giúp chương trình
chạy nhanh. Chúng ta sẽ đi tìm hiểu các kiểu dữ liệu cơ bản
II.3.1 Boolean
Đặc điểm: Chỉ có 2 trạng thái: True và False.
Khi chuyển từ các dữ liệu dạng số sang kiểu logic, 0 sẽ được chuyển thành FALSE còn giá
trị khác sẽ được chuyển thành TRUE. Khi chuyển từ kiểu logic sang kiểu số, giá trị
FALSE sẽ được chuyển thành 0 còn giá trị TRUE sẽ được chuyển thành -1.
Phạm vi áp dụng: các bài toán lặp, if then, thường dùng làm cờ hiệu (flags).
Ví dụ:

‘Cách 1:
DKTuoi = (Tuoi =< 18)
DKThuNhap = (ThuNhap > 1000000)
If DKTuoi And DKThuNhap Then
LaTrieuPhuTre
End If
‘Cách 2:
If (Tuoi =< 18) Then
DKTuoi = 1

Else
DKTuoi = 0
End If
If (ThuNhap > 1000000) Then
DKThuNhap = 1
Else
DKThuNhap = 0
End If
If (DKTuoi = 1) And (DKThuNhap = 1) Then
LaTrieuPhuTre
End If
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 14
II.3.2 Byte
Đặc điểm: Sử dụng 8-bit để lưu trữ giá trị, tức có thể lưu giá trị dương từ 0 đến 255
Phạm vi áp dụng: hữu ích trong việc lưu dữ liệu nhị phân
II.3.3 Integer (Kiểu nguyên)
Đặc điểm: Kiểu số nguyên, sử dụng 16-bit để lưu trữ,
Khoảng giá trị: từ -32768 đến 32767
Phạm vi áp dụng: Khi trong chương trình không sử dụng giá trị thập phân
II.3.4 Long
Đặc điểm: Kiểu số nguyên, sử dụng 32-bit để lưu trữ, thường được gọi là số nguyên dài.
Khoảng giá trị: từ -2,147,483,648 đến 2,147,483,647
Phạm vi áp dụng:
Kiểu Long giống như Integer chỉ chứa số nguyên.
II.3.5 Single
Đặc điểm: Kiểu số thực, sử dụng 32-bit để lưu trữ, kiểu dữ liệu này còn được gọi là độ
chính xác đơn.
Khoảng giá trị:
-3.402823e38 đến -1.401298e-45 với số âm và từ

1.401298e-45 đến 3.402823e38 cho số dương
Phạm vi áp dụng:
Sử dụng với giá trị thập phân nằm trong khoảng trên.
II.3.6 Double (Kiểu thực)
Đặc điểm: Kiểu số thực, sử dụng 64-bit để lưu trữ, kiểu dữ liệu này được gọi là độ chính
xác kép.
Khoảng giá trị:
-1.79769313486232e308 đến -4.94065645841247e-324 với số âm và từ
4.94065645841247e-324 đến 1.79769313486232e308 cho số dương
Phạm vi áp dụng: Khi cần tính toán với yêu cầu độ chính xác cao.
II.3.7 String (Kiểu chuỗi)
Đặc điểm:
Chuỗi dữ liệu chứa từ 0 đến 65.500 ký tự. Từng ký tự có khoảng giá trị từ 0 đến 255 trong
bảng ASCII.
Có sẵn một số hàm liên quan đến chuỗi ví dụ: cắt chuỗi, tách chuỗi, nhập chuỗi,… Có thể
tra cứu các hàm này trong các tài liệu tham khảo như MSDN hoặc Object Browser (thư
viện Strings).
Phạm vi áp dụng:
Khi cần làm việc với dữ liệu văn bản (Text).
Được sử dụng nhiều trong các bài toán quản lý, các bài toán yêu cầu nhập xuất dữ liệu.
Việc dùng string cũng giúp cho các bài toán có giao diện thân thiện hơn.
Ví dụ:

Private Sub Command1_Click()
Dim sText As String
Dim lTextLength As Long
Dim sChar As String
Dim bASCII As Byte
Dim x As Long
sText = " VB that la don gian!"

lTextLength = Len(sText) 'So ky tu trong sText
For x = 1 To lTextLength ‘Lap den ky tu cuoi cung trong sText
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 15
sChar = Mid$(sText, x, 1)'Lay ky tu thu x trong sText
bASCII = Asc(sChar) 'Lay gia tri ASCII cua ky tu
MsgBox "Ma ASCII cua ky tu '" & sChar & "' la " & bASCII ‘Hien thi ket qua
Next x
End Sub
Các hàm xử lý chuỗi
- Ghép chuỗi: cho phép ghép 2 hay nhiều chuỗi lại với nhau nhờ toán tử &.
Ví dụ:
FirstWord = "Hello"
SecondWord = "World"
Greeting = FirstWord & SecondWord
' Greeting bây giờ là "HelloWorld"
- Len: trả về chiều dài một chuỗi được chỉ định.
Ví dụ: iLen = Len(Greeting) ' iLen bằng 8
- Left: Trích chuỗi con từ phần đầu chuỗi gốc
Left (String, [length]).
- Right: Trích chuỗi con từ phần đuôi chuỗi gốc
Right (String, [length])
- Mid: Trích chuỗi con từ giữa chuỗi gốc Mid(String, Start As Long, [length])
Ví dụ:
Today = "24/05/2001"
StrDay = Left(Today,2) ' StrDay = "24" '
StrYear = Right(Today,4) ' StrYear = "2001" '
StrMonth = Mid(Today,4,2) ' StrMonth = "05"
- InStr: Tìm chuỗi con trong chuỗi gốc. Nếu hàm InStr trả về 0, nghĩa là không tìm thấy.
Cú pháp: InStr([start,] string1, string2, [compare])

Trong đó:
Start: Xác định vị trí trong chuỗi bắt đầu việc tìm kiếm. Nếu giá trị là Null thì sẽ bắt đầu từ
đầu chuỗi. Nếu như tham số Compare có đặc tả thì bắt buộc phải khai báo tham số Start.
String1: Biểu thức chuỗi để so sánh.
String2: Chuỗi cần tìm.
Compare: Xác định kiểu so sánh chuỗi. Giá trị: vbTextCompare,
vbBinaryCompare.
Ví dụ 1:
myString = "The *rain in Spain mainly "
Position = Instr(myString,"*") ' Position sẽ là 5
Nếu trong myString không có dấu "*" thì Position sẽ bằng 0
Ví dụ 2:
KeyValuePair = "BeatlesSong=Yesterday"
Pos = Instr(KeyValuePair, "=")
Key = Left(KeyValuePair, Pos-1) ‘Key= “BeatlesSong”
Value = Mid(KeyValuePair, Pos+1) ‘Key= “Yesterday”
- Replace: tìm và thay thế chuỗi.
Cú pháp: Replace(Expression, find, replace[, start[, count[, compare]]])
Trong đó:
- Expression: Biểu thức chuỗi chứa chuỗi cần thay thế.
- find: Chuỗi cần tìm.
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 16
- replace: Chuỗi thay thế chuỗi tìm được.
- start: Tương tự như hàm InStr.
- count: Xác định số lần thay thế. Mặc định là 1.
- compare: Kiểu so sánh chuỗi. Giá trị: vbTextCompare, vbBinaryCompare
- LTrim (RTrim): cắt tất cả các khoảng trắng bên trái (bên phải của chuỗi)
- UCase: đổi chuỗi sang chuỗi gồm các ký tự là chữ hoa. Cú pháp: UCase(string)
- Asc: cho mã Ascii của một ký tự.

- Chr: trả về ký tự ứng với mã Ascii được chỉ định.
- InstrRev: tương tự như InStr nhưng việc tìm kiếm được tiến hành từ phải sang.
- Val: Hàm đổi chuỗi sang số.
- Str: Hàm đổi số sang chuỗi.
II.3.8 Date (Kiểu thời gian)
Đặc điểm:
Dùng để lưu trữ và thao tác trên các giá trị thời gian (ngày và giờ). Để cho VB biết dữ
liệu là kiểu Date ta cần đặt giữa
dấu ## hoặc “”.
Việc định dạng hiển thị tùy thuộc vào việc thiết lập trong Control Panel.
Phạm vi áp dụng: Lưu trữ các giá trị thời gian, ngày tháng.
Ví dụ:
Dim D As Date
D = #01/02/98# ‘ Hay “01/02/98”
Nếu hiểu theo kiểu người Mỹ, đây là ngày 2 tháng 1 năm 1998, còn nếu theo kiểu
Vietnam thì đây là ngày 1 tháng 2 năm 1998. Chọn kiểu ngày tháng trong Control
Panel|Regional Setting.
- Hàm Now: trả về ngày giờ hiện tại.
Ví dụ
:
MsgBox "NOW IS " & Format (Now, "ddd dd-mmm-yyyy hh:nn:ss")
' sẽ hiển thị
NOW IS Tue 05-Oct-2004 16:15:53
II.3.9 Kiểu mảng (array)
Đặc điểm:
- Mảng là một khối dữ liệu gồm các phần tử có cùng tên và kiểu dữ liệu. Các phần tử trong
mảng phân biệt với nhau bởi các chỉ số.
- Mảng có thể có một chiều hoặc nhiều chiều.
- Trong VB có hai loại biến mảng: mảng có chiều dài cố định và mảng động (chiều dài có
thể thay đổi lúc thi hành).

Phạm vi áp dụng:
Đôi khi chúng ta có nhiều biến tương tự nhau, thí dụ như điểm thi của 10
học sinh, nếu phải đặt tên khác nhau cho từng biến (VD: HoaMark, TaiMark, SonMark,
TamMark, NgaMark, HuongMark .v.v ) thì bất tiện. Chúng ta có thể dùng Array để có
một tên chung cho cả nhóm, rồi nói đến điểm của từng người một bằng cách dùng một con
số gọi là ArrayIndex.
Việc lưu trữ dùng mảng còn giúp chúng ta xử lý dữ liệu dễ dàng hơn. Ví dụ việc tổng hợp
đ
iểm của danh sách trên.
II.3.8 Kiểu tự định nghĩa
Đặc điểm:
Kiểu dữ liệu do người dùng định nghĩa tương tự như kiểu bản ghi (Record)
trong Pascal hay kiểu cấu trúc (Struct) trong C.
- Kiểu dữ liệu này gồm các trường, có thể là các kiểu dữ liệu khác nhau.
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 17
Phạm vi áp dụng: Trong các trường hợp cần lưu một giá trị có nhiều thuộc tính. Ví dụ các
thông số của một lỗ khoan.
II.3.9 Kiểu lớp (class)
Đặc điểm: Lớp được xây dựng trong Class Module hoặc trong các thư viện có sẵn.
- Lớp bao gồm:
• Các thuộc tính (Property): thực chất là các biến thành viên khai báo trong lớp đó.
• Các phương thức (Method): thực chất là các chương trình con được khai báo trong
lớp - các hàm (Function) và thủ tục (Procedure) thành viên.
- Ngoài ra trong VB, lớp có thể có sự kiện (Event). Sự kiện tạo ra khả năng linh động trong
xây dựng quan hệ giữa đối tượng với nhau và với mô môi trường.
II.3.10 Kiểu Variant
Đặc điểm: Kiểu Variant là một kiểu dữ liệu đặc biệt trong VB. Biến kiểu Variant có thể
chứa mọi giá trị của các kiểu dữ liệu khác, kể cả mảng.
Tuy Variant tiện dụng nhưng nếu Variant được dùng nhiều chỗ, trong nhiều tình huống,

cần xác định rõ hiện đang là kiểu nào.
Phạm vi sử dụng: Hạn chế dùng Variant vì sẽ gây lãng phí bộ nhớ và giảm tốc độ thực thi
của chương trình.
Một số chú ý khi dùng biến kiểu Variant:
- Nếu muốn thi hành các hàm toán học, Variant phải chứa giá trị kiểu số.
- Nếu muốn nối chuỗi, dùng toán tử & thay vì toán tử +.
Giá trị Empty:
- Đây là giá trị đặc biệt xuất hiện khi một biến chưa được gán trị. Ta dùng hàm IsEmpty
để kiểm tra giá trị Empty.
- Giá trị Empty biến mất khi có một giá trị bất kỳ được gán cho biến Variant, để trở về
giá trị Empty, ta gán từ khoá Empty cho biến Variant.
Giá trị Null: Biến Variant chứa giá trị Null trong trường hợp những ứng dụng cơ sở dữ
liệu thể hiện không có dữ liệu hoặc dữ liệu không xác định.
Giá trị Error: Trong một biến kiểu Variant, Error là một giá trị đặc biệt cho biết đã có một
lỗi đã xảy ra bên trong thủ tục.
Ví dụ
:
Private Sub cmdShowDataTypes_Click()
Dim sMess As String
Dim vVariant As Variant
vVariant = "Xin chao" 'String
sMess = TypeName(vVariant) & vbCrLf ' xuống dòng & về đầu dòng
vVariant = 25 ' Integer
sMess = sMess & TypeName(vVariant) & vbCrLf
vVariant = True ' Boolean
sMess = sMess & TypeName(vVariant) & vbCrLf 'Date
vVariant = #1/1/2001# 'trong cặp dấu #
sMess = sMess & TypeName(vVariant)
MsgBox sMess
End Sub

Khi chạy chương trình kết quả là:
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 18

II.3.11 Chuyển đổi (convert) kiểu dữ liệu
VB cung cấp một số hàm để chuyển kiểu dữ liệu của một biến từ loại này sang loại khác.
Val (str): Trả về giá trị kiểu thực của một chuỗi: a= Val(“1245.43 asd”)
Nếu trong chuỗi có chứa ký tự khác số, hàm sẽ loại bỏ ký tự đó.
CDbl (x):Trả về giá trị kiểu thực của chuỗi, chuỗi này phải là các số (number).
CInt (x): Trả về giá trị kiểu nguyên (Integer).
CStr (x): Trả về giá trị kiểu chuỗi.
Str (x): Trả về giá trị kiểu chuỗi của một số.

Các lưu ý:
- Kiểu dữ liệu số nguyên: Byte, Integer, Long khi gán giá trị thập phân thì VB sẽ gán giá trị
nguyên làm tròn. Lấy VD.
- Thực hiện các phép tính số nguyên với số thực sẽ cho kết quả là số thực. VD: Integer +
Double = Double.

Question for today!

II.4 KHAI BÁO BIẾN
II.4.1 Khai báo biến với các kiểu dữ liệu thông thường
Khái niệm biến:
Biến (Variable) là vùng lưu trữ được đặt tên để chứa dữ liệu tạm thời trong quá trình tính
toán, so sánh và các công việc khác.
Cách khai báo
Dim <tên_biến> as <Kiểu_dữ_liệu>
- Dùng các từ khóa Public hay Private nhằm xác định phạm vi hoạt động của biến (sẽ
giải thích ở phần sau).

Public <tên_biến> as <Kiểu_dữ_liệu>
Hay: Private <tên_biến> as <Kiểu_dữ_liệu>
Nếu khai báo biến không xác định kiểu dữ liệu thì biến đó có kiểu Variant.
Ví dụ:
Dim sHoTen As String
Public iTuoi As Integer
Private iKetHon As Boolean
II.4.2 Khai báo hằng.
- Là kiểu dữ liệu dùng lưu những giá trị không bao giờ thay đổi.
Việc sử dụng kiểu hằng số giúp chúng ta hạn chế những nhầm lần. Đơn cử như việc sử
dụng một thông số nhiều lần trong chương trình.
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 19
[Public/ Private] Const <tên_hằng> = <giá_trị_hằng>
Ví dụ:
Const g = 9.8
Const Num As Integer = 4*5
II.4.3 Khai báo kiểu tự định nghĩa.
- Khai báo các kiểu dữ liệu dạng bản ghi gồm các trường theo nhu cầu của người sử dụng.
Cú pháp khai báo như sau:
[Pravite/Public] Type <tên_ kiểu>
<tên_trường_1> as <kiểu_1>
<tên_trường_2> as <kiểu_2>

<tên_trường_n> as <kiểu_n>
End Type
Sau khai báo, để truy cập tới một trường của biến kiểu bản ghi, dùng toán tử (.) và cặp từ
khóa
With… End With
Ví dụ: Dữ liệu về điểm đo trong khảo sát địa hình có thể được xây dựng gồm: chỉ số của

điểm (id), tên điểm (name), tọa độ x, tọa độ y, cao độ z, mã địa vật (madiavat)

Private Type diemdo ‘ Khai báo kiểu
Id as Long
Ten as String
X as Double, Y as Double, Z as Double
Madiavat as Long
End Type
Private Sub Command1_Click()
Dim diem as diemdo ‘ Tạo biến và gán dữ liệu
With diem
.Id = 1
.x = 1.5: .y = 24: .z = 11.3
.Ten = “Điểm 1”
.Madiavat = 1
End With
End Sub
II.4.4 Khai báo mảng
• Mảng tĩnh (mảng có kích thước cố định)
[Public/ Private/ Dim] <tên_mảng>(<các thông số về chiều>) as <tên_kiểu>
Các thông số về chiều có thể biểu diễn qua các ví dụ sau:
Dim a(1 to 4) as Integer: mảng 1 chiều chỉ số từ 1 đến 4 kiểu nguyên.
Dim a(3) as Long: mảng 1 chiều chỉ số tới 3 kiểu Long
(chỉ số xuất phát mặc định là 0 hoặc được xác định thông qua khai báo Option Base)
Option Base 0 hoặc Option Base 1
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 20
Dim a(1 to 4,2 to 6) as Double: mảng 2 chiều chỉ số từ 1 tới 4 và 2 tới 6.
Dim a(2,2,3) as String: mảng 3 chiều với miền chỉ số trên tương là 2, 2 và 3.
• Mảng động (mảng có kích thước thay đổi)

[Public/ Private/ Dim] <tên_mảng> () as <tên_kiểu>
Trong khai báo trên không có các thông số về chiều, thuần túy chỉ là một khai báo.
- Các phần tử của mảng chưa được tạo ra (hay mảng chưa được cấp phát bộ nhớ).
- Dữ liệu của mảng chỉ được tạo ra hoặc thay đổi khi có lệnh Redim.
Lệnh này có tác dụng tạo ra mảng thực sự (có kích thước và các phần tử tương ứng) hoặc
thay đổi kích thước của một mảng động.
Redim <tên_mảng>(<các thông số về chiều>) as <tên kiểu>
- Chú ý rằng <tên_kiểu> phải đúng như khai báo, các thông số về chiều có thể khác
trước cả về số chiều và kích thước của từng chiều.
- Dữ liệu mảng cũ sẽ bị, thay vào đó là phần tử của mảng mới được khởi tạo.
Ví dụ:
Dim diem as diemdo
Dim a() as Long
Redim a(1 to 5) as Long
a(1) = 100: a(2) = 200 ‘a(1) và a(2) có giá trị tương ứng 100 và 200
Redim a(1 to 3, 2 to 4) as Long
‘Mảng được làm mới hoàn toàn là một mảng 2 chiều, các giá trị a(1) và a(2) không còn ý
nghĩa nữa

- Trong trường hợp muốn thay đổi kích thước của mảng mà không mất dữ liệu, dùng lệnh
ReDim với từ khóa Preserve.
Tuy nhiên chỉ thay đổi được biên trên của chiều cuối cùng trong mảng. Nếu thay đổi các
chiều khác sẽ phát sinh lỗi.
Ví dụ
Dim a() as Long
ReDim a(1 to 5) as Long
a(1) = 100: a(2) = 200
ReDim Preserve a(1 to 6) as Long
‘Thay đổi mở rộng mảng thêm một phần tử mà không ảnh hưởng đến các dữ liệu trước
a(1)vẫn có giá trị 100, a(2)=200


Không thêm được chỉ số 0 vào mảng trên:
ReDim Preserve a(0 to 6) as Long
(Lỗi)
Một số thao tác trên mảng
- Hàm UBound trả về biên trên của một mảng.
- Hàm LBound trả về biên dưới của một mảng.
- Truy xuất từng phần tử trong mảng:
<Tên mảng>(<Vị trí>)
- Sao chép mảng: Đối với VB6, ta có thể gán một mảng cho một mảng khác, hoặc
kết quả trả về của một hàm có thể là một mảng.
Ví dụ
:
Sub ByteCopy (old () As Byte, New () As Byte)
New = old
End Sub
Cách này cũng chỉ áp dụng được cho mảng khai báo động.
- Mảng là kết quả trả về của hàm. Chẳng hạn như:
Public Function ArrayFunction (b As Byte) As Byte()
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 21
Dim x(2) As Byte
x(0) = b
x(1) = b + 2
x(2) = b + b
ArrayFunction = x
End Function
II.4.5 Khai báo, tạo và làm việc với biến đối tượng.
Khai báo và tạo biến đối tượng phải dùng thêm từ khóa New
Dim <tên_đối_tượng> as New <Tên_Lớp>

Phép gán đối tượng được thực hiện với từ khóa Set
Set <tên_đối_tượng> = <giá trị>
- Chú ý rằng nếu thực hiện khai báo một biến đối tượng như thông thường (không có từ
khóa New) thì biến thực sự chưa được tạo ra. Trong trường hợp ấy, sau đó phải có thao tác
tạo đối tượng với các từ khóa Set và New.
Dim <tên_đối_tượng > as <tên_lớp>
Set <tên_đối_tượng > = New <tên_lớp>
- Các phép toán, các toán tử có được áp dụng cho đối tượng hay không tùy thuộc vào lớp
tạo ra nó.
- Làm việc với một biến đối tượng tức là làm việc với các thuộc tính, phương thức và các
sự kiện của nó.
Để truy cập tới các thuộc tính và phương thức của đối tượng, sử dụng toán tử (.)
<Tên_đối_tượng>.<Tên_thuộc_tính>
<Tên_đối_tượng >.<Tên_phương_thức>(Các tham số)
Sẽ cụ thể hơn trong các chương sau.
II.4.6 Các chú ý khi khai báo
- Có thể khai báo nhiều biến cùng lúc:
Dim passw As String, yourName As String, firstnum As Integer,
- Nếu kiểu dữ liệu không được định nghĩa, VB sẽ tự động khai báo là kiểu Variant.
- Dữ liệu kiểu chuỗi (String) có hai cách khai báo, ngoài cách thông thường, có thể khai
báo độ dài của giá trị.
Dim VariableName as String * n
trong đó n là số lượng ký tự mà biến có thể lưu trữ.
Ví dụ:
Dim yourName as String * 10
yourName sẽ không giữ lớn hơn 10 ký tự.
II.5 BIỂU THỨC
II.5.1 Các khái niệm
- Toán tử hay phép toán (Operator): là từ hay ký hiệu nhằm thực hiện phép tính và xử lý
dữ liệu.

- Toán hạng: là giá trị dữ liệu (biến, hằng…).
- Biểu thức: là tập hợp các toán hạng và các toán tử kết hợp lại với nhau theo quy tắc nhất
định để tính toán ra một giá trị nào đó.
II.5.2 Các loại phép toán
Các phép toán số học:
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường 22
Thao tác trên các giá trị có kiểu dữ liệu số.
Toán tử Mô tả
^
Lũy thừa
*
Nhân
/
Chia
\
Chia lấy phần nguyên
Mod Chia lấy dư
+
Cộng
-
Trừ
Các phép toán quan hệ:
Đây là các phép toán mà giá trị trả về của chúng là một giá trị kiểu Boolean (TRUE
hay FALSE).

Phép toán Ý nghĩa
=
So sánh bằng nhau
<> So sánh khác nhau

> So sánh lớn hơn
< So sánh nhỏ hơn
>= So sánh lớn hơn hoặc bằng
<= So sánh nhỏ hơn hoặc bằng

Các phép toán logic:
Là các phép toán tác động trên kiểu Boolean và cho kết quả là kiểu Boolean. Các
phép toán này bao gồm AND (và), OR (hoặc), NOT (phủ định). Sau đây là bảng giá
trị của các phép toán:
Toán tử Mô tả
Not
Not TRUE = FALSE; Not FALSE = TRUE
And
TRUE And TRUE = TRUE; FALSE And FALSE = FALSE
Các trường hợp khác cho kết quả FALSE
Or
FALSE Or FALSE = FALSE;
Các trường hợp khác cho kết quả TRUE
Xor
A Xor B: A hoặc B nhưng không phải cả hai.
Eqv
A Eqv B; So sánh tương đương. Giống nhau cho giá trị True
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường Page 1


Một số hàm toán học thông dụng

Các hàm toán học có thể tra cứu trong Object Browser (thư viện Math)
Abs (x): Hàm giá trị tuyệt đối

Exp (x): Hàm mũ cơ số tự nhiên e
x

Log (x): Logarit cơ số tự nhiên
Sqr (x): lấy bình phương
Các hàm lượng giác: Cos (x), Sin (x), Tan (x)
Hàm lượng giác ngược: Atn (x) Arctg.
Fix (x): Hàm lấy phần nguyên chẵn. Ví dụ Fix (5.1) = 5; Fix (5.6) = 5
Int (x): Hàm lấy phần nguyên làm tròn.
Round (x, num) làm tròn số thực x đến (num) chữ số thập phân.


Question for today! Khai báo biến cho bài toán:
Nhập danh sách tập hợp các lỗ khoan. Mỗi lỗ khoan gồm các thông số (idLoKhoan, ToaDoX,
ToaDoY, ChieuSau, SoLopDat, NguoiKhoan)
Tổng số có 30 lỗ khoan, 3 người khoan. Yêu cầu tổng hợp xem mỗi người khoan bao nhiêu
lỗ, là những lỗ nào.
II.6 CÁC CÂU LỆNH
Một câu lệnh (statement) xác định một công việc mà chương trình phải thực hiện để xử lý
dữ liệu đã được mô tả và khai báo. Các câu lệnh được ngăn cách với nhau bởi ký tự xuống
dòng.
II.6.1 Lệnh gán
Cú pháp:
<Tên biến> = <Biểu thức>
Ví dụ:

Giả sử ta có khai báo sau:
Dim TodayTemp As Single, MinAge As Integer
Dim Sales As Single, NewSales As Single, FullName As String
Các lệnh sau gán giá trị cho các biến trên:

MinAge = 18
Sales = 200000
NewSales = Sales * 1.2
Giả sử người dùng cần nhập họ và tên vào ô nhập liệu TextBox có thuộc tính Name
là txtName, câu lệnh dưới đây sẽ lưu giá trị của ô nhập liệu vào trong biến
FullName:
FullName = txtName.Text
Lưu ý: Kiểu dữ liệu của biểu thức (vế phải của lệnh gán) phải phù hợp với biến ta
cần gán trị.
II.6.2 Lệnh rẽ nhánh If
Từ khóa: If, Then, Else, End If
Dạng 1
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường Page 2

Sơ đồ khối

Cú pháp
Một dòng lệnh:
If <điều kiện> Then <dòng lệnh>
Nhiều dòng lệnh:
If <điều kiện> Then
Các dòng lệnh
End If
Dạng 2
Sơ đồ khối

Cú pháp
If <điều kiện 1> Then
[Khối lệnh 1]

ElseIf <điều kiện 2> Then
[Khối lệnh 2]
[Else
[Khối lệnh n]]
True
False
Điều kiện
IF
Khối lệnh
THEN
END IF
True False
Điều kiện
IF
Khối lệnh
ELSE
Khối lệnh
THEN
END IF
Bài giảng Tin học Xây dựng
Bộ môn Tự động hóa Thiết kế Cầu đường Page 3

End If
VB sẽ kiểm tra các điều kiện, nếu điều kiện nào đúng thì khối lệnh tương ứng sẽ được thi
hành. Ngược lại nếu không có điều kiện nào đúng thì khối lệnh sau từ khóa Else sẽ được
thi hành.
Ví dụ:
If (TheColorYouLike = vbRed) Then
MsgBox "You are a lucky person"
ElseIf (TheColorYouLike = vbGreen) Then

MsgBox "You are a hopeful person"
ElseIf (TheColorYouLike = vbBlue) Then
MsgBox "You are a brave person"
ElseIf (TheColorYouLike = vbMagenta) Then
MsgBox "You are a sad person"
Else
MsgBox "You are an average person"
End If
II.6.2 Câu lệnh lựa chọn Select Case
Trong trường hợp có quá nhiều các điều kiện cần phải kiểm tra, nếu ta dùng cấu trúc rẽ
nhánh If…Then thì đoạn lệnh không được rõ ràng, khó kiểm tra, sửa đổi khi có sai sót.
Ngược lại với cấu trúc Select…Case, biểu thức điều kiện sẽ được tính toán một lần vào
đầu cấu trúc, sau đó VB sẽ so sánh kết quả với từng trường hợp (Case). Nếu bằng nó thi
hành khối lệnh trong trường hợp (Case) đó.
Các từ khóa: Select Case, Case, End Select
Sơ đồ khối

Cú pháp
Select Case <biểu thức kiểm tra>
Case <Danh sách kết quả biểu thức 1>
[Khối lệnh 1]
Case <Danh sách kết quả biểu thức 2>
[Khối lệnh 2]

[Case Else
[Khối lệnh n]]
End Select
V
ế trái
Vế phải 1 Khối lệnh 1

Vế phải 1 Khối lệnh 1

Vế phải n Khối lệnh n

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×