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

Bài giảng tin học đại cương đh hàng hải

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 (884.75 KB, 68 trang )


BỘ GIAO THÔNG VẬN TẢI
TRƢỜNG ĐẠI HỌC HÀNG HẢI
BỘ MÔN: TIN HỌC ĐẠI CƢƠNG
KHOA:CÔNG NGHỆ THÔNG TIN








BÀI GIẢNG
TIN HỌC ĐẠI CƢƠNG

























HẢI PHÒNG – 2011


TÊN HỌC PHẦN : TIN HỌC ĐẠI CƢƠNG
MÃ HỌC PHẦN : 17101
TRÌNH ĐỘ ĐÀO TẠO : ĐẠI HỌC CHÍNH QUY
DÙNG CHO SV NGÀNH : TẤT CẢ CÁC NGÀNH

Bài giảng Tin học Đại cương
_2_


MỤC LỤC

STT
NỘI DUNG
TRANG
CHƢƠNG I
NHẬP MÔN TIN HỌC ĐẠI CƢƠNG

1.1
Một vài nét về tin học và máy tính

4
1.2
Thông tin và xử lý thông tin
4
1.3
Thành phần của máy tính
4
1.4
Các hệ đếm
5
1.5
Phân loại máy tính
9
1.6
Các bộ phận chính của máy tính PC
10
CHƢƠNG II
TỔNG QUAN VỀ LẬP TRÌNH

2.1
Vấn đề giải quyết bài toán bằng máy tính
12
2.2
Một số ví dụ
13
CHƢƠNG III
NGÔN NGỮ LẬP TRÌNH VISUAL BASIC

3.1
Khởi động Visual Basic

20
3.2
Thoát khỏi Visual Basic
20
3.3
Tạo, mở và lƣu một dự án (Project)
20
3.4
Các bƣớc xây dựng chƣơng trình
21
3.5
Một số đối tƣợng cơ bản trong Visual Basic
23
3.6
Một số ví dụ về thiết kế giao diện và lập bảng thuôc tính
29
3.7
Các kiểu dữ liệu cơ bản
30
CHƢƠNG IV
KHAI BÁO HẰNG BIẾN BIỂU THỨC CÂU LỆNH

4.1
Các hằng trong Visual Basic
36
4.2
Biến
36
4.3
Biểu thức

37
4.4
Quy định về viết dòng lệnh trong Visual Basic
37
4.5
Cách viết dòng chú thích trong chƣơng trình
37
4.6
Câu lệnh gán
37
4.7
Câu lệnh End
38
4.8
Lệnh in dữ liệu
38
Bài giảng Tin học Đại cương
_3_

4.9
Lệnh nhập dữ liệu
39
4.10
Chuyển đổi kiểu dữ liệu trong quá trình tính giá trị biểu
thức
40
4.11
Cấu trúc điều kiện
41
4.12

Câu lệnh lựa chọn Select
43
4.13
Cấu trúc lặp
45
4.14
Một số ví dụ
48
CHƢƠNG V
HÀM VÀ THỦ TỤC

5.1
Khái niệm chƣơng trình con
51
5.2
Hàm và thủ tục
51
5.3
Truyền tham số cho chƣơng trình con
53
5.4
Biến toàn cục, biến địa phƣơng, khái niệm tầm tác dụng
56
CHƢƠNG VI
DỮ LIỆU CÓ CẤU TRÚC, KIỂU MẢNG

6.1
Khái niệm về mảng
59
6.2

Khai báo mảng tĩnh
59
6.3
Khai báo mảng động (Dynamic Array)
61
6.4
Một số thuật toán về mảng
62
Bài giảng Tin học Đại cương
_4_

CHƢƠNG 1
NHẬP MÔN TIN HỌC ĐẠI CƢƠNG
1.1. Một vài nét về tin học và máy tính
Có rất nhiều khái niệm về Tin học, song có thể hiểu Tin học là ngành khoa học nghiên
cứu các quá trình có tính chất thuật toán nhằm mô tả và biến đổi thông tin. Các quá trình này
đƣợc nghiên cứu một cách hệ thống về mọi phƣơng diện: Lý thuyết phân tích, thiết kế, tính
hiệu quả, việc cài đặt và các ứng dụng.
1.2. Thông tin và xử lý thông tin
1.2.1. Thông tin và dữ liệu
Thông tin (Information): Những hiện tƣợng sự vật phản ánh về một sự kiện, một vấn
đề nào đó trong thế giới khách quan. Dựa vào đó con ngƣời có thể hiểu biết và nhận thức
đƣợc thế giới khách quan. Thông tin có thể ghi lại và truyền đi.
Dữ liệu (Data): Là dạng thông tin khi đƣợc lƣu trữ.
1.2.2. Đơn vị đo thông tin
Đơn vị đo thông tin là bit. Đây chính là tin về hệ thống chỉ có hai trạng thái đồng
khả năng: bằng 0 hoặc bằng 1 (Điều này rất phù hợp với các máy tính điện tử bởi trong
một thời điểm, mạch điện chỉ có một trong hai trạng thái đóng hoặc mở tƣơng ứng với
hai giá trị 1 hoặc 0).
Đơn vị đo thông tin bao gồm: Bit, Byte, KiloByte, MegaByte, GigaByte.

Qui đổi giữa các đơn vị nhƣ sau:
Byte (B): 1 Byte = 8 bit (b)
KiloByte (KB): 1 KB = 1024 Byte
MegaByte (MB): 1 MB = 1024 KB
GigaByte (GB): 1 GB = 1024 MB
Trong đó: b là viết tắt của bit
B là viết tắt của Byte
1.3. Thành phần của máy tính
1.3.1. Phần cứng (Hardware)
Là các thành phần vật lý cấu tạo nên máy tính. Các thành phần vật lý ở đây bao gồm
các thiết bị điện tử và cơ khí.
Ví dụ: về các phần cứng máy tính nhƣ màn hình, bàn phím, chuột, bộ vi xử lý…
1.3.2. Phần mềm (SoftWare)
Bài giảng Tin học Đại cương
_5_

Là tập hợp các chỉ thị cho máy tính làm việc. Nói cách khác, toàn bộ các chƣơng trình
chạy trên máy tính gọi là phần mềm máy tính. Sự ra đời của phần mềm khiến cho hiệu quả
sử dụng phần cứng đƣợc nâng cao, rất nhiều công việc của con ngƣời đƣợc tự động hoá, vận
hành nhanh chóng.
Ví dụ: Phần mềm soạn thảo văn bản, bảng tính, trình diễn, đồ hoạ…
1.4. Các hệ đếm
1.4.1. Hệ đếm thập phân (Decimal)
Hệ thập phân là hệ đếm dựa vào vị trí với cơ số 10. Hệ này dùng các số từ 0 đến 9
để biểu diễn. Giá trị của hệ thập phân đƣợc đánh giá bằng vị trí các con số.
Cách viết: 127 hoặc (127)
10

Khai triển một số hệ 10:
(123.78)

10
= 1 x 10
2
+ 2 x 10
1
+ 3 x 10
0
+7 x 10
-1
+ 8 x 10
-2

1.4.2. Hệ đếm nhị phân (Binary)
Hệ nhị phân hay hệ đếm cơ số 2 chỉ có hai con số 0 và 1. Đó là hệ đếm theo vị trí.
Giá trị của một số bất kỳ nào đó phụ thuộc vào vị trí của nó. Các vị trí có trọng số. Các vị
trí của trọng số bằng bậc luỹ thừa của cơ số 2.
Chấm cơ số đƣợc gọi là chấm nhị phân trong hệ đếm cơ số 2. Mỗi một con số nhị
phân đƣợc gọi là một bit (Binary digit). Bit ngoài cùng bên trái là bít có trọng số lớn
nhất(MSB) và bit ngoài cùng bên phải là bit có trọng số nhỏ nhất (LSB) nhƣ dƣới đây:

2
3

2
2

2
1

2

0


2
-1

2
-2


MSB
1
0
1
0

1
1
LSB
Cách viết: (1011)
2

1.4.3. Hệ thập lục phân (HEXADECIMAL)
Các máy tính hiện đại thƣờng dùng hệ đếm khác là hệ thập lục phân. Hệ thập lục
phân là hệ đếm dựa vào vị trí với cơ số 16.
Hệ này dùng 10 chữ số từ 0 đến 9 và 6 ký tự từ A đến F để biểu diễn.
Hệ này thƣờng dùng để viết gọn các số hệ nhị phân
Hệ này đƣợc biểu diễn nhƣ trong bảng sau:
Thập lục
phân

Thập phân
Nhị phân
0
1
2
0
1
2
0000
0001
0010
Bài giảng Tin học Đại cương
_6_

3
4
5
6
7
8
9
A
B
C
D
E
F
3
4
5

6
7
8
9
10
11
12
13
14
15
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Cách viết : (2BC)
H

1.4.4. Chuyển đổi giữa các hệ đếm
* Chuyển từ hệ nhị phân sang hệ mƣời
Muốn đổi từ hệ nhị phân sang hệ mƣời chỉ cần tính các giá trị 2
i

tƣơng ứng với các
chữ số khác không thứ i của hệ số nhị phân rồi cộng lại :(vị trí i tính từ phải qua trái)
Ví dụ1: Ta muốn đổi một số hệ nhị phân (101001)
2
sang hệ mƣời, tiến hành nhƣ sau:
(101001)
2
= 1 x 2
5
+ 0 x 2
4
+ 1 x 2
3
+ 0 x 2
2
+ 0 x 2
1
+ 1 x 2
0

= 32 + 0 + 8 + 0 + 0 + 1 = (41)
10

Kết quả ta đƣợc số 41 ở hệ 10
Ví dụ 2: Ta muốn đổi một số hệ nhị phân (101.001)
2
sang hệ mƣời, tiến hành nhƣ sau:
(101.001)
2
= 1 x 2

2
+ 0 x 2
1
+ 1 x 2
0
+ 0 x 2
-1
+ 0 x 2
-2
+ 1 x 2
-3

= 4 + 0 + 2 + 0 + 0 + 0.125= (6.125)
10

Chú ý: Trong các ví dụ trên quá trình biến đổi có thể đơn giản hoá bằng cách loại bỏ
các con số không.
*Chuyển từ hệ thập phân sang hệ nhị phân:
Lấy phần nguyên của số cần đổi chia cho 2 và ghi nhớ phần dƣ, tiếp theo lấy thƣơng
của phép chia trƣớc đó chia cho 2 và ghi nhớ phần dƣ. Cứ làm nhƣ vậy cho đến khi
thƣơng bằng 0 thì dừng lại và viết phần dƣ ngƣợc từ dƣới lên trên. Lấy phần lẻ thập phân
của số cần đổi nhân với 2, tích nhận đƣợc gồm phần nguyên và phần lẻ nhị phân, lấy
phần lẻ nhị phân của tích thu đƣợc nhân với 2. Cứ làm nhƣ vậy cho đến khi không còn
Bài giảng Tin học Đại cương
_7_

phần lẻ thập phân hoặc đến một độ chính xác nhất định nào đó thì dừng lại. Viết phần
nguyên từ trên xuống dƣới. Sau đó ghép kết quả của chúng lại với nhau.
Ví dụ 1: Đổi số (41)
10

từ hệ 10 sang hệ nhị phân:








Sau khi chia đến thƣơng bằng 0 và viết ngƣợc phần dƣ từ dƣới lên trên ta đƣợc số
(101001)
2
ở nhị phân.
Ví dụ 2: Biến đổi số thập phân (41.625)
10
thành số nhị phân:
Trƣớc hết biến đổi phần nguyên thành số nhị phân theo ví dụ 1 đƣợc số (101001)
2

Sau đó biến đổi phần lẻ thành số nhị phân bằng cách:Lấy số cần đổi nhân với 2, tích
nhận đƣợc gồm phần nguyên và phần lẻ nhị phân, lấy phần lẻ nhị phân của tích thu đƣợc
nhân với 2. Cứ làm nhƣ vậy cho đến khi đƣợc tích chẵn bằng 1. Chọn riêng các phần
nguyên (phần trƣớc dấu phẩy) của các tích thu đƣợc và sắp xếp lại sẽ đƣợc các chữ số sau
dấu phẩy cần tìm.



phần lẻ (0.625)
10
đƣợc chuyển thành (101)

2
hệ 2
Vậy số (41.625)
10
ở hệ 10 sang hệ nhị phân là (101001.101)
2

