Tài liệu Bài giảng Tin học đại cương - Buổi 2: Một số khái niệm cơ sở: 1
Môn học Tin đại cương
Lý Anh Tuấn
Bộ môn Khoa học máy tính, Khoa Công nghệ
thông tin, Trường đại học Thủy Lợi
2
Buổi 2: Một số khái niệm cơ sở
Khái niệm thuật toán
Biểu diễn thuật toán
Thiết lập môi trường soạn thảo và chạy
chương trình C++
Sơ đồ quá trình lập trình
Các thành phần cơ bản của C++
3
Khái niệm thuật toán
Thuật toán (algorithm): là một danh sách
các chỉ thị, khi được thi hành sẽ biến đổi
thông tin đầu vào thành thông tin đầu ra
Đầu vào (input): là dữ liệu được cung cấp cho
thuật toán để thuật toán thực hiện chức năng của
nó
Đầu ra (output): là dữ liệu mà thuật toán đưa ra
môi trường bên ngoài
4
Khái niệm thuật toán
Ví dụ: thuật toán để giải phương trình bậc
nhất P(x): ax + b = c (a, b, c là các số
thực) có thể gồm các bước sau đây:
1. Nếu a = 0
Nếu b = c thì P(x) có nghiệm bất kì
Nếu b ≠ c thì P(x) vô nghiệm
2. Nếu a ≠ 0
P(x) có duy nhất một nghiệm x = (c - b)/a
5
Tính chất của thu...
30 trang |
Chia sẻ: honghanh66 | Lượt xem: 1087 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Bài giảng Tin học đại cương - Buổi 2: Một số khái niệm cơ sở, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
1
Môn học Tin đại cương
Lý Anh Tuấn
Bộ môn Khoa học máy tính, Khoa Công nghệ
thông tin, Trường đại học Thủy Lợi
2
Buổi 2: Một số khái niệm cơ sở
Khái niệm thuật toán
Biểu diễn thuật toán
Thiết lập môi trường soạn thảo và chạy
chương trình C++
Sơ đồ quá trình lập trình
Các thành phần cơ bản của C++
3
Khái niệm thuật toán
Thuật toán (algorithm): là một danh sách
các chỉ thị, khi được thi hành sẽ biến đổi
thông tin đầu vào thành thông tin đầu ra
Đầu vào (input): là dữ liệu được cung cấp cho
thuật toán để thuật toán thực hiện chức năng của
nó
Đầu ra (output): là dữ liệu mà thuật toán đưa ra
môi trường bên ngoài
4
Khái niệm thuật toán
Ví dụ: thuật toán để giải phương trình bậc
nhất P(x): ax + b = c (a, b, c là các số
thực) có thể gồm các bước sau đây:
1. Nếu a = 0
Nếu b = c thì P(x) có nghiệm bất kì
Nếu b ≠ c thì P(x) vô nghiệm
2. Nếu a ≠ 0
P(x) có duy nhất một nghiệm x = (c - b)/a
5
Tính chất của thuật toán
Tính chính xác: để đảm bảo kết quả tính toán hay các thao
tác mà máy tính thực hiện được là chính xác.
Tính rõ ràng: Thuật toán phải được thể hiện bằng các câu
lệnh minh bạch; các câu lệnh được sắp xếp theo thứ tự nhất
định.
Tính khách quan: Một thuật toán dù được viết bởi nhiều
người trên nhiều máy tính vẫn phải cho kết quả như nhau.
Tính phổ dụng: Thuật toán không chỉ áp dụng cho một bài
toán nhất định mà có thể áp dụng cho một lớp các bài toán có
đầu vào tương tự nhau.
Tính kết thúc: Thuật toán phải gồm một số hữu hạn các bước
tính toán.
6
Biểu diễn thuật toán
Có hai cách chính để biểu diễn thuật toán
bằng ngôn ngữ:
Ngôn ngữ của con người (mã giả)
Ưu điểm: diễn đạt dễ dàng và tự nhiên
Nhược điểm: lỏng lẻo, khó chính xác
Ngôn ngữ lập trình
Qui định cấu trúc và ngữ nghĩa một cách chặt chẽ
Thuật toán được diễn đạt bằng ngôn ngữ lập trình hoặc
ngôn ngữ máy gọi là chương trình
7
Các ví dụ về mã giả
Thuật toán: Tính bình phương của một số
1.Nhập giá trị cho x
2.Tính giá trị x*x và gán cho s
3.Trả về giá trị s
Thuật toán: Tăng lương hiện tại lên 5%
1.Nhập giá trị cho lương_cũ
2.Tính giá trị lương_cũ*1.05 và gán cho
lương_mới
3.Trả về giá trị lương_mới
8
Các ví dụ về mã giả
Thuật toán: Nhân hai số không âm
(Giả sử ngôn ngữ lập trình không định nghĩa phép nhân)
1. Nhập giá trị cho hai số nhân m và n.
2. Đặt tích = 0.
3. Đặt đếm = 0.
4. WHILE đếm < m,
5. Đặt tích bằng tích cộng n.
6. Tăng giá trị của đếm lên 1.
7. END WHILE
8. Trả về tích
9
Bài tập
Sử dụng mã giả để biểu diễn thuật toán giải
các bài toán sau:
1,Cho 2 số nguyên a, b bất kỳ. Tìm thương của hai
số nếu b khác 0, trong trường hợp b=0 kết luận
không tồn tại thương
2,Biết a, b là độ dài hai cạnh hình chữ nhật, tính chu
vi và diện tích của hình chữ nhật
3,Cho ba hệ số a, b, c giải và biện luận phương trình
bậc hai ax2 + bx + c =0
10
Thiết lập môi trường C++
Tải phần mềm miễn phí TextPad và Borland C++
Builder Compiler 5.5 tại:
hoặc:
https://sites.google.com/a/wru.vn/tindaicuong/
Các file được tải về có thể là txpeng510.exe và
freecommandLinetools.exe
Tiến hành cài đặt các file này trên máy tính
11
Thiết lập môi trường C++
- Chạy chương trình TextPad
- Mở hộp thoai Preferences trong thực đơn Configure
12
Thiết lập môi trường C++
- Chọn mục Tools trong cây danh mục bên trái
- Kích vào nút Add, rồi chọn Program để thêm vào hai mục mới là Bcc32
và Run c++ (Lưu ý: để thêm được 2 mục này cần tạo trước 2 tệp có tên
như vậy, sau đó lần lượt lựa chọn để thêm chúng vào)
- Kích vào nút Apply để xác nhận
13
Thiết lập môi trường C++
Trong mục Tools, chọn mục Bcc32 và thiết lập các tham số như sau:
- Command: C:\Borland\BCC55\Bin\bcc32.exe
- Parameters: -P -LC:\Borland\BCC55\Lib -IC:\Borland\BCC55\Include -n$FileDir $File
- Initial Folder: C:\Borland\BCC55\Bin
14
Thiết lập môi trường C++
Trong mục Tools, chọn mục Run c++ và thiết lập các tham số như sau:
- Command: $BaseName.exe
- Parameters: $File
- Initial Folder: $FileDir
Lưu ý: Không chọn các tùy chọn Capture output và Run Minimized
15
Thiết lập môi trường C++
- Lưu và đặt tên cho ví dụ
- Ấn Ctrl + 1 để biên dịch, ấn Ctrl + 2 để chạy
- Soạn thảo ví dụ đơn giản sau trong Textpad
16
Sơ đồ quá trình lập trình
17
Các thành phần cơ bản cuả C++
Tập kí tự của C++
Từ khóa
Tên (định danh)
Cấu trúc một chương trình C++
Kiểu dữ liệu
Biến
Hằng
Các toán tử
Biểu thức
Câu lệnh
Một số hàm toán học
18
Tập ký tự của C++
Các chữ cái la tinh: a .. z và A .. Z
Dấu gạch dưới: _
Các chữ số thập phân: 0, 1, . ., 9
Các ký hiệu toán học: +, -, *, /, % , &, ||, !,
>, <, = ...
Các ký hiệu đặc biệt khác: . , ; : [] {} # $,
dấu cách, ...
19
Từ khóa
Từ khoá là từ được qui định trước trong NNLT, mỗi
từ có một ý nghĩa nhất định
Thường dùng để chỉ các loại dữ liệu hoặc kết hợp
thành câu lệnh
Một số từ khóa thường gặp: auto, break, case, char,
continue, default, do, double, else, externe, float, for,
goto, if, int, long, register, return, short, sizeof,
static, struct, switch, typedef, union, unsigned, while
...
20
Tên (định danh)
Tên đúng là một dãy liên tiếp các chữ cái, chữ số và
dấu gạch dưới (không chứa dấu cách)
Phải bắt đầu bằng chữ cái hoặc dấu gạch dưới
Không được trùng với từ khóa
Chiều dài của tên không bị giới hạn
Phân biệt chữ hoa và chữ thường
Ví dụ:
Các tên đúng: i, i1, j, delta, PT_Bac_2
Các tên sai: Bai tap, 3abc, case
Các tên sau đây là khác nhau: ha_noi, Ha_noi, HA_NOI
21
Cấu trúc một chương trình C++
//chuong trinh C++ dau tien
#include
using namespace std;
int main( )
{
cout << "Xin chao";
return 0;
}
//chuong trinh C++ dau tien tất cả các dòng bắt đầu
bằng // được xem là các dòng chú thích và không ảnh hưởng
đến việc thực hiện của chương trình
#include đảm bảo rằng chương trình có thể sử
dụng các định nghĩa trong thư viện vào ra chuẩn
22
Cấu trúc một chương trình C++
using namespace std; khai báo sử dụng không gian tên
std, định danh cout được định nghĩa trong không gian tên này
int main() điểm bắt đầu quá trình thực hiện của các chương
trình C++, tất cả các chương trình C++ đều có một hàm main
cout << "Xin chao"; đây là một câu lệnh C++, làm nhiệm
vụ in ra dòng chữ Xin chao
return 0; Kết thúc hàm main, trả về giá trị 0 cho hệ điều
hành
Các câu lệnh trong C++ phải kết thúc bằng dấu chấm phẩy
23
Kiểu dữ liệu
24
Biến
Biến là một phần của bộ nhớ được dành để lưu trữ
một giá trị xác định
Giá trị của biến có thể thay đổi trong quá trình làm
việc
Cách khai báo biến:
kiểu_dữ_liệu tên_biến;
Ví dụ
int a;
double mynumber;
25
Làm việc với biến
26
Khởi tạo giá trị cho biến
27
Hằng
Hằng là một giá trị cố định nào đó
Hằng thông thường được sử dụng để gán trị cho biến
hoặc để biểu diễn thông điệp chúng ta muốn in ra
Ví dụ:
Hằng nguyên: 1776, 707, -273
Hằng thực: 3.14159, 6.02e23, 1.6e-19
Hằng kí tự và xâu kí tự: 'z', 'p', “Xin chao“
Hằng logic: true, false
28
Một số hằng kí tự đặc biệt
29
Khai báo hằng
Đôi khi sẽ thuận lợi hơn nếu ta đặt tên cho một hằng
được sử dụng nhiều lần trong chương trình
Cách khai báo hằng:
#define tên_hằng giá_trị_hằng
hoặc:
const kiểu_dữ_liệu tên_hằng = giá_trị_hằng ;
Ví dụ:
#define PI 3.14159265
#define NEWLINE '\n‘
const int sosv = 50 ;
30
Khai báo và sử dụng hằng
Các file đính kèm theo tài liệu này:
- bai2_7736.pdf