Yêu cầu: Viết hàm uoc(a) để tính tổng các ước số của một số nguyên a. Dữ liệu: Một dòng ghi số nguyên a (0<a<1012) Kết quả: In ra tổng các ước số của số nguyên a. Ví dụ input 6 output 12 Không dùng lặp
1 câu trả lời
*Bạn dùng thử code nhé (mình không giỏi C++ lắm):
#include <bits/stdc++.h>
using namespace std;
int uoc(int a,int n) //n chạy từ a -> 1
{
long long t=0;
if (a%n==0)
t=n;
if (n==1)
return 1;
return uoc(a,n-1)+t;
}
long long a;
int main()
{
cin >> a;
long long u=uoc(a,a);
cout << u;
}
*Python:
def uoc(a,n):
tam=0
if (a%n==0):
tam=n
if (n==1):
return 1
return uoc(a,n-1)+tam
a=int(input())
tonguoc=uoc(a,a)
print(tonguoc)
Câu hỏi trong lớp
Xem thêm