*Chuyển từ hệ thập lục phân sang hệ thập phân:
Các số thập lục phân có thể đƣợc biến đổi thành thập phân bằng cách tính tổng của
các con số nhân với giá trị vị trí của nó.
Ví dụ1: Đổi số (5B)
16
thành số thập phân
(5B)
16
= 5 x 16
1
+ B x 16
0

= 5 x 16
1
+ 11 x 16
0

= 80 + 11 = (91)
10

Kết quả là số (91)
10

hệ 10
41 2
1 20 2
0 10 2
0 5 2
1 2 2
0 1 2
1 0


0.625 x 2 = 1.250
1.250 x 2 = 0.500
0.5 x 2 = 1.000
Bài giảng Tin học Đại cương
_8_

Ví dụ 2: Đổi số (2AF)
16
thành số thập phân
(2AF)
16
= 2 x 16
2
+ A x 16
1
+ F x 16
0

= 2 x 16
2

+ 10 x 16
1
+ 15 x 16
0

= 2 x 256 + 10 x 16 + 15 x 1
= 512 + 160 + 15 = (687)
10

Kết quả là số (687)
10
hệ 10
*Chuyển từ hệ thập phân sang hệ thập lục phân:
Lấy số thập phân cần đổi chia cho 16 và ghi nhớ phần dƣ, tiếp theo lấy thƣơng của
phép chia trƣớc đó chia cho 16 và ghi nhớ phần dƣ. Cứ làm nhƣ vậy cho đến khi thƣơng
bằng 0 thì dừng lại và viết phần dƣ ngƣợc từ dƣới lên trên.
Ví dụ: Đổi số (93)
10
thành hệ thập lục phân:

Thƣơng số
+
số dƣ
16
93

= 5
+
13 tƣơng ứng là D
16

5

= 0
+
5
Vậy kết quả là số (93)
10
đổi thành số (5D)
16
hệ thập lục phân
*Chuyển từ hệ thập lục phân sang hệ nhị phân:
Thực chất các số thập lục phân cũng chỉ là cách biểu diễn các số nhị phân thuận lợi
hơn. Muốn đổi từ số thập lục phân sang số hệ nhị phân ta chỉ cần thay thế từ con số thập
lục phân bằng 4 bit nhị phân tƣơng ứng:
Ví dụ: Đổi số (C5)
16
thành hệ nhị phân
C 5

1100 0101
Kết quả số (C5)16 thành số (11000101)
2

*Chuyển từ hệ nhị phân sang hệ thập lục phân:
Để biến đổi một số nhị phân thành số thập lục phân tƣơng đƣơng chỉ cần nhóm 4 bít
tính từ phải qua trái sau đó chuyển từng nhóm 4 bit thành hệ thập lục phân và ghép lại
với nhau sẽ đƣợc số hệ thập lục phân.
Ví dụ: Đổi số (01011111)
2
thành số thập lục phân

0101 1111

5 F
Kết quả số (01011111)
2
thành số (5F)
16

Bài giảng Tin học Đại cương
_9_

1.5. Phân loại máy tính
Theo góc độ ngƣời sử dụng thì máy tính đƣợc phân làm bốn loại sau:
* Máy tính lớn (Mainframe)
Máy tính lớn là máy có công suất cao, tốc độ xử lý nhanh và rất lớn thƣờng đóng
vai trò trong các hệ tin học phân tán có qui mô lớn.
Các máy tính lớn là các cỗ máy kích thƣớc lớn, mạnh và rất đắt tiền, đƣợc sử dụng
trong hầu hết các cơ quan, tổ chức lớn (ví dụ nhƣ các ngân hàng, các cơ quan trọng yếu
của Chính phủ, các công ty đa quốc gia…).
Cần chú ý phân biệt máy tính lớn với máy tính cá nhân có kích thƣớc lớn.
* Máy tính PC (Personal Computer-PC)
Máy tính điện tử có nguồn gốc ra đời từ khá sớm và có rất nhiều chủng loại. Tuy
nhiên chiếc máy tính PC theo mô hình của IBM đầu tiên đƣợc ra đời vào năm 1981. Từ
đó trở đi, tất cả các máy tính PC đƣợc sản xuất, qua nhiều lần mở rộng đều tƣơng thích
với thiết kế ban đầu. Thuật ngữ máy tính tƣơng thích liên quan đến các máy tính đƣợc
sản xuất bởi các công ty khác không phải IBM nhƣng vẫn tƣơng thích với các đặc điểm
kỹ thuật truyền thống.






* Máy Mac(Apple MAC)
Máy Mac là một máy tính, nhƣng không phải là một máy PC theo mô hình IBM.
Máy Mac là dòng máy tính do hãng Apple sản xuất và chạy Hệ điều hành Macintosh của
Apple có giao diện đồ hoạ GUI và tƣơng thích với nó là các phiên bản đặc biệt của các
chƣơng trình ứng dụng ( nhƣ bộ xử lý văn bản và
các bảng tính). Thậm chí để có thể kết nối với một
Mac, ngƣời ta cần phải lựa chọn thêm các thiết bị
phần cứng mở rộng.
Thời kỳ đầu, điều giúp cho việc phân biệt máy
Mac và PC chính là việc MAC sử dụng giao diện
đồ hoạ cho ngƣời dùng (GUI – Graphic User
Interface ), hay nói cách khác, chính là cách mà ta
có thể dùng chuột để điều khiển máy tính. Khi PC mới xuất hiện, ngƣời dùng phải là một
nhà chuyên môn mới có thể sử dụng đƣợc chiếc PC đó. Tuy nhiên, gần đây sự khác biệt

IBM – PC
Tƣơng thích
IBM – PC
(1981)
Bài giảng Tin học Đại cương
_10_

cơ bản giữa máy MAC và máy PC đã không còn rõ rệt nhƣ trƣớc, nhất là khi Microsoft
đã sử dụng Graphic User Interface nhƣ là công cụ trợ giúp ngƣời dùng máy tính PC.
(Chú ý: Ý tƣởng sử dụng các giao diện đồ hoạ và tƣơng tác ngƣời – máy thông qua
thao tác chuột là do Apple đề xuất, không phải do Microsoft)
* Máy tính xách tay (Laptop)
Laptop, tiếng Anh có nghĩa là đặt trong lòng, phân

