Procedimiento almacenado para números primos en MYSQL

En este artículo, verá cómo puede escribir la lógica del procedimiento almacenado para generar números primos para cualquier entrada dada.

Título:
Dado un número N, imprima todos los números primos (<=N) separados por comas (,) utilizando el procedimiento almacenado en MYSQL.

Ejemplo 1 :

Input : N = 10
Output : 2, 3, 5, 7

Ejemplo-2:

Input : N = 20
Output : 2, 3, 5, 7, 11, 13, 17, 19

Programa:
un programa para demostrar cómo puede generar los números primos para cualquier entrada dada.

delimiter $$
create procedure getPrime(IN n int, OUT result varchar(200))
Begin
declare j, i, flag int;  /* Declare variables */
set j:=2; 
set result:=' '; 
while(j<n) do /* Loop from 2 to n */
set i:=2;
set flag:=0;

while(i<=j) do /* Loop from 2 to j */
if(j%i=0)then
set flag:=flag+1;
end if;
set i:=i+1; /* Increment i */
end while;

if (flag=1) then
set result:=concat(result, j, ', '); 
/* Concat the prime number with ', ' */
end if ;
set j:=j+1; /* Increment j */
end while;

End
$$

Cómo llamar al procedimiento:
para llamar al procedimiento, se utiliza la siguiente consulta que se indica a continuación.

call getPrime(20, @result);
select substr(@result, 1, length(@result)-1); /* To remove last character */

Producción :

2, 3, 5, 7, 11, 13, 17, 19

Publicación traducida automáticamente

Artículo escrito por vaishnaviwagh62 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *