1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình Python: Bài 2 - Trương Xuân Nam

26 65 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Bài giảng Lập trình Python: Bài 2 Hàm và rẽ nhánh trong python cung cấp cho người học những kiến thức như: Hàm; Phép toán if; Rẽ nhánh; Bài tập. Mời các bạn cùng tham khảo để nắm chi tiết nội dung của bài giảng!

LẬP TRÌNH PYTHON Bài 2: Hàm rẽ nhánh python Tóm tắt nội dung trước ▪ ▪ ▪ ▪ Hai cách thực thi python: chạy chương trình dòng lệnh Dùng dấu thăng (#) để viết dòng thích Biến khơng cần khai báo trước, khơng cần kiểu Dữ liệu chuỗi nằm cặp nháy đơn ('), nháy kép ("), ba dấu nháy (""" / ''') – viết nhiều dịng ▪ Sử dụng chuỗi (\)để khai báo ký tự đặc biệt ▪ Sử dụng chuỗi thô: r"nội dung" ▪ Hàm print để in liệu, hàm input để nhập liệu ▪ Có thể kết hợp với hàm chuyển đổi kiểu ▪ Kiểu số phép tốn có số điểm cần ý ▪ Số nguyên không giới hạn độ lớn ▪ Phép chia nguyên phép chia xác TRƯƠNG XUÂN NAM Chữa tập buổi trước Nhập số nguyên a b, tính in 𝑏 𝑎 a = int(input("Nhập số nguyên A = ")) b = int(input("Nhập số nguyên B = ")) print("Kết quả:", a ** (1 / b)) TRƯƠNG XUÂN NAM Chữa tập buổi trước Nhập số nguyên n, in n dạng hệ số 16, hệ số hệ số n = int(input("Nhập số nguyên N = ")) print("N hệ số 16:", hex(n)) print("N hệ số 8:", oct(n)) print("N hệ số 2:", bin(n)) TRƯƠNG XUÂN NAM Chữa tập buổi trước Bạn có 10 triệu đồng tài khoản ngân hàng, với lãi suất 5,1% hàng năm Tính xem: ▪ Sau 10 năm bạn có tiền? ▪ Sau năm bạn có 50 triệu đồng? import math tien = 1e7 # số tiền đầu (10M) lai = 5.1 / 100 # lãi suất 5.1% print("Số tiền sau 10 năm:", int(tien * (1 + lai)**10)) dich = 5e7 # số tiền đích (50M) nam = math.log(dich / tien, + lai) # tính theo log print("Số năm để có 50 triệu:", math.ceil(nam)) TRƯƠNG XUÂN NAM Chữa tập buổi trước Nhập số nguyên X, đếm xem X có chữ số, in chữ số X (sinh viên chủ động giải thích cách làm kiến thức toán học sở) import math x = int(input("Nhập số nguyên X = ")) len = math.floor(math.log10(x)) print("Số chữ số X:", len + 1) print("Chữ số X:", x // 10**len) TRƯƠNG XUÂN NAM Nội dung Hàm Phép toán “if” Rẽ nhánh Bài tập TRƯƠNG XUÂN NAM Phần Hàm TRƯƠNG XUÂN NAM Khai báo gọi hàm ▪ Cú pháp khai báo hàm đơn giản def (danh-sách-tham-số): … ▪ Ví dụ: hàm tính tích số def tich(a, b): return a * b ▪ Hàm trả kết lệnh return, khơng trả coi trả None ▪ Gọi hàm thông qua tên đối số dt = tich(100, 200) s = tich(20, 30) + tich(40, 50) TRƯƠNG XUÂN NAM Hàm với tham số mặc định ▪ Hàm giá trị mặc định tham số # không nói mặc định b = def tich(a, b = 1): return a*b ▪ Như với hàm ta gọi thực nó: print(tich(10, 20)) print(tich(10)) print(tich(a=5)) print(tich(b=6, a=5)) # # # # 200 10 30 ▪ Chú ý: tham số có giá trị mặc định phải đứng cuối danh sách tham số TRƯƠNG XUÂN NAM 10 Python không cho phép nạp chồng hàm Python không cho phép hàm trùng tên, cố ý định nghĩa nhiều hàm trùng tên, python sử dụng phiên cuối def abc(): return 'abc version 1' def abc(a): return 'abc version 2' def abc(a, b): return 'abc version 3' print(abc()) # lỗi, hàm abc cần tham số a b print(abc(1, 2)) # ok, in 'abc version 3' TRƯƠNG XUÂN NAM 12 Tham số tùy biến python Python cho phép số lượng tham số tùy ý cách đặt dấu (*) vào phía trước tên tham số Trong ví dụ *names dãy không giới hạn số tham số # tham số tùy biến def sayhello(*names): # duyệt tham số for name in names: print("Hello", name) # gọi hàm với tham số sayhello("Monica", "Luke", "Steve", "John") # gọi hàm với tham số sayhello("Aba", "Donald", "Pence") TRƯƠNG XUÂN NAM 13 Phần Phép toán “if” TRƯƠNG XUÂN NAM 14 Phép toán “if” # X max A B X = A if A > B else B # N có phải số nguyên tố có chữ số hay khơng A = "Đúng" if N in [2, 3, 5, 7] else "Sai" # In hình “chẵn” n chia hết cho 2, # in “lẻ” ngược lại print('chẵn' if (n % 2) == else "lẻ") # Sinh viên có thi hay không? print("được thi" if so_buoi_nghi < else "khơng thi") # Biện luận nghiệm phương trình bậc (if lồng nhau) KQ = "một nghiệm" if delta == else \ "vô nghiệm" if delta < else "hai nghiệm" TRƯƠNG XUÂN NAM 15 Phép toán “if” ▪ Cú pháp: A if else B ▪ Thực hiện: ▪ Phép toán trả A đúng, ngược lại trả B ▪ A B giá trị, biểu thức tính toán, lời gọi hàm,… ▪ Các phép toán if lồng ▪ Cách sử dụng if kỳ lạ, hợp lý xét mặt ngôn ngữ cách đọc điều kiện logic ▪ Ưu điểm: phép tốn, viết biểu thức ▪ Bài tập: Biến X để lưu tình trạng gửi SMS, X=0 tức chưa gửi được, X=1 tức gửi thành công, X=2 tức gửi người nhận đọc Viết câu lệnh sử dụng phép tốn if để in hình thơng báo tương ứng với giá trị X TRƯƠNG XUÂN NAM 16 Phần Rẽ nhánh TRƯƠNG XUÂN NAM 17 Rẽ nhánh # In thông báo điểm số loại giỏi if diem >= 8: print("Chúc mừng bạn điểm giỏi") # In thông báo xem n chẵn hay lẻ if (N % 2) == 0: print("N số chẵn") else: print("N số lẻ") # Biện luận nghiệm phương trình bậc if delta == 0: print("Phương trình có nghiệm kép") elif delta < 0: print("Phương trình vơ nghiệm") else: print("Phương trình có hai nghiệm phân biệt") TRƯƠNG XUÂN NAM 18 Rẽ nhánh TRƯƠNG XUÂN NAM 19 Rẽ nhánh ▪ Python có cấu trúc rẽ nhánh nhất, sử dụng để lựa chọn làm số nhiều công việc ▪ Nhiều ngôn ngữ lập trình khác sử dụng if cho trường hợp lối rẽ nhánh switch cho trường hợp nhiều lối rẽ nhánh ▪ Nguyên tắc với rẽ nhánh if-elif-else: ▪ Biểu thức điều kiện if elif phải có kết logic ▪ Hệ thống tính giá trị biểu thức điều kiện từ xuống dưới, phát biểu if ▪ Nếu biểu thức điều kiện khối lệnh tương ứng thực bỏ qua khối lệnh khác ▪ Trường hợp biểu thức điều kiện sai, khối lệnh ứng với else thực ▪ Khối else tùy chọn, không thiết phải xuất TRƯƠNG XUÂN NAM 20 Phân tích ví dụ a = int(input("A = ")) if == a % 2: print("A số chẵn") elif == a % 5: print("A chia hết cho 5") else: print("A khơng có đặc biệt") a = 11: in “A khơng có đặc biệt” a = 12: in “A số chẵn” a = 15: in “A chia hết cho 5” a = 10: in “A số chẵn” – ý – A vừa số chẵn vừa chia hết cho 5, lệnh dừng xét kiện A chẵn TRƯƠNG XUÂN NAM 21 Lệnh if lồng nhau, ý thụt lề age = int(input("Bạn tuổi? ")) print("Ồ bạn đã", age, "tuổi rồi!") if age >= 18: print("Đủ tuổi bầu cử") if age > 100: print("Có vẻ sai sai!") else: # else thuộc if dòng print("Nhỏ quá") Như python dấu cách có vai trị lập trình nó, khơng đơn giản viết cho đẹp TRƯƠNG XUÂN NAM 22 Phần Bài tập TRƯƠNG XUÂN NAM 23 Bài tập TRƯƠNG XUÂN NAM 24 Bài tập 𝐹 𝑁 = 1! + 2! + ⋯ + 𝑁! ▪ ▪ ▪ ▪ ▪ ▪ TRƯƠNG XUÂN NAM 25 Bài tập ▪ ▪ ▪ TRƯƠNG XUÂN NAM 26 ... trị lập trình nó, khơng đơn giản viết cho đẹp TRƯƠNG XUÂN NAM 22 Phần Bài tập TRƯƠNG XUÂN NAM 23 Bài tập TRƯƠNG XUÂN NAM 24 Bài tập

Ngày đăng: 09/08/2021, 18:15

Xem thêm:

TỪ KHÓA LIÊN QUAN