biệt với máy tính đặt trên mặt bàn là desktop. Ở Việt
Nam, ta hay gọi Laptop là máy tính xách tay bởi đây là
một loại máy tính nhỏ có thể mang đi theo, có thể chạy
bằng pin. Ngoài ra, ngƣời ta còn sử dụng tên gọi
“Notebooks” (quyển vở/quyển sổ) để chỉ các máy tính
xách tay có kích thƣớc nhỏ hơn.
Cả hai dòng máy tính PC và MAC đều có những sản phẩm máy tính xách tay cho
ngƣời dùng của mình. Do đặc điểm nhỏ gọn và năng lực xử lý khá tốt nên máy tính xách
tay rất đƣợc ƣa chuộng, đặc biệt là những ngƣời hay phải di chuyển hoặc phải thuyết
trình trƣớc đám đông. Những ngƣời thƣờng xuyên sử dụng máy tính xách tay có thể kể
đến những ngƣời làm công tác kinh doanh ( chuyên đi thuyết trình sản phẩm), những
ngƣời làm trong ngành giáo dục (giảng bài bằng máy tính xách tay kết nối máy chiếu)…
Chú ý: Thực chất máy tính xách tay cũng là dòng máy PC hay máy Mac là dòng
máy PC nhƣng do hãng Apple sản xuất.
1.6. Các bộ phận chính của máy tính PC
1.6.1. Sơ đồ các khối chức năng và bộ phận chính trong máy tính
Về cơ bản, thành phần chính của một máy tính bao gồm các khối nhƣ: Khối thiết bị
vào/ Khối xử lý/ Khối thiết bị ra/ Khối thiết bị lƣu trữ.










THIẾT BỊ VÀO
Bàn phím, chuột…

KHỐI XỬ LÝ (CPU)
+ Khối điều khiển (CU)
+ Khối tính toán số học
+ Các thanh ghi


THIẾT BỊ RA
Màn hình, máy in, loa

CÁC THIẾT BỊ LƢU TRỮ
Các thiết bị lƣu trữ trong Các thiết bị lƣu trữ ngoài
+ ROM: Bộ nhớ chỉ đọc + Đĩa mềm
+ RAM: Bộ nhớ truy cập ngẫu nhiên + Đĩa cứng
+ Đĩa CD, DVD + USB
Bài giảng Tin học Đại cương
_11_

1.6.2. Khối xử lý trung tâm (Central Processing Unit – CPU)
Khối xử lý trung tâm, hay còn gọi là một bộ vi xử lý hoặc con chip, là bộ não của
máy tính. Công việc chính của khối xử lý trung tâm là tính toán và điều khiển mọi hoạt
động trong máy tính.






1.6.3. Bộ nhớ trong (Internal Memory)
Bộ nhớ trong máy tính dùng để chứa các lệnh và dữ liệu phục vụ cho quá trình thực
hiện các chƣơng trình.

Bộ nhớ ROM (Read Only Memory): Dữ liệu đƣợc đƣa vào từ nhà sản xuất, thông tin
trong ROM sẽ không bị mất khi tắt máy. Bộ nhớ ROM không thể nâng cấp hoặc thay thế.
Bộ nhớ RAM (Radom Access Memory): Là nơi lƣu trữ tạm thời dữ liệu của ngƣời sử
dụng trong quá trình xử lý. Dữ liệu trên RAM sẽ bị mất khi tắt máy. Bộ nhớ Ram có thể đƣợc
nâng cấp hoặc thay thế.
1.6.4. Bộ nhớ ngoài (External Memory)
Bộ nhớ ngoài hay các thiết bị lƣu trữ ngoài bao gồm đĩa cứng, đĩa mềm, đĩa CD,
DVD, đĩa Zip…
1.6.5. Các thiết bị vào (Input device)
Các thiết bị vào cho phép thông tin hay dữ liệu đƣợc nhập vào máy tính, ví dụ nhƣ
bàn phím, chuột, máy quét…
1.6.6. Các thiết bị ra(Output device)
Các thiết bị ra cho phép thông tin có thể đƣợc xuất ra từ máy tính, ví dụ nhƣ máy in,
màn hình, loa…
1.6.7. Các thiết bị ngoại vi (Peripheral device)
Thiết bị ngoại vi là thiết bị mà nó có thể gắn/cắm vào máy tính. Nhƣ vậy toàn bộ các
thiết bị nhƣ máy quét, máy in, bàn phím, chuột, loa… đều là các thiết bị ngoại vi.





Bài giảng Tin học Đại cương
_12_

CHƢƠNG 2
TỔNG QUAN VỀ LẬP TRÌNH
2.1. Vấn đề giải quyết bài toán bằng máy tính
2.1.1. Lập trình (Programming)
Lập trình dùng để chỉ thao tác của con ngƣời nhằm kiến tạo, xây dựng một kịch bản

bằng các thuật toán để giải quyết một bài toán Tin học trên máy tính thông qua các ngôn
ngữ lập trình.
2.1.2. Ngôn ngữ lập trình (Programming language)
Ngôn ngữ lập trình là một tập con của ngôn ngữ máy tính. Đây là một dạng ngôn
ngữ đƣợc chuẩn hóa (đối lập với ngôn ngữ tự nhiên). Nó là một hệ thống đƣợc ký hiệu
hóa để miêu tả những tính toán (qua máy tính) trong một dạng mà cả con ngƣời và máy
đều có thể đọc và hiểu. Ngôn ngữ lập trình cũng chính là một chƣơng trình, nhƣng có thể
đƣợc dùng để tạo nên các chƣơng trình khác. Một chƣơng trình máy tính đƣợc viết bằng
một ngôn ngữ lập trình thì những chỉ thị (của riêng ngôn ngữ ấy) góp phần tạo nên
chƣơng trình đƣợc gọi là mã nguồn của chƣơng trình ấy.
2.1.3. Bài toánTin học
Bài toán tin học không dùng để chỉ một bài toán cụ thể, mà dùng để chỉ một lớp các
bài toán cụ thể thuộc cùng một loại. Một bài toán tin học đƣợc cấu tạo bởi hai yếu tố sau:
+ Thông tin đầu vào(Input): Là những thông tin bài toán đã cho
+ Thông tin đầu ra (Output): Là các thông tin cần tìm hoặc câu trả lời cần thiết.
Ví dụ: Giải bài toán tính diện tích tam giác bằng công thức s=a*h/2
+ Thông tin đầu vào: Là cạnh đáy a và đƣờng cao h
+ Thông tin đầu ra: Là diện tích tam giác S hoặc dòng thông báo dữ liệu không hợp lệ.
2.1.4. Thuật toán
Thuật toán là tập hợp hữu hạn các bƣớc, các phép toán cơ bản nhất đƣợc sắp xếp
theo một trình tự nhất định để từ thông tin đầu vào của bài toán sau một tập hữu hạn các
bƣớc đó sẽ đạt đƣợc kết quả ở đầu ra nhƣ mong muốn.
Ví dụ: Trở lại bài toán tính diện tích tam giác, thuật toán nhƣ sau:
+ Bƣớc 1: Cho giá trị của cạnh đáy a và đƣờng cao h
+ Bƣớc 2: Kiểm tra
- Nếu a>0 và h>0 thì tính diện tích theo công thức s=a*h/2 sau đó xuống bƣớc 3.
- Ngƣợc lại thông báo dữ liệu không hợp lệ và quay về bƣớc 1
+ Bƣớc 3: In diện tích S
Bài giảng Tin học Đại cương
_13_


2.1.5. Biểu diễn thuật toán qua sơ đồ khối (A.Flow Chart)
Biểu diễn thuật toán: Là sơ đồ dùng các ký hiệu và các đƣờng nối với nhau để diễn tả
các quan hệ logic và trình tự thực hiện các phép toán của một chƣơng trình máy tính.
Để thể hiện trực quan về thuật toán ngƣời ta dùng sơ đồ khối. Qua sơ đồ khối ngƣời
lập trình có thể quan sát các bƣớc của thuật toán cũng nhƣ dòng thông tin hình thành và
biến đổi trong quá trình thuật toán làm việc.
Việc thể hiện thuật toán ngƣời ta qui ƣớc dùng các khối sau để thể hiện.









-Thể hiện sự bắt đầu và kết thúc chƣơng trình

- Thể hiện việc nhập, xuất dữ liệu

- Chứa các công thức tính toán
- Chứa các biểu thức kiểm tra điều kiện và rẽ nhánh
chƣơng trình

- Gọi chƣơng trình con
- Chỉ ra hƣớng đi của thuật toán và kết nối giữa các
hình
2.2. Một số ví dụ
Ví dụ 1:

Lập thuật toán và vẽ sơ đồ thuật toán để giải và biện luận phƣơng trình ax +b =0
Bài giải:
Xây dựng thuật toán:
- Dữ liệu đầu vào là giá trị hai số a và b (trong lập trình thƣờng gọi tắt là
nhập giá trị a và b)
- Kiểm tra điều kiện của a:
Nếu a = 0 thì
+ Nếu b=0 thì
Phƣơng trình vô số nghiệm
Ngƣợc lại
Phƣơng trình vô nghiệm
Ngƣợc lại
Phƣơng trình có nghiệm x=-b/a
Bài giảng Tin học Đại cương
_14_


Sơ đồ thuật toán:















Ví dụ 2:
Cho ba số bất kỳ a,b,c hãy tìm giá trị lớn nhất trong ba số này
Bài giải:
Xây dựng thuật toán:
- Nhập giá trị cho ba biến a,b,c
- Coi một trong ba số là số lớn nhất (giả sử số a) đƣa giá trị của a vào một biến
max
Mô tả trên đƣợc viết nhƣ sau max=a
- Kiểm tra giá trị của biến max với từng số còn lại
Nếu max <b thì max=b
Nếu max<c thì max=c
- In giá trị lớn nhất trong max ra màn hình

Sơ đồ thuật toán:

Bắt đầu
(BEGIN)
Nhập a,b
a=0
b=0
PT VSN
PT Vô nghiệm
PT có nghiệm x=-b/a
Kết thúc
(END)
Đ
S
Đ

S
Bài giảng Tin học Đại cương
_15_

















Ví dụ 3: Hãy tính Tổng S=1+1/2+1/3+…….+1/(n-1)+1/n với n là một số tự nhiên.
Bài giải:
Xây dựng thuật toán:
Bƣớc 1: Nhập giá trị cho n
Bƣớc 2: Kiểm tra giá trị của n>0
+ Nếu sai: Trở về bƣớc 1
+ Nếu đúng: Chuyển sang bƣớc 3
Bƣớc 3: Cho S=0
Khởi tạo biến chạy i và cho i=1
Bƣớc 4: Kiểm tra điều kiện của i

- Nếu i<=n thì:
+ Tính S=S+1/i
+ Tăng i: i=i+1
+ Quạy trở về đầu bƣớc 4
S
BEGIN
Nhập a,b,c
Max=a
Max<b
Max=b
Đ
Max=c
S
Max<c
Đ
In max
END
Bài giảng Tin học Đại cương
_16_

- Nếu i>n: Chuyển sang bƣớc 5
Bƣớc 5: In giá trị của S
Sơ đồ thuật toán:
















Ví dụ 4:
Nhập vào một dãy số nguyên gồm n phần tử. Sau đó tính trung bình cộng các số chia
hết cho 3.
Phân tích bài toán:
Dữ liệu đầu vào:
- Số phần tử của dãy n (n là số nguyên dƣơng)
- Dãy số có n phần tử bất kỳ
Dữ liệu đầu ra: - Trung bình cộng của các số chia hết cho 3
Để tính đƣợc trung bình cộng ta cần phải tính Tổng và số lƣợng các số chia hết cho 3.
Theo dữ liệu đầu vào của bài toán ta có thể giải quyết theo hai hƣớng sau:

BEGIN
Nhập n
n>0
S S
Đ
S=0
i=1
i<=n
S=S+1/i
i=i+1
Đ

In S
END
S
Bài giảng Tin học Đại cương
_17_

Hƣớng 1:Lƣu trữ dãy số bằng một ô nhớ
Hƣớng 2:Lƣu trữ dãy số bằng n ô nhớ
Bƣớc 1: - Xác định số phần tử của dãy,
nhập giá trị cho n.
Bƣớc 2:
- Kiểm tra điều kiện n
+ Nếu n<=0: Quay về bƣớc 1
+ Nếu n>0 : Chuyển sang bƣớc 3
Bƣớc 3:
Để tính TBC trƣớc hết ta phải tính:
+Tổng các số thoả mãn, gọi tổng đó là T,
khởi tạo giá trị ban đầu T=0
+ Số lƣợng các phần tử thoả mãn, gọi là
d, khởi tạo giá trị ban đầu d=0
- Khởi tạo biến chạy i=1 (coi nhƣ khi
i=1 ta tiến hành nhập giá trị cho phần tử
thứ nhất)
Bƣớc 4:
Kiểm tra điều kiện của i.
- Nếu i<=n
+ Nhập giá trị cho a
+ Kiểm tra: Nếu a chia hết cho 3
thì
T=T+a

