You are on page 1of 36

Mô n Họ c

KỸ THUẬT LẬP TRÌNH VỚI PYTHON


WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1

CÁC BIỂU THỨC ĐIỀU KIỆN VÀ


VÒNG LẶP

Trang 2
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Mục tiêu bài học

- Hiểu và vậ n hà nh đượ c cá c cấ u trú c điều kiện: boolean, if, else, elif


- Nắ m đượ c biểu thứ c pass
- So sá nh đượ c số thự c trong Python
- Hiểu và vậ n hà nh đượ c cấ u trú c vò ng lặ p: while, for, while/else, for/else
- Hiểu và vận hành được biểu thức break, continue

Trang 3
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Nội dung bài học

- 3.1. Các cấu trúc điều kiện - 3.2. Các cấu trúc lặp

- 3.1.1. Biểu thức Boolean - 3.2.1. Vòng while

- 3.1.2. Biểu thức If - 3.2.2. Vòng for

- 3.1.3. Biểu thức if ... else - 3.2.3. câu lệnh break

- 3.1.4. Biểu thức If ... elif lồng nhau - 3.2.4. câu lệnh continue

- 3.1.5. Biểu thức pass - 3.2.5. Lệnh while/else

- 3.1.6. So sánh số thực trong Python - 3.2.6. Lệnh for/else

- 3.1.7. Sử dụng if/else như phép gán - 3.2.7. Vòng lặp lồng nhau

Trang 4
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Nội dung bài học

3.1. Các cấu trúc điều kiện


3.1.1. Biểu thức Boolean
3.1.2. Biểu thức If
3.1.3. Biểu thức if ... else
3.1.4. Biểu thức If ... elif lồng nhau
3.1.5. Biểu thức pass
3.1.6. So sánh số thực trong Python
3.1.7. Sử dụng if/else như phép gán

Trang 5
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.1. Biểu thức Boolean

Biểu thứ c Boolean (Boolean Expression) cò n đượ c gọ i là Predicate. Là mộ t


biểu thứ c rấ t quan trọ ng và phổ biến trong cá c lệnh củ a Python cũ ng như
ngô n ngữ lậ p trình khá c.
Cá c giá trị là True hoặ c False, dự a và o cá c giá trị này mà ta điều hướ ng
cá c cô ng việc trong phầ n mềm.

Trang 6
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.1. Biểu thức Boolean

Ví dụ :
a = True
b = False
print('a =', a, ' b =', b)
a = True b = False
# gá n lạ i kết qua cho a a = False b = False
a = False
print('a =', a, ' b =', b)

Trang 7
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.1. Biểu thức Boolean

Bả ng tổ ng quá t:
Biểu thức Ý nghĩa
x == y True nếu x=y, False nếu x khá c y
x<y True nếu x <y, False nếu x>=y
x <= y True nếu x<=y, False nếu x>y
x>y True nếu x>y, False nếu x<=y
x >= y True nếu x>=y, False nếu x<y
x != y True nếu x khá c y, False nếu x=y

Trang 8
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.1. Biểu thức Boolean

Ví dụ :
Biểu thức Ý nghĩa
10 < 20 True
10 >= 20 False
x < 100 True if x nhỏ hơn100; ngượ c lạ i False

Trang 9
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.2. Biểu thức If

Biểu thứ c if là mộ t biểu thứ c điều kiện rấ t


quan trọ ng và phổ biến trong Python. Biểu
thứ c if đứ ng mộ t mình chỉ quan tâ m tớ i điều
kiện đú ng (True). Khi điều kiện đú ng thì khố i
lệnh bên trong if sẽ đượ c thự c thi.
Cú pháp:

Trang 10
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.2. Biểu thức If

Ví dụ:

Lưu ý rằ ng Python khô ng dù ng ngoặ c nhọ n để bao bọ c cá c dò ng lệnh, mà


ta dù ng phím Tab hoặ c khoả ng trắ ng thụ t đầ u dò ng. Tui nghĩ ta nên dù ng
Tab cho nó lẹ.

Trang 11
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.3. Biểu thức if ... else

Biểu thứ c if…else là mộ t biểu thứ c điều kiện rấ t quan trọ ng và phổ biến
trong Python. Biểu thứ c này quan tâ m điều kiện đú ng(True) và sai(False).
Nó phổ biển hơn biểu thứ c if.
Cú pháp:

