Dado un número n, necesitamos encontrar la suma de cada dígito del número hasta que el número se convierta en un solo dígito. Necesitamos imprimir «sí» si la suma es un número primo o «no» si no es un número primo.
Ejemplos:
Input : 5602 Output: No Explanation: Step 1- 5+6+0+2 = 13 Step 2- 1+3 = 4 4 is not prime Input : 56 Output : Yes Explanation: Step 1- 5+6 = 11 Step 2- 1+1 = 2 hence 2 is prime
La idea es simple, podemos encontrar rápidamente la suma recursiva de dígitos .
int recDigSum(int n) { if (n == 0) return 0; return (n % 9 == 0) ? 9 : (n % 9); }
Una vez que se calcula la suma recursiva, verifique si es primo o no simplemente verificando si es 2, 3, 5 o 7 (Estos son solo números primos de un solo dígito).
C++
// CPP code to check if // recursive sum of // digits is prime or not. #include<iostream> using namespace std; // Function for recursive // digit sum int recDigSum(int n) { if (n == 0) return 0; else { if (n % 9 == 0) return 9; else return n % 9; } } // function to check if prime // or not the single digit void check(int n) { // calls function which // returns sum till // single digit n = recDigSum(n); // checking prime if (n == 2 or n == 3 or n == 5 or n == 7) cout << "Yes"; else cout << "No"; } // Driver code int main() { int n = 5602; check(n); } // This code is contributed by Shreyanshi.
Java
// java code to check if // recursive sum of // digits is prime or not. import java.io.*; class GFG { // Function for recursive // digit sum static int recDigSum(int n) { if (n == 0) return 0; else { if (n % 9 == 0) return 9; else return n % 9; } } // function to check if prime // or not the single digit static void check(int n) { // calls function which // returns sum till // single digit n = recDigSum(n); // checking prime if (n == 2 || n == 3 || n == 5 || n == 7) System.out.println ( "Yes"); else System.out.println("No"); } // Driver code public static void main (String[] args) { int n = 5602; check(n); } } // This code is contributed by vt_m
Python
# Python code to check if recursive sum # of digits is prime or not. def recDigSum(n): if n == 0: return 0 else: if n % 9 == 0: return 9 else: return n % 9 # function to check if prime or not # the single digit def check(n): # calls function which returns sum # till single digit n = recDigSum(n) # checking prime if n == 2 or n == 3 or n == 5 or n == 7: print "Yes" else: print "No" # driver code n = 5602 check(n)
C#
// C# code to check if // recursive sum of // digits is prime or not. using System; class GFG { // Function for recursive // digit sum static int recDigSum(int n) { if (n == 0) return 0; else { if (n % 9 == 0) return 9; else return n % 9; } } // function to check if prime // or not the single digit static void check(int n) { // calls function which // returns sum till // single digit n = recDigSum(n); // checking prime if (n == 2 || n == 3 || n == 5 || n == 7) Console.WriteLine ( "Yes"); else Console.WriteLine("No"); } // Driver code public static void Main () { int n = 5602; check(n); } } // This code is contributed by anuj_67.
PHP
<?php // PHP code to check if // recursive sum of // digits is prime or not. // Function for recursive // digit sum function recDigSum($n) { if ($n == 0) return 0; else { if ($n % 9 == 0) return 9; else return $n % 9; } } // function to check if prime // or not the single digit function check( $n) { // calls function which // returns sum till // single digit $n = recDigSum($n); // checking prime if ($n == 2 or $n == 3 or $n == 5 or $n == 7) echo "Yes"; else echo "No"; } // Driver code $n = 5602; check($n); // This code is contributed by ajit. ?>
Javascript
<script> // Javascript code to check if // recursive sum of digits is // prime or not. // Function for recursive // digit sum function recDigSum(n) { if (n == 0) return 0; else { if (n % 9 == 0) return 9; else return n % 9; } } // Function to check if prime // or not the single digit function check(n) { // Calls function which // returns sum till // single digit n = recDigSum(n); // Checking prime if (n == 2 || n == 3 || n == 5 || n == 7) document.write("Yes"); else document.write("No"); } // Driver code let n = 5602; check(n); // This code is contributed by susmitakundugoaldanga </script>
Producción:
No
Este artículo es una contribución de Twinkle Bajaj . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA