28.12. Viết chương trình thực hiện các công việc sau, yêu cầu thực hiện lần lượt các công việc, mỗi...
Câu hỏi:
28.12. Viết chương trình thực hiện các công việc sau, yêu cầu thực hiện lần lượt các công việc, mỗi công việc cần được triển khai thông qua một chương trình con:
1. Nhập từ bàn phím một dãy các số nguyên, mỗi số cách nhau bởi dấu cách. Chuyển các số này vào một dãy (list A) các số và in dãy A ra màn hình.
2. Tách từ dãy A ra một dãy B bao gồm các phần tử có giá trị > 0 của dãy A. In dãy B ra màn hình.
3. Tách từ dãy A ra một dãy C bao gồm các phần tử có giá trị < 0 của dãy A. In dãy C ra màn hình.
Cuối cùng chương trình sẽ đưa ra kết quả tổng số các lệnh cơ bản (phép gán, phép so sánh) đã thực hiện trong toàn bộ chương trình.
Câu trả lời:
Người trả lời: GV. Đỗ Thị Linh
Để trả lời câu hỏi trên, cách làm như sau:1. Đầu tiên, ta sẽ viết các hàm con để thực hiện từng công việc cụ thể: - Hàm Nhap_Dulieu(): Nhập dãy số từ bàn phím và chuyển thành list A. - Hàm getB(A): Tách dãy A thành dãy B chứa các số > 0. - Hàm getC(A): Tách dãy A thành dãy C chứa các số < 0.2. Sử dụng biến global t để đếm số lượng phép gán và so sánh trong chương trình.3. Trong chương trình chính, gọi các hàm trên theo đúng thứ tự và in ra dãy A, B, C và số lượng phép gán và so sánh đã thực hiện.Câu trả lời chi tiết và đầy đủ hơn:```pythont = 6def Nhap_Dulieu(): global t s = input("Nhập các số nguyên cách nhau bởi dấu cách: ") A = s.split() t = t + 2 for k in range(len(A)): A[k] = int(A[k]) t = t + 1 return Adef getB(A): global t B = [] t = t + 1 for x in A: if x > 0: B.append(x) t = t + 1 return Bdef getC(A): global t C = [] t = t + 1 for x in A: if x < 0: C.append(x) t = t + 1 return C# Chương trình chínhA = Nhap_Dulieu()print("Dãy A:", A)B = getB(A)C = getC(A)print("Dãy B:", B)print("Dãy C:", C)print("Số lượng phép gán và so sánh:", t)```Đây là cách cụ thể để giải quyết câu hỏi "Viết chương trình thực hiện các công việc". Đầu tiên là viết các hàm con để thực hiện từng công việc cụ thể, sau đó sử dụng biến global để đếm số lượng phép gán và so sánh. Cuối cùng, chương trình chính sẽ gọi các hàm trên và in ra kết quả cuối cùng.
Câu hỏi liên quan:
- 28.1. Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?def f(x...
- 28.2. Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?def...
- 28.3. Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là gì?A. Biến địa...
- 28.4. Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm...
- 28.5. Khi khai báo hàm có tham số, các tham số này có thể coi là một biến địa phương của hàm hay...
- 28.6. Đoạn chương trình sau có lỗi không?m, n = 10, 4def f(a): n = n + m +...
- 28.7. Đoạn chương trình sau có lỗi không?m, n = 10, 4def f(a): k = n + m...
- 28.8. Đoạn chương trình sau sẽ in ra giá trị gì?def f(s): m =...
- 28.9. Mệnh đề nào dưới đây phát biểu sai về phạm vi tác dụng của biến trong Python?A. Biến được...
- 28.10. Chương trình sau có lỗi không? Nếu có, làm thế nào để sửa hết lỗi?def f(): ...
- 28.11. Viết hàm với đầu vào là list A, số thực x. Hàm cần trả về một list B thu được từ list A bằng...
Bình luận (0)