26.11. Hàm sau thực hiện công việc gì?def func(n): c = 0 ...

Câu hỏi:

26.11. Hàm sau thực hiện công việc gì?

def func(n):

       c = 0

       for k in range(1, n):

             if n%k == 0;

                     c = c + k

       return c

Câu trả lời:
Người trả lời: GV. Đỗ Thị Đạt
Để giải câu hỏi trên, ta cần phân tích hàm func(n) đã cho:
- Hàm này nhận vào một số nguyên dương n và trả về tổng các ước số thực sự của số đó, tức là tổng các số chia hết cho n mà không phải chính số đó.
- Biến c được khởi tạo bằng 0 để lưu tổng các ước số.
- Vòng lặp for k chạy từ 1 đến n-1 (vòng lặp này sẽ không xét n vì n không phải là ước số thực sự của chính nó).
- Trong vòng lặp, nếu n chia hết cho k (n%k == 0) thì số k đó là ước số của n và c sẽ được cộng thêm vào k.
- Cuối cùng trả về giá trị của c sau khi tính toán xong.

Vậy, câu trả lời cho câu hỏi "Hàm sau thực hiện công việc gì?" là: Hàm trả lại tổng các ước số thực sự của n, tính cả 1.
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.13961 sec| 2194.148 kb