Dice que siempre hay un número primo entre dos cuadrados de números naturales consecutivos (n = 1, 2, 3, 4, 5, …). Esto se llama la Conjetura de Legendre .
Conjetura: Una conjetura es una proposición o conclusión basada en información incompleta para la cual no se ha encontrado prueba, es decir, no se ha probado ni refutado.
Matemáticamente,
siempre hay un primo p en el rango donde n es cualquier número natural.
por ejemplo
, 2 y 3 son los números primos en el rango de .
5 y 7 son los primos en el rango de .
11 y 13 son los primos en el rango de .
17 y 19 son los primos en el rango de .
Ejemplos:
Input : 4 output: Primes in the range 16 and 25 are: 17 19 23
Explicación : aquí 4 2 = 16 y 5 2 = 25
Por lo tanto, los números primos entre 16 y 25 son 17, 19 y 23.
Input : 10 Output: Primes in the range 100 and 121 are: 101 103 107 109 113
C++
// C++ program to verify Legendre's Conjecture // for a given n. #include <bits/stdc++.h> using namespace std; // prime checking bool isprime(int n) { for (int i = 2; i * i <= n; i++) if (n % i == 0) return false; return true; } void LegendreConjecture(int n) { cout << "Primes in the range "<<n*n << " and "<<(n+1)*(n+1) <<" are:" <<endl; for (int i = n*n; i <= ((n+1)*(n+1)); i++) // searching for primes if (isprime(i)) cout << i <<endl; } // Driver program int main() { int n = 50; LegendreConjecture(n); return 0; }
Java
// Java program to verify Legendre's Conjecture // for a given n. class GFG { // prime checking static boolean isprime(int n) { for (int i = 2; i * i <= n; i++) if (n % i == 0) return false; return true; } static void LegendreConjecture(int n) { System.out.println("Primes in the range "+n*n +" and "+(n+1)*(n+1) +" are:"); for (int i = n*n; i <= ((n+1)*(n+1)); i++) { // searching for primes if (isprime(i)) System.out.println(i); } } // Driver program public static void main(String[] args) { int n = 50; LegendreConjecture(n); } } //This code is contributed by //Smitha Dinesh Semwal
Python3
# Python3 program to verify Legendre's Conjecture # for a given n import math def isprime( n ): i = 2 for i in range (2, int((math.sqrt(n)+1))): if n%i == 0: return False return True def LegendreConjecture( n ): print ( "Primes in the range ", n*n , " and ", (n+1)*(n+1) , " are:" ) for i in range (n*n, (((n+1)*(n+1))+1)): if(isprime(i)): print (i) n = 50 LegendreConjecture(n) # Contributed by _omg
C#
// C# program to verify Legendre's // Conjecture for a given n. using System; class GFG { // prime checking static Boolean isprime(int n) { for (int i = 2; i * i <= n; i++) if (n % i == 0) return false; return true; } static void LegendreConjecture(int n) { Console.WriteLine("Primes in the range " + n * n + " and " + (n + 1) * (n + 1) + " are:"); for (int i = n * n; i <= ((n + 1) * (n + 1)); i++) { // searching for primes if (isprime(i)) Console.WriteLine(i); } } // Driver program public static void Main(String[] args) { int n = 50; LegendreConjecture(n); } } // This code is contributed by parashar.
PHP
<?php // PHP program to verify // Legendre's Conjecture // for a given n. // prime checking function isprime($n) { for ($i = 2; $i * $i <= $n; $i++) if ($n % $i == 0) return false; return true; } function LegendreConjecture($n) { echo "Primes in the range ",$n* $n, " and ",($n + 1) * ($n + 1), " are:\n" ; for ($i = $n * $n; $i <= (($n + 1) * ($n + 1)); $i++) // searching for primes if (isprime($i)) echo $i ,"\n"; } // Driver Code $n = 50; LegendreConjecture($n); // This code is contributed by ajit. ?>
Javascript
<script> // JavaScript program to verify // Legendre's Conjecture for a given n. // Prime checking function isprime(n) { for(let i = 2; i * i <= n; i++) if (n % i == 0) return false; return true; } function LegendreConjecture(n) { document.write("Primes in the range " + n * n + " and " + (n + 1) * (n + 1) + " are:" + "<br/>"); for(let i = n * n; i <= ((n + 1) * (n + 1)); i++) { // Searching for primes if (isprime(i)) document.write(i + "<br/>"); } } // Driver code let n = 50; LegendreConjecture(n); // This code is contributed by splevel62 </script>
Producción :
Primes in the range 2500 and 2601 are: 2503 2521 2531 2539 2543 2549 2551 2557 2579 2591 2593
Complejidad Temporal: O(n 2 ). La función isPrime() toma el tiempo O(n) y está incrustada en la función LegendreConjecture() que también toma el tiempo O(n) ya que tiene un ciclo que comienza desde n 2 y termina en
(n+1) 2 entonces, (n+ 1) 2 – n2 = 2n+1.
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por jaideeppyne1997 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA