Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

CHƯƠNG 2: CẤU TRÚC ĐIỀU KHIỂN

2.1. Cấu trúc điều kiện if…else


2.2. Cấu trúc lựa chọn switch…case
2.3. Cấu trúc lặp
2.4. Lệnh rẽ nhánh và lệnh nhảy

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 1


Cấu trúc điều kiện if … else

• if (<cond-expression>) • if (<cond-expression 1>)


statement; statement;
• if (< cond-expression>) else if (<cond-expression 2>)
statement; statement;
else …
statement; else
statement;

Ví dụ 1: Viết chương trình nhập vào số tự nhiên, kiểm tra xem số đó


có chia hết cho 2 hay không ?

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering Cấu trúc điều kiện if…else 2
Cấu trúc lựa chọn switch … case

switch (expression)
{
case <value 1>: • Ví dụ 2: Viết chương trình
statements; nhập vào một số tự nhiên,
xuất ra màn hình tên của
break;
tháng trong năm.
case <value 2>:
statements; • Ví dụ 3: Viết chương trình
break; nhập vào một số tự nhiên,
… xuất ra màn hình số ngày
default: của tháng đó.
statements;
}

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering Cấu trúc lựa chọn switch … case 3
Vòng lặp for

for ( <init-expression>; <cond-expression>; <loop-expression>)


statements;

• Ví dụ 4: Viết chương trình in ra dòng chữ “Toi yeu Viet Nam”


10 lần.

• Ví dụ 5: Viết chương trình in ra 20 số tự nhiên đầu tiên.

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering Cấu trúc lặp 4


Vòng lặp while

• Ví dụ 6: Viết chương
trình in ra các số tự
nhiên chẵn trong khoảng
• while (<cond-expression>) từ 5 đến 1235
statements;
• Ví dụ 7: Viết chương
• do trình kiểm tra số tự nhiên
statements; chẵn lẻ, chương trình chỉ
while (<cond-expression>) kết thúc khi người dùng
nhập ký tự ‘n’ hoặc ‘N’
khi được hỏi có tiếp tục
hay không.

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering Cấu trúc lặp 5


break, continue, goto

• break: dùng để ngắt giữa chừng một vòng lặp mà không


cần kiểm tra điều kiện của vòng lặp
• continue: dùng để kết thúc lần lặp đang chạy và nhảy sang
lần lặp mới
• goto: nhảy tới vị trí của nhãn và chạy tiếp (hạn chế sử dụng
vì phá vỡ tính cấu trúc)

• Ví dụ 8:
for (x = 1; x <= 10; x++) {
if (x == 8) break;
cout << x; }
• Ví dụ 9:
for (x = 1; x <= 10; x++) {
if (x == 8) continue;
cout << x;}

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering Lệnh rẽ nhánh và lệnh nhảy 6
Bài tập

Bài 1: Giải phương trình bậc 1: 𝑎𝑥 + 𝑏 = 0 với a, b được nhập từ


bàn phím.
Bài 2: Giải phương trình bậc 2: 𝑎𝑥 2 + 𝑏𝑥 + 𝑐 = 0 với a, b, c được
nhập từ bàn phím.
Bài 3: Nhập 3 số từ bàn phím. In ra màn hình số lớn nhất.
Bài 4: Nhập 3 số từ bàn phím. In ra màn hình dãy số theo thứ tự
từ bé đến lớn, dùng tối đa hai biến phụ.
Bài 5: Nhập 3 số từ bàn phím. Kiểm tra xem đó có phải 3 cạnh
của một tam giác không, nếu có tính diện tích tam giác đó.

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 7


Bài tập

Bài 6: Viết chương trình tính tiền điện:


• Từ 0 đến 50kWh: 1.484 VND(/kWh)
• Từ trên 50 đến 100kWh: 1.533 VND (/kWh)
• Từ trên 100 đến 200 kWh: 1.786 VND (/kWh)
• Từ trên 200 đến 300 kWh: 2.242 VND (/kWh)
• Từ trên 300 đến 400 kWh: 2.503 VND (/kWh)
• Từ trên 400 kWh trở lên: 2.587 VND (/kWh)
Nhập số kWh đã dùng, xuất ra số tiền cần phải đóng.

Bài 7: Viết chương trình nhập vào một số nguyên có ba chữ số.
Hãy in ra cách đọc của nó

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 8


Bài tập

Bài 8: Nhập vào 2 số a, b. Nhập vào kí tự ‘+’, ‘-’, ‘*’, ‘/’. Thực hiện
tính toán theo kí tự nhập vào với hai số a, b.
Bài 9: Nhập vào tháng và năm. Xuất ra màn hình tháng đó có bao
nhiêu ngày (chú ý năm nhuận)
Bài 10: Viết chương trình quy đổi sáng điểm chữ dựa trên điểm
quá trình (hệ số 0.3) và điểm thi cuối kỳ (hệ số 0.7).
• A (8.5-9.0) • A+ (9.1-10)
• B (7.0 - 7.9) • B+ (8.0 - 8.4)
• C (5.5 - 6,4) • C+ (6.5 - 6.9)
• D (4.0 - 4.9) • D+ (5.0 - 5.4)
• F (dưới 4.0)
Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 9
Bài tập

Hình 1 Hình 2

Hình 3 Hình 4

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 10


Bài tập

Hình 5

Hình 6

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 11


Bài tập

Hình 7

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 12


Bài tập

Hình 8

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 13


Bài tập

Bài 11: Vẽ ra màn hình hình 1. Chú ý hình có n hàng và n cột với n
nhập từ bàn phím.
Bài 12: Tương tự bài 11, vẽ hình 2.
Bài 13: Tương tự bài 11, vẽ hình 3.
Bài 14: Tương tự bài 11, vẽ hình 4.
Bài 15: Tương tự bài 11, vẽ hình 5. Chú ý hình có n hàng, (2n-1) cột
Bài 16: Tương tự bài 15, vẽ hình 6.
Bài 17: Tương tự bài 11, vẽ hình 7. Chú ý hình có (2n+1) hàng,
(2n+1) cột (𝑛 ≥ 1).
Bài 18: Tương tự bài 17, vẽ hình 8.

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 14


Bài tập

Bài 19: In bảng cửu chương ra ngoài màn hình


Bài 20: In các chữ số từ 0->9, a->z, A->Z (sử dụng lệnh lặp)
Bài 21: Nhập n và tính tổng dãy số: 𝑆 = 1 + 2 + ⋯ + 𝑛
Bài 22: Nhập n và in ra dãy số Fibonacci. Phần tử thứ n của dãy:
𝑎𝑛 = 𝑎𝑛−1 + 𝑎𝑛−2 với n ≥ 2; 𝑎0 = 1; 𝑎1 = 1
Bài 23: Nhập n tính 𝑛!.
Bài 24: Vẽ tam giác Pascal.
Bài 25: Nhập n và kiểm tra xem nó có phải số nguyên tố hay không.
Lặp lại quá trình trên cho đến khi nào nhập ‘n’ hoặc ‘N’ khi
được hỏi có tiếp tục hay không.

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 15


Bài tập

Bài 26: Phép thế collatz trên số tự nhiên n quy định như sau:
• Nếu n chẵn, thay n bằng n/2
• Nếu n lẻ, thay n bằng 3n+1
Hãy nhập số n và in ra giá trị của nó sau khi áp dụng phép
thế collatz.
Bài 27: Nhập số n, in ra quá trình thế collatz liên tiếp trên n cho đến
khi nhận được số 1
Bài 28: Nhập số tự nhiên n và số thực x, tính giá trị biểu thức :
𝑆 = 𝑥 − 𝑥 2 + 𝑥 3 − ⋯ + −1 𝑛+1 𝑥 𝑛

Bài 29: Tương tự bài 28, tính: 𝑆 = −𝑥 2 + 𝑥 4 − ⋯ + −1 𝑛 𝑥 2𝑛

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 16


Bài tập

Bài 30: Tương tự bài 28, tính: 𝑆 = 𝑥 − 𝑥 3 + ⋯ + −1 𝑛 𝑥 2𝑛+1


Bài 31: Tương tự bài 28, tính:

1 1 𝑛+1
1
𝑆 =1− + − ⋯ + −1
1+2 1+2+3 1+2+⋯+𝑛
Bài 32: Tương tự bài 28, tính:

𝑥2 𝑥3 𝑛
𝑥 𝑛
𝑆 = −𝑥 + − + ⋯ + −1
1+2 1+2+3 1+2+⋯+𝑛
Bài 33: Tương tự bài 28, tính:

𝑥2 𝑥3 𝑛
𝑥 𝑛
𝑆 = −𝑥 + − + ⋯ + −1
2! 3! 𝑛!

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 17


Bài tập

Bài 34: Tương tự bài 28, tính:

𝑥2 𝑥4 𝑛+1
𝑥 2𝑛
𝑆 = −1 + − + ⋯ + −1
2! 4! 2𝑛 !
Bài 35: Tương tự bài 28, tính:

𝑥3 𝑥5 𝑛+1
𝑥 2𝑛+1
𝑆 = 1 − 𝑥 + − + ⋯ + −1
3! 5! 2𝑛 + 1 !

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 18


Bài tập

Bài 36: Viết chương trình giải bài toán sau:


Vừa gà vừa chó
Bó lại cho tròn
Ba mươi sáu con
Một trăm chân chẵn
Hỏi có bao nhiêu gà, chó?

Bài 37: Viết chương trình giải bài toán sau:


Trăm trâu,trăm cỏ
Trâu đứng ăn năm
Trâu nằm ăn ba
Lụ khụ trâu già
Ba con một bó
Hỏi có bao nhiêu con trâu đứng, trâu nằm, trâu già?
Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 19
Bài tập

Trên lớp: 2, 3
VN: 1, 4, 5

Buôi 2:
TL: 8, 9, 21, 23, 28
VN: 19, 20, 22, 29, 33, 35

Bộ môn Kỹ thuật Cơ điện tử | Department of Mechatronic Engineering 20

You might also like