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

Kỹ thuật lập trình - Đỗ Tuấn Anh pptx

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

Kỹ thuật lập trình
Giảng viên: Đỗ Tuấn Anh
Địa chỉ:Bộ môn Khoa học Máy tính
323 C1 ĐHBK Hà Nội
Email:
Điện thoại: 0989095167
Mục tiêu
•Nắm bắt được các loại
ngôn ngữ lập trình
•Kỹ thuật lập trình đệ qui
•Tìm hiểu lập trình cấu
trúc
•Tìm hiểu lập trình hướng
đối tượng
•Tìm hiểu các thao tác vào
ra
Nội dung trình bày
•Chương 1: Mở đầu
–Giới thiệu về ngôn ngữ lập trình
– Ngôn ngữ lập trình C
•Chương 2: Đệ qui
•Chương 3: Lập trình cấu trúc
•Chương 4: Lập trình hướng đối tượng
•Chương 5: Thao tác vào ra với tệp tin
Tài liệu tham khảo
• [1] Data Structures and
Algorithm Analysis in C
– Mark Allen Weiss
• [2] Cấu trúc dữ liệu và giải
thuật
– Đỗ Auân Lôi


• [3] Ngôn ngữ lập trình C
– Nguyễn Thanh Thủy
• [4] Lập trình với các cấu
trúc dữ liệu trên Pascal
– Lê Minh Trung
Chương 1: Mở đầu
•Giới thiệu ngôn ngữ lập trình
1. Lịch sử phát triển
2. Các mô hình ngôn ngữ lập trình
1. Lịch sử phát triển ngôn ngữ lập trình
• Ngôn ngữ máy
•Hợp ngữ (Assembly)
• Ngôn ngữ bậc cao
– Fortran, Pascal, C, Java, …
–Prolog
–Lisp
– Occam
• Ngôn ngữ truy vấn
–SQL
2. Phân loại
• Ngôn ngư lập trình được phân loại
theo phương thức lập trình
Phương thức lập trình
Mệnh lệnh Khai báo
Thủ tục
Hướng đối
tượng
Aử lý
song song
Logic Hàm CSDL

2. Phân loại (tiếp)
•Mệnh lệnh
–Thủ tục: Fortran (1957), Pascal (1970),
C(1971), …
– Đối tượng: Smalltalk (1969), C++(1983),
Java(1991), C#(2000),…
– Song song: Ada, Occam(1982), C-Linda
• Khai báo
– Hàm: Lisp(1958), Caml(1987),
Miranda(1982)
– Logic: Prolog(1970)
– CSDL: SQL(1980)
2. Phân loại (tiếp)
• Đặc điểm của ngôn ngữ mệnh lệnh
–Diễn đạt thuật toán sử dụng tập các trạng thái.
–Aử lý lần lượt
– Khai báo dữ liệu
–Kiểu dữ liệu cơ bản, và kiểu dữ liệu mới
–Hai kiểu dữ liệu có cùng tên thì tương đương
– Thay đổi trạng thái thông qua lệnh gán
–Cấu trúc điều khiển là tuần tự
–Chương trình con: hàm, thủ tục với truyền tham số
–Hiệu ứng phụ khi sử dụng chương trình con
–Bốn mức: Khối, CT con, module, chương trình
• Đặc điểm của ngôn ngữ khai báo
–Sử dụng các hàm suy luận
– Đánh giá một biểu thức
2.1 Lập trình cấu trúc
•Chương trình được tổ chức theo các
công việc cần thực hiện, phân chia

chương trình theo chức năng.
• Đặc điểm
–Gồm các chương trình con
–Thực hiện tuần tự
–Các kiểu dữ liệu xây dựng dựa trên kiểu
dữ liệu cơ bản
• Ngôn ngữ
– C, Pascal, …
2.2 Lập trình hướng đối tượng
•Aây dựng dựa trên nền tảng khái niệm
lập trình có cấu trúc
• Phân chia bài toán thành các đối
tượng và bài toán đi giải quyết mối
quan hệ giữa các đối tượng
• Các khái niệm
–Class
•Method
• Properties
– Object
3. Ngôn ngữ lập trình C
•Trong môn học này dùng C để mô tả
các bài toán
•Yêu cầu:
–Nắm chắc ngôn ngữ C
–Cài đặt các bài toán cơ bản trên ngôn ngữ
C
–Bài tập: Viết một chương trình
• Đọc dữ liệu từ file văn bản VB.TAT
•Liệt kê các từ có trong văn bản và đếm xem
có bao nhiêu lần từ đóxuất hiện và xem nó

hiển thịởtrang bao nhiêu (mỗi trang 25
dòng)
Khái niệm
Software
Program 2
Program 1
Commands Commands Commands
Ngôn ng
Ngôn ng


c
c


p trung
p trung
Ngôn ngữ cấpcao
Ngôn ngữ hợpngữ
C
Đ
Đ


c đi
c đi


m c
m c



a C
a C
• C có 32 từ khóa
•Những từ khóa này kết hợp với cú
pháp của C hình thành ngôn ngữ C
• Các quy tắc được áp dụng cho các
chương trình C
C
C


u tr
u tr
ú
ú
c chương tr
c chương tr
ì
ì
nh C
nh C
main()
•Chương trình C được chia nhỏ thành
những đơn vị gọi là hàm
• Không kể có bao nhiêu hàm trong
chương trình, Hệ điều hành luôn trao
quyền điều khiển cho hàm main() khi
một chương trình C được thực thi.

• Theo sau tên hàm là dấu ngoặc đơn
•Dấu ngoặc đơn có thể có chứa hay
không chứa những tham số
C
C


u tr
u tr
ú
ú
c chương tr
c chương tr
ì
ì
nh C
nh C
• Dấu phân cách {…}
• Dấu kết thúc câu lệnh
…;
• /*Dòng chú thích*/
Biên d
Biên d


ch v
ch v
à
à
thi h

thi h
à
à
nh chương tr
nh chương tr
ì
ì
nh
nh
Biến
Dữ liệu
Bộ nhớ
Mỗivị trí trong bộ nhớ là duy nhất
Biến cho phép cung cấpmột tên có ý nghĩachomỗivị trí nhớ
15
Dữ liệu
trong bộ
nhớ
15
Định danh
•Tên của các biến (variables), các hàm (functions), các
nhãn (labels) và các đối tượng khác nhau do người dùng
định nghĩa gọi là định danh
•Vídụ về các định danh đúng
– arena
– s_count
– marks40
– class_one
•Vídụ về các định danh sai
– 1sttest

– oh!god
– start end
• Các định danh có thể có bất cứ chiều dài nào theo quy
ước, nhưng số ký tự trong một biến được nhận diện bởi
trình biên dịch thì thay đổi theo trình biên dịch
• Các định danh trong C có phân biệt chữ hoa và chữ
thường
Các nguyên tắc đặt tên định danh
Tên biếnphảibắt đầubằng mộtkýtự alphabet
Nên tránh đặttênbiếntrùngtêncáctừ khoá
Theo sau ký tự đầucóthể là các ký tự chữ, số …
Tên biến nên mô tả đượcý nghĩacủanó
Tránh dùng các ký tự gây lầmlẫn
Nên áp dụng các quy ước đặttênbiếnchuẩn khi
lậptrình
Kiểu dữ liệu cơ bản
void
char
double
Kiểudữ liệucơ bản
float
int
Những kiểu dữ liệu dẫn xuất
int
short
short int
(chiếmítbộ nhớ hơnint)
Kiểudữ liệudẫnxuất
Kiểudữ liệu
cơ bản

Bộ bổ từ (Modifiers)
kiểudữ liệu
int
unsigned int
(chỉ là số dương)
unsigned
int/double
Long int /longdouble
(chiếm nhiềubộ nhớ hơn
int/double)
long
Kiểu dữ liệu & phạm vi giá trị
Kiểu Dung lượng
tính bằng bit
Phạmvi
char 8 -128 tới127
Unsigned char 8 0 tới255
signed char 8 -128 tới127
int 16 -32,768 tới 32,767
unsigned int 16 0 tới 65,535
signed int 16 Giống như kiểuint
short int 16 Giống như kiểuint
unsigned short int 16 0 tới 65, 535
Bi
Bi


u th
u th



c (Expressions)
c (Expressions)
Sự kếthợp các toán tử và các toán hạng
Toán hạng
Toán Tử
Ví dụ: 2 * y + 5

×