d=d+1
+ Tăng biến i lên một đơn vị:
i=i+1
+ Quay về bƣớc 4
- Nếu i>n: Chuyển sang bƣớc 5
Bƣớc 5:
- Sau khi tính đƣợc T và d ta cần kiểm
tra lại d vì có thể xảy ra trƣờng hợp
trong n phần tử không có phần tử nào
chia hết cho 3 (tƣơng ứng với d=0) thì
không thể tính đƣợc TBC.
- Nếu d=0 thì
Dãy số không có phần tử thoả mãn
Bƣớc 1: - Xác định số phần tử của dãy,
nhập giá trị cho n.
Bƣớc 2:
- Kiểm tra điều kiện n
+ Nếu n<=0: Quay về bƣớc 1
+ Nếu n>0 : Chuyển sang bƣớc 3
Bƣớc 3:
Để tính TBC trƣớc hết ta phải tính:
+Tổng các số thoả mãn, gọi tổng đó là T,
khởi tạo giá trị ban đầu T=0
+ Số lƣợng các phần tử thoả mãn, gọi là
d, khởi tạo giá trị ban đầu d=0
- Khởi tạo biến chạy i=1 (coi nhƣ khi
i=1 ta tiến hành nhập giá trị cho phần tử
thứ nhất)
Bƣớc 4:
„Nhập giá trị liền một lúc cho n phần

tử chứa vào n ô nhớ a
1
, a
2
…….a
n
Kiểm tra điều kiện của i.
- Nếu i<=n
+ Nhập giá trị cho phần tử a
i
+ Tăng biến ilên một đơn vị:
i=i+1
+ Quay về bƣớc 4
- Nếu i>n: Chuyển sang bƣớc 5
Bƣớc 5:
„ Tính toán TBC
- Khởi tạo biến chạy i=1
Bƣớc 6:
Kiểm tra điều kiện của i.
- Nếu i<=n
+ Kiểm tra: Nếu a chia hết cho 3 thì
T=T+a
d=d+1
+ Tăng biến i lên một đơn vị: i=i+1
Bài giảng Tin học Đại cương
_18_

điều kiện chia hết cho 3
ngƣợc lại
Tính trung bình cộng:TBC=T/d

In giá trị của TBC ra
Bƣớc 6: Kết thúc



+ Quay về bƣớc 6
- Nếu i>n: Chuyển sang bƣớc 7
Bƣớc 7:
- Sau khi tính đƣợc T và d ta cần kiểm
tra lại d vì có thể xảy ra trƣờng hợp
trong n phần tử không có phần tử nào
chia hết cho 3 (tƣơng ứng với d=0) thì
không thể tính đƣợc TBC.
- Nếu d=0 thì
Dãy số không có phần tử thoả mãn
điều kiện chia hết cho 3
ngƣợc lại
Tính trung bình cộng:TBC=T/d
In giá trị của TBC ra
Bƣớc 8: Kết thúc

Sơ đồ thuật toán theo hƣớng 1:












BEGIN
Nhập n
n>0
S

Đ
T=0
i=1
i<=n
T=T+a
D=d+1
i=i+1
Đ
END
S
d=0
a 3
S
Nhập a
Đ
d=0
S
Đ
không có số
Thoả Mãn
In T/d


Bài giảng Tin học Đại cương
_19_

Sơ đồ thuật toán theo hƣớng 2:






























BEGIN
Nhập n
n>0
S S
Đ
T=0
i=1
i<=n
i=i+1
S
d=0
Nhập a
i
Đ
i=1
i<=n
T=T+a
D=d+1
i=i+1
Đ
END
S
a
i
3
S
Đ

d=0
S
Đ
không có số
Thoả Mãn

In T/d
Bài giảng Tin học Đại cương
_20_


CHƢƠNG 3
NGÔN NGỮ LẬP TRÌNH VISUAL BASIC
3.1. Khởi động Visual Basic
Kích chuột vào nút Start\Programs\MiscoSoft Visual Studio 6.0\MicroSoft
Visual Basic 6.0
3.2. Thoát khỏi Visual Basic
Để thoát khỏi Visual Basic ta làm theo cách sau:
Vào menu File\Exit. Khi thoát khỏi Visual Basic nếu ta chƣa ghi lại chƣơng trình
và các thành phần liên quan đến chƣơng trình Visual Basic sẽ nhắc nhở chúng ta ghi lại.
3.3. Tạo, mở và lƣu một dự án (Project)
Bƣớc 1: Trên thƣ mục gốc của ổ đĩa C tạo thƣ mục có tên là VIDU
Lý do cần phải tạo riêng ra một thƣ mục cho chƣơng trình vì một chƣơng trình viết
bằng Visual Basic bao gồm nhiều thành phần nhƣ: Các màn hình giao diện (Form), các
đơn thể chƣơng trình (Modul), các báo cáo (Report) mỗi một thành phần sẽ đƣợc tạo
các file tƣơng ứng trên ổ đĩa; chính vì vậy để quản lý chƣơng trình cho tốt phong cách lập
trình tốt là hãy tạo riêng cho mỗi chƣơng trình một thƣ mục riêng.
Bƣớc 2: Khởi động VB khi đó hộp hội thoại New Project xuất hiện:











Trong hộp hội thoại này chọn tab New sau đó chọn loại Project muốn tạo, ở đây ta
sẽ chọn StandardEXE. Hai tab còn lại có ý nghĩa sau:
- Existing: Mở Project đã có
- Recent: Mở Project đã làm việc trong thời gian gần đây nhất.

Bài giảng Tin học Đại cương
_21_