Trang 12
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.3. Biểu thức if ... else

Ví dụ:

Trang 13
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.4. Biểu thức If ... elif lồng nhau

Vớ i cá c điều kiện thứ c tạ p, Python cũ ng hỗ trợ kiểm tra điều kiện if elif
lồ ng nhau:

Trang 14
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.5. Biểu thức pass

Biểu thứ c pass khá lợ i hạ i, nó dù ng để dà nh chỗ lậ p trình. Ví dụ bạ n biết


chỗ đó phả i viết rấ t nhiều coding, nhưng tạ i thờ i điểm này chưa kịp là m.
Ta sẽ dù ng pass để đá nh dấ u vị trí đó .

Lỗi, Python không cho để trống như thế này

Trang 15
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.6. So sánh số thực trong Python

Khi ta thao tá c vớ i số thự c thì có mộ t chú t rắ c rố i ở chỗ Sai Số , nên ta cầ n


có mộ t ngưỡ ng Sai Số cho phép (tù y thuộ c và o quyết định củ a ngườ i dù ng)

Nếu mắ t thườ ng quan sá t ta tưở ng rằ ng


d1 bằ ng d2 vì lý do sau:
1.11-1.100.01
2.11-2.100.01
Nhưng thự c ra số thự c nó có sai số , nó
khô ng phả i 100% là 0.01

d1 = 0.010000000000000009 d2 = 0.009999999999999787
d1 và d2 khá c nhau

Trang 16
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.6. So sánh số thực trong Python

Do đó ta cho 1 cá i ngưỡ ng so sá nh theo sai số cho phép, ví dụ :

Trang 17
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.1.7. Sử dụng if/else như phép gán

Đô i khi việc thự c hiện if else trong mộ t biểu thứ c quá đơn giả n sẽ là m cho
if else phứ c tạ p khô ng cầ n thiết:

c = 113 if a != b else 115

Trang 18
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Nội dung bài học

3.2. Các cấu trúc lặp


3.2.1. Vòng while
3.2.2. Vòng for
3.2.3. câu lệnh break
3.2.4. câu lệnh continue
3.2.5. Lệnh while/else
3.2.6. Lệnh for/else
3.2.7. Vòng lặp lồng nhau

Trang 19
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.1. Vòng while

while dù ng để yêu cầ u 1 cô ng việc đượ c lặ p đi lặ p lạ i


Nếu condition là True thì block sẽ đượ c lặ p lạ i
Cú pháp:

-Có thể block sẽ khô ng đượ c thự c hiện lầ n nà o


nếu condition là False ngày từ đầ u
-Ta có thể kết thú c vò ng while bằ ng cá ch đưa condition
về False hoặ c dù ng từ khó a break để thoá t.

Trang 20
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.1. Vòng while

Ví dụ:
Viết chương trình yêu cầ u nhậ p và o mộ t số nguyên dương [1..10], nếu
nhậ p sai yêu cầ u nhậ p lạ i. Khi nhậ p đú ng thì xuấ t ra bình phương củ a giá
trị mớ i nhậ p và o.

Trang 21
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.1. Vòng while
Khởi tạo: s=0, i=1, n=5
1) i<=n 1 <=5True
s=s+i=0+1=1; i=i+1=1+1=2
2) i<=n  2 <=5 True
s=s+i=1+2=3; i=i+1=2+1=3
3) i<=n 3 <=5True
s=s+i=3+3=6; i=i+1=3+1=4
4) i <=n 4 <=5True
s=s+i=6 +4=10; i=i+1=4+1=5
5)i<=n 5<=5True
s=s+i=10+5=15; i=i+1=5+1=6
6) i<=n 6 <=5FalseDừng while
xuất tổng = 15
Trang 22
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.2. Vòng for

for dù ng để lặ p tuầ n tự cá c cô ng việc, for sử dụ ng range để định nghĩa


vù ng dữ liệu lặ p và bướ c lặ p
Cú pháp hàm range:
begin: Giá trị bắ t đầ u
end: Giá trị cuố i Ví dụ cá ch hoạ t độ ng củ a range:
• range(10)  0; 1; 2; 3; 4; 5; 6; 7; 8; 9
step: Bướ c nhảy • range(1, 10)  1; 2; 3; 4; 5; 6; 7; 8; 9
• range(1, 10, 2)  1; 3; 5; 7; 9
• range(10, 0, -1)  10; 9; 8; 7; 6; 5; 4; 3; 2; 1
• range(10, 0, -2)  10; 8; 6; 4; 2
• range(2, 11, 2)  2; 4; 6; 8; 10

Trang 23
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.2. Vòng for

Các Ví dụ về for:
for n in range(10): 0123456789
print(n,end=' ')
for n in range(1,10): 123456789
print(n,end=' ')
for n in range(1,10,2): 13579
print(n,end=' ')
for n in range(10,0,-1): 10 9 8 7 6 5 4 3 2 1
print(n,end=' ')
for n in range(10,0,-2): 10 8 6 4 2
print(n,end=' ')
for n in range(2,11,2): 2 4 6 8 10
print(n,end=' ')
Trang 24
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.2. Vòng for

N=8, s=0
N=8 là số chẵn n%2==0=8%2=0
1) x=2s=s+x=0+2=2
2) x=4s=s+x=2+4=6
3) X=6s=s+x=6+6=12
4) X=8s=s+x=12+8=20
5) X=10thấy 10>n+1=9

Trang 25
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.3. câu lệnh break

break là từ khó a đặ c biệt dù ng để thoá t khỏ i vò ng lặ p chứ a nó trự c tiếp khi


đạ t đượ c mứ c yêu cầ u nà o đó .
Gặ p lệnh break, chương trình sẽ khô ng thự c hiện bấ t cứ lệnh nà o bên dướ i
nó , mà thoá t luô n khỏ i vò ng lặ p.

Trang 26
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.3. câu lệnh break

Ví dụ: Viết chương trình vò ng lặ p vĩnh cử u cho phép phầ n mềm chạy liên
tụ c, khi nà o hỏ i thoá t mớ i thoá t phầ n mềm:

Trang 27
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.4. câu lệnh continue

continue là từ khó a đặ c biệt dù ng để nhảy sớ m tớ i lầ n lặ p kế tiếp, cá c lệnh


bên dướ i continue sẽ khô ng đượ c thự c thi. Lưu ý khá c vớ i break, gặ p
break thì ngừ ng luô n vò ng lặ p, gặ p continue chỉ dừ ng lầ n lặ p hiện tạ i đang
dở dang để chuyển qua lầ n lặ p tiếp theo.

Trang 28
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.4. câu lệnh continue

Ví dụ:
Tính tổ ng cá c chữ số lẻ từ 1->15, ngoạ i trừ số 3 và số 11

Trang 29
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.5. Lệnh while/else

Python hỗ trợ else block trong trườ ng hợ p while kết thú c mộ t cá ch bình
thườ ng (tứ c là khô ng phả i dù ng break để kết thú c)
while condition:
while-block
else:
else-block

Nếu while kết thú c mộ t cá ch bình thườ ng thì else-block sẽ tự độ ng đượ c


thự c hiện ngay sau đó .

Trang 30
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.5. Lệnh while/else

Ví dụ :

Nếu nhậ p số <0 thì sẽ thoá t while và bên trong else cũ ng khô ng đượ c thự c
thi (do kết thú c bằ ng lệnh break). Nếu nhậ p đú ng toà n bộ giá trị, sau khi
while chạy xong thì else sẽ tự độ ng đượ c gọ i(kết thú c while bình thườ ng)

Trang 31
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.6. Lệnh for/else

Python hỗ trợ else block trong trườ ng hợ p for kết thú c mộ t cá ch bình
thườ ng (tứ c là khô ng phả i dù ng break để kết thú c)
for expression:
for-block
else:
else-block

Nếu for kết thú c mộ t cá ch bình thườ ng thì else-block sẽ tự độ ng đượ c thự c
hiện ngay sau đó .

Trang 32
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.6. Lệnh for/else

Ví dụ:

Nếu nhậ p a là số chẵ n thì tính ra sum, cò n số lẻ khô ng ra sum(do ngừ ng


for bằ ng break)

Trang 33
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.7. Vòng lặp lồng nhau

Python cũ ng như cá c ngô n ngữ khá c, ta có thể viết cá c vò ng lặ p lồ ng nhau.

Trang 34
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
3.2.7. Vòng lặp lồng nhau
J J=n-
= 1
0

i=0 *

* *

* *

* *

* *

* *

* *

i=n-1 * * * * * * * *

Trang 35

You might also like