给定一个大数字n,请确定该数字是否可被29整除。
例子 :
Input : 363927598
Output : No
Input : 292929002929
Output : Yes
A quick solution to check if a number is divisible by 29 or not is to add 3 times of last digit to rest number and repeat this process until number comes 2 digit. The given number is divisible by 29 iff the obtained two digit number is divisible by 29.
Number is 348,
Three times of last digit + Rest of the number = 8*3 + 34 = 58
Since 58 is divisible by 29, 348 is also divisible by 29.
C++
// CPP program to demonstrate above method
// to check divisibility by 29.
#include
using namespace std;
// Returns true if n is divisible by 29
// else returns false.
bool isDivisible(long long int n)
{
// add the lastdigit*3 to renaming
// number until number comes only
// 2 digit
while (n / 100)
{
int last_digit = n % 10;
n /= 10;
n += last_digit * 3;
}
// return true if number is
// divisible by 29 another
return (n % 29 == 0);
}
// Driver Code
int main()
{
long long int n = 348;
if (isDivisible(n))
cout << "Yes" << endl;
else
cout << "No" << endl;
return 0;
}
Java
// Java program to demonstrate above method
// to check divisibility by 29.
import java.io.*;
class GFG {
// Returns true if n is divisible by 29
// else returns false.
static boolean isDivisible(long n)
{
// add the lastdigit*3 to renaming
// number until number comes only
// 2 digit
while (n / 100 > 0) {
int last_digit = (int)n % 10;
n /= 10;
n += last_digit * 3;
}
// return true if number is
// divisible by 29 another
return (n % 29 == 0);
}
// Driver code
public static void main(String[] args)
{
long n = 348;
if (isDivisible(n))
System.out.println("Yes");
else
System.out.println("No");
}
}
// This code is contributed by vt_m.
Python3
# Python3 program to demonstrate above
# method to check divisibility by 29.
# Returns true if n is divisible
# by 29 else returns false.
def isDivisible(n):
# add the lastdigit*3 to renaming
# number until number comes only
# 2 digit
while (int(n / 100)) :
last_digit = int(n % 10)
n = int(n / 10)
n += last_digit * 3
# return true if number is
# divisible by 29 another
return (n % 29 == 0)
# Driver Code
n = 348
if(isDivisible(n) != 0):
print("Yes")
else:
print("No")
# This code is contributed by Smitha Dinesh Semwal.
C#
// C# program to demonstrate above method
// to check divisibility by 29.
using System;
class GFG
{
// Returns true if n is divisible by 29
// else returns false.
static bool isDivisible(long n)
{
// add the lastdigit*3 to renaming
// number until number comes only
// 2 digit
while (n / 100 > 0)
{
int last_digit = (int)n % 10;
n /= 10;
n += last_digit * 3;
}
// return true if number is
// divisible by 29 another
return (n % 29 == 0);
}
// Driver code
public static void Main()
{
long n = 348;
if (isDivisible(n))
Console.Write("Yes");
else
Console.Write("No");
}
}
// This code is contributed by nitin mittal
PHP
Javascript
输出 :
Yes