Một cách khác để tạo dự án mới đó là trong menu File chọn mục New Project.
Sau khi tạo Project mới, Visual Basic sẽ hiện một cửa sổ trên màn hình. Đây là
Form trống với tiêu đề là Form1
Bƣớc 3: Lƣu Project
Một trong những vấn đề quan trọng khi viết chƣơng trình là lƣu lại những gì mình
đã làm. Mặc dù chƣa có thao tác gì thay đổi trên Form trống, ta cũng nên lƣu Form lên
đĩa. Khi ta lƣu Project, có 2 file đƣợc lƣu:
1. File chứa các thông tin Visual Basic cần trong việc xây dựng Project. Đây là file
quản lý toàn bộ các thành phần của dự án, file này có phần mở rộng là VBP
2. File chứa các thông tin về Form. File này có phần mở rộng là FRM.
Các bƣớc thực hiện lƣu Project nhƣ sau:
- Vào menu File chọn mục Save Project As
- Visual Basic hiện hộp hội thoại Save File As. Chọn thƣ mục C:\VIDU1 đổi tên
mặc định của Form trống từ Form1.Frm thành VIDU1.FRM.

Lưu ý: Không nên dùng tên mặc định mà Visual Basic đặt cho Form, ta nên đặt
tên form gần gũi với các chức năng của Form ta đang muốn xây dựng.
- Sau khi ghi Form, Visual Basic hiện tiếp hộp hội thoại Save Project As, file
Project có tên mặc định là Project1.Vbp. Ta chọn thƣ mục C:\VIDU1và đổi tên cho file
Project là VIDU1.VBP.
Lưu ý: Không nên dùng tên mặc định mà Visual Basic đặt cho Project, ta nên đặt
tên Project gần gũi với chương trình đang muốn xây dựng.
Nhƣ vậy hai file VIDU1.FRM và VIDU1.VBP đã đƣợc lƣu vào thƣ mục VIDU1
(lúc này Visual Basic sẽ phát sinh một file phụ là VIDU1.VBW)
3.4. Đối tƣợng và thuộc tính
3.4.1. Đối tƣợng
Trong Visual Basic đối tƣợng là tất cả những thành phần mà ta sử dụng để thiết kế
lên giao diện ngƣời sử dụng cho ứng dụng. đối tƣợng có thể là một biểu mẫu, một nút
lệnh, một hộp văn bản, một nhãn
Thuộc tính (Properties) :Thuộc tính của đối tƣợng là những đặc điểm của đối tƣợng
để mô tả đối tƣợng và phân biệt đối tƣợng này với đối tƣợng khác.Ví dụ đối tƣợng nút
lệnh có các thuộc tính nhƣ tên, kích thƣớc, vị trí, tiêu đề Mỗi đối tƣợng trong Visual
Basic đều có một tập hợp thuộc tính đã quy định trƣớc.
Mỗi đối tƣợng đều có thể thực hiện một số hành động hoặc cho phép thực hiện một
số hành động trên nó. Phƣơng thức của đối tƣợng là hành động mà đối tƣợng có thể thực
hiện đƣợc hoặc hành động đƣợc phép thực hiện trên nó. Mỗi đối tƣợng trong Visual
Bài giảng Tin học Đại cương
_22_

Basic đều có một tập hợp các phƣơng thức đã quy định trƣớc.Các phƣơng thức của đối
tƣợng đƣợc thực hiện nhờ các thủ tục biến cố, các hàm hoặc các modul độc lập.
Chú ý: Trong Visual Basic hai thuật ngữ đối tƣợng (object) và điều khiển (control)
thƣờng đƣợc sử dụng và có thể thay thế cho nhau nhƣng điều khiển chỉ là những đối
tƣợng đặt trong biểu mẫu.
3.4.2. Một số thuộc tính thƣờng dùng của các đối tƣợng

Thuộc tính Name (Tên)
Thuộc tính này xác định tên cho đối tƣợng. Tên này đƣợc dùng để truy nhập đối
tƣợng trong phần mã lệnh. Mỗi đối tƣợng đều có tên ngầm định do Visual Basic đặt cho.
Ví dụ: Biểu mẫu có tên ngầm định là Form1, nút lệnh có tên ngầm định là command1
Tên đối tƣợng đƣợc đặt theo qui tắc sau đây:
+ Tên có đội dài cực đại là 40 kí tự bao gồm chữ cái, chữ số và dấu gạch nối
+ Tên không đƣợc trùng với từ khoá
+ Tên phải bắt đầu bằng chữ cái và không có dấu cách. Tên có thể bao gồm cả chữ
hoa lẫn chữ thƣờng. Tên đối tƣợng phải gợi nhớ, ba kí tự đầu tiên của đối tƣợng đƣợc
gọi là tiền tố. Visual Basic qui ƣớc cho mỗi đối tƣợng một tiền tố xác định. Sử dụng tiền
tố của tên cho phép dễ dàng nhận ra loại đối tƣợng khi biết tên đối tƣợng. Dƣới đây là
bảng tiền tố của tên các loại đối tƣợng:
Tiền tố
Loại đối tƣợng
Frm
Biểu mẫu (Form)
Cmd
Nút lệnh (Command Button)
Lbl
Nhãn (Label)
Txt
Hộp văn bản (Textbox)
Chý ý: Quy định về tiền tố là không bắt buộc nhưng chúng ta nên tuân thủ theo
nguyên tắc này.
Thuộc tính Caption (Tiêu đề)
Thuộc tính Caption xác định tiêu đề cho đối tƣợng . Tiêu đề là một dãy kí tự bất kỳ
do ngƣời sử dụng xác định. Tiêu đề của đối tƣợng xuất hiện cùng với đối tƣợng trong
biểu mẫu. Tiêu đề của đối tƣợng cho phép ngƣời sử dụng nhận ra đối tƣợng trong màn
hình giao diện của chƣơng trình.
Thuộc tính Enabled (Khả ứng)

Thuộc tính này xác định khả năng đáp ứng các biến có tác động trong thời gian thực
hiện chƣơng trình của đối tƣợng. Thuộc tính này có hai giá trị
Bài giảng Tin học Đại cương
_23_

