Đề; Theo quan điểm của Việt Nam và Trung Quốc số 8 là số may mắn . Bài toán hôm nay định nghĩa số nguyên không âm n là số may mắn như sau : Là số chia hết cho 8, hoặc tổng bình phương các chữ số của nó chía hết cho 8.
Hãy lập trình kiểm tra số nguyên không âm n cho trước có phải là số may mắn hay không ?
Code:
Cách 1:
#include <bits/stdc++.h>
using namespace std;
int sum(long long n)
{
int sum = 0;
while(n != 0)
{
int t = n % 10;
sum = sum + pow(t,2);
n = n / 10;
}
return sum;
}
int main()
{
long long n;
cin>>n;
int a[n];
for(int i = 0 ; i < n ; i++)
{
cin>>a[i];
}
for(int i = 0 ; i < n ; i++)
{
if(sum(a[i]) % 8 == 0 || a[i] % 8 == 0)
cout<<"Lucky number"<<endl;
else
cout<<"None"<<endl;
}
return 0;
}
Cách 2:
#include <bits/stdc++.h>
using namespace std;
int tong(long long n)
{
int sum = 0;
while(n != 0)
{
int t = n % 10;
sum = sum + pow(t,2);
n = n / 10;
}
return sum;
}
int main()
{
int n , i = 0 ;
long long t;
cin>>n;
while(n != i)
{
cin>>t;
if(tong(t) % 8 == 0 || t % 8 == 0)
cout<<"Lucky number"<<endl;
else
cout<<"None"<<endl;
i++;
}
return 0;
}