Bài 6. Phép toán, biểu thức, câu lệnh gán

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Vũ Thị Diệp
Ngày gửi: 09h:28' 13-03-2024
Dung lượng: 1.4 MB
Số lượt tải: 20
Nguồn:
Người gửi: Vũ Thị Diệp
Ngày gửi: 09h:28' 13-03-2024
Dung lượng: 1.4 MB
Số lượt tải: 20
Số lượt thích:
0 người
BIẾN, PHÉP GÁN,
PHÉP TOÁN VÀ
BIỂU THỨC SỐ HỌC
(2 TIẾT)
I. Biến, cách tạo biến, phép gán trong python
Ví dụ 1:
Có hai hộp dùng để đựng các viên bi. Hộp 1 được dán
nhãn A, trong hộp có 20 viên bi. Hộp 2 dán nhãn B, trong hộp
có 100 viên bi. Thực hiện thao tác sau: Bỏ 5 viên bi ra khỏi
hộp A sau đó bỏ khỏi hộp B số bi bằng số bi có trong hộp A
1) Hãy cho biết số bi trong hộp B sau khi thực hiện thao tác
trên?
2) Hãy cho biết số bi trong hộp B sau khi tiếp tục thực hiện
liên tiếp thêm 2 lần thao tác trên
1. Khai báo biến
a. Cú pháp:
=
Ví dụ:
Cách 1
>>>tuoi = 17
>>>ten = “Hoang Thanh Tam”
>>>PI = 3.14
Cách 2:
>>> tuoi, ten, PI = 17, “Hoang Thanh Tam”, 3.14
2) Quy tắc đặt tên biến
Tên biến bao gồm các ký tự thường (a-z), ký tự hoa (A-Z),
chữ số (0-9) và dấu gạch dưới '_'
Python phân biệt chữ hoa, chữ thường
Không được bắt đầu bằng số
Phải khác các keyword (từ khóa).
Không được sử dụng các ký tự đặc biệt như !, @, #, $, %,...
Có thể dài bao nhiêu tùy ý.
Ví dụ về cách đặt tên biến:
Tên đúng:
bien_1, tinh_tong_0_9, firstClass
Tên sai:
1value, number@, end (vì là từ khóa)
Chương
trình ví dụ 1
II. Phép toán và biểu thức số học trong Pyhton
1. Phép toán số học cơ bản
Toán
tử
+
–
*
/
//
%
**
Mô tả
Cộng
Trừ
Nhân
Chia
Chia lấy phần nguyên
Chia lấy phần dư
Lũy thừa
Ví dụ
12 + 4.9 => kết quả 16.9
3.98 – 4 => kết quả -0.02
2 * 3.4 => kết quả 6.8
9 / 2 => kết quả 4.5
9 // 2 => kết quả 4
9%2 =>kết quả 1
3**4=>kết quả 81
2) Biểu thức số học
Biểu thức số học là kết hợp các số, các biến, các
phép toán và dấu ngoặc tròn.
Thứ tự ưu tiên thực hiện các phép toán:
• Trong ngoặc làm trước
• Phép toán lũy thừa
• Dãy phép toán không chứa ngoặc: thực hiện từ
trái sang phải: *, /, //, % thực hiện trước và phép
toán +, - thực hiện sau
Ví dụ về biểu thức số học
Biểu thức trong
toán học
2a+3b
xy:z
[a:b]c
2x+1:(x+2)
Biểu thức trong
Python
2*a+3*b
x*y/z
(a//b)*c
2*x+1/(x+2)
III. Dữ liệu kiểu số
Một số kiểu dữ liệu cơ bản như số nguyên
(integers), số thực (floating-point), phân số
(fraction), số phức (complex)
1. Số nguyên (int):
- Bao gồm các số nguyên dương, các số nguyên âm và số 0.
Trong Python 3.X kiểu dữ liệu số nguyên là vô tận.
- Ví dụ: 123; -12345
2. Số thực (float):
- Có độ chính xác xấp xỉ 15 chữ số thập phân
- Ví dụ 1: 34.12; -23.43
- Ví dụ 2:
Số thực 10/3 là số vô hạn tuần hoàn
=> nếu muốn có kết quả chính xác cao hơn, ta nên sử dụng
Decimal (có độ chính xác cao hơn float nhưng khá rườm
rà)
Ví dụ:
# lấy toàn bộ nội dung của thư viện Decimal
>>> from decimal import *
# lấy tối đa 30 chữ số phần nguyên và phần thập phân Decimal
>>> getcontext().prec = 30
>>> Decimal(10) / Decimal(3)
Decimal('3. 33333333333333333333333333333')
>>> Decimal(100) / Decimal(3)
Decimal('33.3333333333333333333333333333')
>>> type(Decimal(5)) # các số Decimal thuộc lớp Decimal
3. Kiểm tra kiểu dữ liệu của biến
Cú pháp:
type()
Ví dụ:
tuoi = 17
ten = “Hoang Thanh Tam”
PI = 3.14
type(tuoi)
type(ten)
type(PI)
=> trả về kiểu int, str, float
BÀI TẬP
Bài 1: Hãy soạn thảo chương trình thực hiện các phép
toán +, -, *, /, //, % cho hai số nguyên a=145 và b=23
Bài 2: Hãy viết lệnh giải phương trình bậc hai
ax2+bx+c=0, biết phương trình luôn có 2 nghiệm phân
biệt
Bài 3: Viết chương trình tính diện tích hình tròn khi biết
bán kính r=15
Bài 4: Viết chương trình tính cạnh huyền của tam giác
vuông khi biết độ dài hai cạnh góc vuông cho trước với
a=7, b=9
Đáp án bài 1
Đáp án bài 2
Đáp án câu 3
Đáp án câu 4
Nâng cao (không dạy)
2. Toán tử gán
Toán
tử
=
+=
-=
Mô tả
Ví dụ
Tương đương với
Phép gán giá trị bên phải
cho biến bên trái dấu bằng
x=5
Cộng và gán
x=2
x+=5
==>x=7
x=x+5
Trừ và gán
x=2
x-=5
==>x=-3
x=x-5
Toán
tử
*=
/=
//=
Mô tả
Ví dụ
Tương đương với
Nhân và gán
x=2
x*=5
==>x=10
x=x*5
Chia và gán
x=7
x/=5
==>x=1.4
x=x/5
Chia và gán (lấy nguyên)
x=7
x//=5
==>x=1
x=x//5
Toán
tử
Mô tả
%= Chia lấy dư
**= Lấy lũy thừa và gán
Ví dụ
x=7
x%=5
==>x=2
x=2x**=3
==>x là 2 mũ 3
=8
Tương đương
với
x=x%5
x=x**3
3. Toán tử So sánh
Toán tử
==
!=
<
<=
>
>=
Mô tả
Bằng
Khác
Nhỏ hơn
Nhỏ hơn hoặc bằng
Lớn hơn
Lớn hơn hoặc bằng
is
Trả về true nếu các biến ở hai bên toán tử
cùng trỏ tới một đối tượng (hoặc cùng giá
trị), nếu không là false
is not
Trả về false nếu các biến ở hai bên toán tử
cùng trỏ tới một đối tượng (hoặc cùng giá
trị), nếu không là true
Ví dụ
5 == 5 => True
5 != 5 => False
5 < 5 => False
5 <= 5 => True
5 > 5.5 => False
113>= 5 => True
x=5
y=5
print(x is y)
=>kết quả là True
x=5
y=5
print(x is not y)
=>kết quả là False
4. Toán tử Logic
Toán tử
and
or
not
Ví dụ
x=2016
print(x%4==0 and x%100!=0)
=>True
x=2016
print((x%4==0 and x%100!=0) or x%400==0)
=>True
x=4
if (not x>=5):
print("hello")
else:
print("bye bye")
5. Độ ưu tiên toán tử
Thứ tự ưu tiên
1
2
3
4
5
6
7
8
Toán tử
**
*, /, % ,//
+, –
<= ,<, >, >=
==, !=
=, %=, /=, //=, -=, +=, *=, **=
is , is not
not, or, and
Ví dụ: Cho 2 biến a,b lần lượt bằng 8 và 3. Thực hiện các biểu thức
toán học với a,b.
>>> a = 8
>>> b = 3
>>> a + b # tương đương 8 cộng 3
11
>>> a – b # tương đương 8 trừ 3
5
>>> a * b # tương đương 8 nhân 3
24
>>> a / b # tương đương 8 chia 3
2.6666666666666665
>>> a // b # tương đương với 8 chia nguyên 3
2
>>> a % b # tương đương với 8 chia dư 3
2
>>> a ** b # tương đương 8 mũ 3
512
IV. Một số hàm thường dùng
Tên hàm
.trunc(x)
.floor(x)
Công dụng
Trả về một số nguyên là phần nguyên của số x
Trả về một số nguyên được làm tròn số từ số x, kết
quả luôn luôn nhỏ hơn hoặc bằng x
.ceil(x)
Trả về một số nguyên được làm tròn số từ số x, kết
quả luôn luôn lớn hơn hoặc bằng x
.fabs(x)
.sqrt(x)
.gcd(x,y)
Trả về một số thực là trị tuyệt đối của số x
Trả về một số thực là căn bậc hai của số x
Trả về một số nguyên là ước chung lớn nhất của hai
số x và y
V. Biểu thức
Biểu thức chính là một thực thể toán học. Nói cách
khác, nó là một sự kết hợp giữa 2 thành phần:
• Toán hạng: có thể là một hằng số, biến số, …
• Toán tử: xác định cách thức làm việc giữa các toán hạng
2) Biểu thức quan hệ
3 > 1 là đúng
Sử dụng các phép toán quan hệ:
<, <=, >, >=, ==
69 < 10 là sai
241 == 141 + 100 là đúng
(5 * 0) != 0 là sai.
'a' > 'ABC' là đúng
'aaa' < 'aaAcv' là sai
'aaa' < 'aaaAcv' là đúng
3) Biểu thức logic
Sử dụng các phép toán logic: and, or và not
Ví dụ : (x>=1) and (x<=10)
(x>=0) or (x<=-5)
Ví dụ:
>>> n = 5
>>># kiểm tra xem n có nằm trong khoảng (1; 6) hay không
>>> n > 1 and n < 6
True
>>> # kiểm tra xem n có nằm trong khoảng (1; 4) hay không
>>> n > 1 and n < 4
False
Làm như trên khá mệt
Với Python, ta có thể làm thế này
>>>a=5
>>>1 < a < 6
True
>>> b = -4
>>> b < -3 < -1 < 0 < a < 6 # thậm chí là dài như thế này
True
Với trường hợp nếu ta muốn kiểm tra xem một số k có bằng
x hoặc y hoặc là z hay không thì thường phải viết khá dài
>>> k = 4
>>> k == 3 or k == 4 or k == 5
True
Tuy nhiên, ta cũng có thể làm như sau:
>>> k in (3, 4, 5) # nên dùng () hơn là [] hoặc thứ gì khác
True
PHÉP TOÁN VÀ
BIỂU THỨC SỐ HỌC
(2 TIẾT)
I. Biến, cách tạo biến, phép gán trong python
Ví dụ 1:
Có hai hộp dùng để đựng các viên bi. Hộp 1 được dán
nhãn A, trong hộp có 20 viên bi. Hộp 2 dán nhãn B, trong hộp
có 100 viên bi. Thực hiện thao tác sau: Bỏ 5 viên bi ra khỏi
hộp A sau đó bỏ khỏi hộp B số bi bằng số bi có trong hộp A
1) Hãy cho biết số bi trong hộp B sau khi thực hiện thao tác
trên?
2) Hãy cho biết số bi trong hộp B sau khi tiếp tục thực hiện
liên tiếp thêm 2 lần thao tác trên
1. Khai báo biến
a. Cú pháp:
Ví dụ:
Cách 1
>>>tuoi = 17
>>>ten = “Hoang Thanh Tam”
>>>PI = 3.14
Cách 2:
>>> tuoi, ten, PI = 17, “Hoang Thanh Tam”, 3.14
2) Quy tắc đặt tên biến
Tên biến bao gồm các ký tự thường (a-z), ký tự hoa (A-Z),
chữ số (0-9) và dấu gạch dưới '_'
Python phân biệt chữ hoa, chữ thường
Không được bắt đầu bằng số
Phải khác các keyword (từ khóa).
Không được sử dụng các ký tự đặc biệt như !, @, #, $, %,...
Có thể dài bao nhiêu tùy ý.
Ví dụ về cách đặt tên biến:
Tên đúng:
bien_1, tinh_tong_0_9, firstClass
Tên sai:
1value, number@, end (vì là từ khóa)
Chương
trình ví dụ 1
II. Phép toán và biểu thức số học trong Pyhton
1. Phép toán số học cơ bản
Toán
tử
+
–
*
/
//
%
**
Mô tả
Cộng
Trừ
Nhân
Chia
Chia lấy phần nguyên
Chia lấy phần dư
Lũy thừa
Ví dụ
12 + 4.9 => kết quả 16.9
3.98 – 4 => kết quả -0.02
2 * 3.4 => kết quả 6.8
9 / 2 => kết quả 4.5
9 // 2 => kết quả 4
9%2 =>kết quả 1
3**4=>kết quả 81
2) Biểu thức số học
Biểu thức số học là kết hợp các số, các biến, các
phép toán và dấu ngoặc tròn.
Thứ tự ưu tiên thực hiện các phép toán:
• Trong ngoặc làm trước
• Phép toán lũy thừa
• Dãy phép toán không chứa ngoặc: thực hiện từ
trái sang phải: *, /, //, % thực hiện trước và phép
toán +, - thực hiện sau
Ví dụ về biểu thức số học
Biểu thức trong
toán học
2a+3b
xy:z
[a:b]c
2x+1:(x+2)
Biểu thức trong
Python
2*a+3*b
x*y/z
(a//b)*c
2*x+1/(x+2)
III. Dữ liệu kiểu số
Một số kiểu dữ liệu cơ bản như số nguyên
(integers), số thực (floating-point), phân số
(fraction), số phức (complex)
1. Số nguyên (int):
- Bao gồm các số nguyên dương, các số nguyên âm và số 0.
Trong Python 3.X kiểu dữ liệu số nguyên là vô tận.
- Ví dụ: 123; -12345
2. Số thực (float):
- Có độ chính xác xấp xỉ 15 chữ số thập phân
- Ví dụ 1: 34.12; -23.43
- Ví dụ 2:
Số thực 10/3 là số vô hạn tuần hoàn
=> nếu muốn có kết quả chính xác cao hơn, ta nên sử dụng
Decimal (có độ chính xác cao hơn float nhưng khá rườm
rà)
Ví dụ:
# lấy toàn bộ nội dung của thư viện Decimal
>>> from decimal import *
# lấy tối đa 30 chữ số phần nguyên và phần thập phân Decimal
>>> getcontext().prec = 30
>>> Decimal(10) / Decimal(3)
Decimal('3. 33333333333333333333333333333')
>>> Decimal(100) / Decimal(3)
Decimal('33.3333333333333333333333333333')
>>> type(Decimal(5)) # các số Decimal thuộc lớp Decimal
3. Kiểm tra kiểu dữ liệu của biến
Cú pháp:
type(
Ví dụ:
tuoi = 17
ten = “Hoang Thanh Tam”
PI = 3.14
type(tuoi)
type(ten)
type(PI)
=> trả về kiểu int, str, float
BÀI TẬP
Bài 1: Hãy soạn thảo chương trình thực hiện các phép
toán +, -, *, /, //, % cho hai số nguyên a=145 và b=23
Bài 2: Hãy viết lệnh giải phương trình bậc hai
ax2+bx+c=0, biết phương trình luôn có 2 nghiệm phân
biệt
Bài 3: Viết chương trình tính diện tích hình tròn khi biết
bán kính r=15
Bài 4: Viết chương trình tính cạnh huyền của tam giác
vuông khi biết độ dài hai cạnh góc vuông cho trước với
a=7, b=9
Đáp án bài 1
Đáp án bài 2
Đáp án câu 3
Đáp án câu 4
Nâng cao (không dạy)
2. Toán tử gán
Toán
tử
=
+=
-=
Mô tả
Ví dụ
Tương đương với
Phép gán giá trị bên phải
cho biến bên trái dấu bằng
x=5
Cộng và gán
x=2
x+=5
==>x=7
x=x+5
Trừ và gán
x=2
x-=5
==>x=-3
x=x-5
Toán
tử
*=
/=
//=
Mô tả
Ví dụ
Tương đương với
Nhân và gán
x=2
x*=5
==>x=10
x=x*5
Chia và gán
x=7
x/=5
==>x=1.4
x=x/5
Chia và gán (lấy nguyên)
x=7
x//=5
==>x=1
x=x//5
Toán
tử
Mô tả
%= Chia lấy dư
**= Lấy lũy thừa và gán
Ví dụ
x=7
x%=5
==>x=2
x=2x**=3
==>x là 2 mũ 3
=8
Tương đương
với
x=x%5
x=x**3
3. Toán tử So sánh
Toán tử
==
!=
<
<=
>
>=
Mô tả
Bằng
Khác
Nhỏ hơn
Nhỏ hơn hoặc bằng
Lớn hơn
Lớn hơn hoặc bằng
is
Trả về true nếu các biến ở hai bên toán tử
cùng trỏ tới một đối tượng (hoặc cùng giá
trị), nếu không là false
is not
Trả về false nếu các biến ở hai bên toán tử
cùng trỏ tới một đối tượng (hoặc cùng giá
trị), nếu không là true
Ví dụ
5 == 5 => True
5 != 5 => False
5 < 5 => False
5 <= 5 => True
5 > 5.5 => False
113>= 5 => True
x=5
y=5
print(x is y)
=>kết quả là True
x=5
y=5
print(x is not y)
=>kết quả là False
4. Toán tử Logic
Toán tử
and
or
not
Ví dụ
x=2016
print(x%4==0 and x%100!=0)
=>True
x=2016
print((x%4==0 and x%100!=0) or x%400==0)
=>True
x=4
if (not x>=5):
print("hello")
else:
print("bye bye")
5. Độ ưu tiên toán tử
Thứ tự ưu tiên
1
2
3
4
5
6
7
8
Toán tử
**
*, /, % ,//
+, –
<= ,<, >, >=
==, !=
=, %=, /=, //=, -=, +=, *=, **=
is , is not
not, or, and
Ví dụ: Cho 2 biến a,b lần lượt bằng 8 và 3. Thực hiện các biểu thức
toán học với a,b.
>>> a = 8
>>> b = 3
>>> a + b # tương đương 8 cộng 3
11
>>> a – b # tương đương 8 trừ 3
5
>>> a * b # tương đương 8 nhân 3
24
>>> a / b # tương đương 8 chia 3
2.6666666666666665
>>> a // b # tương đương với 8 chia nguyên 3
2
>>> a % b # tương đương với 8 chia dư 3
2
>>> a ** b # tương đương 8 mũ 3
512
IV. Một số hàm thường dùng
Tên hàm
.trunc(x)
.floor(x)
Công dụng
Trả về một số nguyên là phần nguyên của số x
Trả về một số nguyên được làm tròn số từ số x, kết
quả luôn luôn nhỏ hơn hoặc bằng x
.ceil(x)
Trả về một số nguyên được làm tròn số từ số x, kết
quả luôn luôn lớn hơn hoặc bằng x
.fabs(x)
.sqrt(x)
.gcd(x,y)
Trả về một số thực là trị tuyệt đối của số x
Trả về một số thực là căn bậc hai của số x
Trả về một số nguyên là ước chung lớn nhất của hai
số x và y
V. Biểu thức
Biểu thức chính là một thực thể toán học. Nói cách
khác, nó là một sự kết hợp giữa 2 thành phần:
• Toán hạng: có thể là một hằng số, biến số, …
• Toán tử: xác định cách thức làm việc giữa các toán hạng
2) Biểu thức quan hệ
3 > 1 là đúng
Sử dụng các phép toán quan hệ:
<, <=, >, >=, ==
69 < 10 là sai
241 == 141 + 100 là đúng
(5 * 0) != 0 là sai.
'a' > 'ABC' là đúng
'aaa' < 'aaAcv' là sai
'aaa' < 'aaaAcv' là đúng
3) Biểu thức logic
Sử dụng các phép toán logic: and, or và not
Ví dụ : (x>=1) and (x<=10)
(x>=0) or (x<=-5)
Ví dụ:
>>> n = 5
>>># kiểm tra xem n có nằm trong khoảng (1; 6) hay không
>>> n > 1 and n < 6
True
>>> # kiểm tra xem n có nằm trong khoảng (1; 4) hay không
>>> n > 1 and n < 4
False
Làm như trên khá mệt
Với Python, ta có thể làm thế này
>>>a=5
>>>1 < a < 6
True
>>> b = -4
>>> b < -3 < -1 < 0 < a < 6 # thậm chí là dài như thế này
True
Với trường hợp nếu ta muốn kiểm tra xem một số k có bằng
x hoặc y hoặc là z hay không thì thường phải viết khá dài
>>> k = 4
>>> k == 3 or k == 4 or k == 5
True
Tuy nhiên, ta cũng có thể làm như sau:
>>> k in (3, 4, 5) # nên dùng () hơn là [] hoặc thứ gì khác
True
 








Các ý kiến mới nhất