+ Nếu là True thì đối tƣợng có thể đáp ứng các biến cố tác động trong thời gian thực
hiện chƣơng trình.
+ Nếu là False thì đối tƣợng không có khả năng đó.
Thuộc tính Font ( Font chữ)
Thuộc tính này dùng để xác định Font cho đối tƣợng. Giá trị của thuộc tính này là
tên các Font chữ đang đƣợc sử dụng. Ta có thể gán cho thuộc tính này tên của Font chữ
bất kỳ hiện có trong máy tính với một kích thƣớc xác định.
Thuộc tính BackColor (mầu nền)
Xác định mầu nền của đối tƣợng. Thuộc tính này có thể nhận mầu bất kỳ trong hệ
thống mầu đang đƣợc sử dụng.
Thuộc tính ForeColor (Mầu chữ)
Xác định mầu chữ của đối tƣợng.Thuộc tính này có thể nhận mầu bất kỳ trong hệ
thống mầu đang đƣợc sử dụng.
Thuộc tính Visible (Thấy đƣợc)
Thuộc tính này xác định tính thấy của đối tƣợng. Thuộc tính này có hai giá tri:
+ Nếu là giá trị True thì đối tƣợng có thể nhìn thấy đƣợc trong thời gian thực hiện
chƣơng trình
+ Nếu là giá trị False thì đối tƣợng bị ẩn trong thời gian thực hiện chƣơng trình
Truy cập đến giá trị của điều khiển
Cú pháp chung để truy nhập đến giá trị của các điều khiển từ dòng lệnh nhƣ sau:
<tên điều khiển>.<tên thuộc tính>
Ví dụ: txtHovaten.Text = “Nguyễn Văn A”
optNam.Value = True
st = txtHovaten.Text
Tuy nhiên đối với các thuộc tính giá trị đƣợc sử dụng thƣờng xuyên nên Visual

Basic cho phép chúng ta dùng tên của điều khiển để truy nhập đến thuộc tính giá trị.
Ví dụ: Thay vì viết txtHovaten.Text = “Nguyễn Văn A” ta có thể viết txtHovaten =
“Nguyễn Văn A”
Ngoài các thuộc tính chung của các điều khiển nhƣ đã phân nhóm ở trên một
thuộc tính cũng rất hay đƣợc sử dụng đó là thuộc tính TabIndex. Thuộc tính này thiết lập
thứ tự quan tâm của các điều khiển khi ngƣời sử dụng ấn phím TAB trên bàn phím.
3.5. Một số đối tƣợng cơ bản trong Visual Basic
3.5.1. Biểu mẫu (Form)
Bài giảng Tin học Đại cương
_24_

Form còn gọi là biểu mẫu, là thành phần quan trọng nhất trong số tất cả các thành
phần giao diện. Tất cả các thành phần giao diện ngƣời dùng ứng dụng đều đƣợc đặt trong
Form. Khi ứng dụng chạy, nó mở ra một form. Sau khi Form đƣợc nạp vào bộ nhớ, tất cả
các thành phần hàm chứa trong nó sẽ hiển thị và có thể truy nhập. Chúng ta có thể xem
Form nhƣ một điều khiển đặc biệt.
Form trong Visual Basic đƣợc chia thành 02 loại: Form thƣờng và Form MDI
(Multi Document InterFace).
Xác định biểu mẫu khởi đầu cho dự án
Trong một chƣơng trình thông thƣờng sẽ có nhiều Form, câu hỏi đặt ra là chƣơng trình
khi chạy sẽ bắt đầu từ form nào? Tức là Form nào sẽ xuất hiện ra màn hình trƣớc tiên khi
chƣơng trình chạy. Để thực hiện việc xác định form khởi đầu của chƣơng trình chúng ta sẽ
thực hiện nhƣ sau: Trong menu Project chọn mục <tên Project> Properties (tên Project chính
là thuộc tính name của Project mà chúng ta đã đặt), khi đó màn hình (hình 16) sẽ xuất hiện.
Trong màn hình này chọn thẻ General trong danh sách thả xuống (combo box) Start up
Object chọn Form chúng ta muốn nó xuất hiện đầu tiên khi chƣơng trình chạy.











Xoá một biểu mẫu
Trong quá trình thiết kế chƣơng trình vì một lý do nào đấy mà ta muốn xoá một
biểu mẫu, ta tiến hành nhƣ sau:
- Chọn Project
- Chọn Remove tên biểu mẫu
Các thuộc tính của biểu mẫu
Biểu mẫu có đến 50 thuộc tính. Những thuộc tính cơ bản nhất và hay sử dụng đƣợc
cho trong bảng dƣới đây:

Bài giảng Tin học Đại cương
_25_

Thuộc tính
Ý nghĩa, tác dụng
Appearance
Xác định khi nào biểu mẫu có dạng ba chiều
BackColor
Xác định mầu nền của biểu mẫu
BorderStyle
Xác định kiểu đƣờng viền xung quanh biểu mẫu
Caption
Xác định tiêu đề cho biểu mẫu
Enabled
Xác định tính khả ứng của đối tƣợng cho trong biểu mẫu

Font
Xác định Font chữ cho biểu mẫu
ForeColor
Xác định mầu chữ của biểu mẫu
Height
Xác định chiều cao của biểu mẫu
Left
Xác định khoảng cách từ biên trái của màn hình đến biên trái của
biểu mẫu
MDIChild
Xác định biểu mẫu này có thuộc kiểu cha con không. Nếu thuộc
tính này là True thì biểu mẫu này là biểu mẫu MDI, tức là biểu
mẫu con trong biểu mẫu cha. Nếu thuộc tính này là False (ngầm
định) thì biểu mẫu này không phải là biểu mẫu MDI
Name
Xác định tên của biểu mẫu. Tên ngầm định của biểu mẫu là
Form1
Top
Xác định khoảng cách từ biên trên của màn hình đến biên trên
của biểu mẫu
Visible
Xác định tính thấy đƣợc của biểu mẫu
Width
Xác định chiều rộng của biểu mẫu

3.5.2. Nhãn (Label )
Khái niệm nhãn
Mục đích của điều khiển này là hiển thị một đoạn văn bản lên form thông qua
thuộc tính Caption. Label khác textbox ở chỗ nó không cho phép ngƣời sử dụng nhập
một đoạn văn bản vào nhƣ là textbox. Thông thƣờng Label bao giờ cũng đƣợc sử dụng

kết hợp với textbox với mục đích chú thích cho từng mục dữ liệu nằm trên Form.
Các thuộc tính cơ bản của nhãn
Nhãn có đến 30 thuộc tính. Những thuộc tính cơ bản nhất và hay sử dụng đƣợc cho trong
bảng dƣới đây:
Thuộc tính
Ý nghĩa, tác dụng

×