Dado un número N , la tarea es verificar si el número es divisible por 47 o no.
Ejemplos:
Entrada: N = 1645
Salida: sí
Explicación:
47 * 35 = 1645
Entrada: N = 4606
Salida: sí
Explicación:
47 * 98 = 4606
Enfoque: La prueba de divisibilidad de 47 es:
- Extraiga el último dígito.
- Resta 14 * último dígito del número restante obtenido después de quitar el último dígito.
- Repita los pasos anteriores hasta obtener un número de dos dígitos, o cero.
- Si el número de dos dígitos es divisible por 47, o es 0, entonces el número original también es divisible por 47.
Por ejemplo:
If N = 59173 Step 1: N = 59173 Last digit = 3 Remaining number = 5917 Subtracting 14 times last digit Resultant number = 5917 - 14*3 = 5875 Step 2: N = 5875 Last digit = 5 Remaining number = 587 Subtracting 14 times last digit Resultant number = 587 - 14*5 = 517 Step 3: N = 517 Last digit = 7 Remaining number = 51 Subtracting 14 times last digit Resultant number = 51 - 14*7 = -47 Step 4: N = -47 Since N is a two-digit number, and -47 is divisible by 47 Therefore N = 59173 is also divisible by 47
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to check whether a number // is divisible by 47 or not #include<bits/stdc++.h> #include<stdlib.h> using namespace std; // Function to check if the number is divisible by 47 or not bool isDivisible(int n) { int d; // While there are at least two digits while (n / 100) { // Extracting the last d = n % 10; // Truncating the number n /= 10; // Subtracting fourteen times the last // digit to the remaining number n = abs(n-(d * 14)); } // Finally return if the two-digit // number is divisible by 47 or not return (n % 47 == 0) ; } // Driver Code int main() { int N = 59173; if (isDivisible(N)) cout<<"Yes"<<endl ; else cout<<"No"<<endl ; return 0; } // This code is contributed by ANKITKUMAR34
Java
// Java program to check whether a number // is divisible by 47 or not import java.util.*; class GFG{ // Function to check if the number is divisible by 47 or not static boolean isDivisible(int n) { int d; // While there are at least two digits while ((n / 100) > 0) { // Extracting the last d = n % 10; // Truncating the number n /= 10; // Subtracting fourteen times the last // digit to the remaining number n = Math.abs(n - (d * 14)); } // Finally return if the two-digit // number is divisible by 47 or not return (n % 47 == 0) ; } // Driver Code public static void main(String[] args) { int N = 59173; if (isDivisible(N)) System.out.print("Yes") ; else System.out.print("No"); } } // This code is contributed by PrinciRaj1992
Python 3
# Python program to check if a number # is divisible by 47 or not # Function to check if the number is # divisible by 47 or not def isDivisible(n) : # While there are at least two digits while n // 100 : # Extracting the last d = n % 10 # Truncating the number n //= 10 # Subtracting fourteen times the last # digit to the remaining number n = abs(n- (d * 14)) # Finally return if the two-digit # number is divisible by 43 or not return (n % 47 == 0) # Driver Code if __name__ == "__main__" : n = 59173 if (isDivisible(n)) : print("Yes") else : print("No")
C#
// C# program to check whether a number // is divisible by 47 or not using System; class GFG { // Function to check if the number is divisible by 47 or not static bool isDivisible(int n) { int d; // While there are at least two digits while (n / 100 > 0) { // Extracting the last d = n % 10; // Truncating the number n /= 10; // Subtracting fourteen times the last // digit to the remaining number n = Math.Abs(n - (d * 14)); } // Finally return if the two-digit // number is divisible by 47 or not return (n % 47 == 0); } // Driver Code public static void Main() { int N = 59173; if (isDivisible(N)) Console.WriteLine("Yes"); else Console.WriteLine("No"); } } // This code is contributed by mohit kumar 29.
Javascript
<script> // Javascript program to check whether a number // is divisible by 47 or not // Function to check if the number is divisible by 47 or not function isDivisible(n) { let d; // While there are at least two digits while (Math.floor(n / 100) > 0) { // Extracting the last d = n % 10; // Truncating the number n = Math.floor(n / 10); // Subtracting fourteen times the last // digit to the remaining number n = Math.abs(n - (d * 14)); } // Finally return if the two-digit // number is divisible by 47 or not return (n % 47 == 0) ; } // Driver Code let N = 59173; if (isDivisible(N) != 0) document.write("Yes") ; else document.write("No"); // This code is contributed by sanjoy_62. </script>
PHP
<?php // PHP program to check whether a number // is divisible by 47 or not // Function to check if the number is divisible by 47 or not function isDivisible($n) { // While there are at least two digits while (($n / 100) <=0) { // Extracting the last $d = $n % 10; // Truncating the number $n = ($n/10); // Subtracting seven times the last // digit to the remaining number $n = Math.abs($n - ($d * 14)); } // Finally return if the two-digit // number is divisible by 71 or not return ($n % 47 == 0) ; } // Driver Code $N = 1645; if (isDivisible($N)) { echo("Yes") ; } else{ echo("No"); } // This code is contributed by ksrikanth0498 ?>
Producción:
Yes
Complejidad de tiempo: O (log 10 N)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por virusbuddha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA