Generar numeros Aleatorios y guardarlos en una Tabla - PL/SQL [ORACLE]

Aqui se pide al usuario un numero al que se le aplicara la formula para dar numeros aleatorios , a este numero lo dividimos entre 1000 y comprobamos si la parte entera esta entre 1 y 49 , si se cumple la condicion vamos almacenandolo en la tabla hasta tener los 6 numeros (de 1 o 2 cifras), luego imprmimos la tabla para mostrar los numeros.



Salida:

Introduzca un valor para numero_inicial: 15


Numeros Aleatorios:
37   41   49   16   48   45

Procedimiento PL/SQL terminado correctamente.


Codigo:

set termout on;
set serveroutput on;
set ver off;


declare
	
	inicial number :=0;
	repetida boolean := false;
	n number :=1;
	numero number := 1;
	type tabla is table of number index by binary_integer;
	aleatorios tabla;
	
	
begin

	/*Pedir el Numero Inicial al Usuario*/
	inicial := '&numero_inicial';
	
	/* Inicializar la tabla en 0 */	
	for j in 1..6 loop
		aleatorios(j) := 0;
	end loop;

	
	
	/* Alamacenar los 6 numeros aleatorios que cumplan las condiciones */
	while n < = 6 loop
		/* FORMULA */
		inicial := MOD((25173 * inicial + 13849 ),65536);
		
		/* Guardar en Numero la parte entera del numero aleatorio dividido entre mil */
		numero := floor(inicial / 1000);
		
		/* Comprobar que el numero este entre 1 y 49 */
		if numero >0 AND numero < = 49 then
			/* Recorrer la tabla buscando que el numero no este repetido*/
			for k in 1..6 loop
				if aleatorios(k) = numero then
					repetida := true;
					exit;
				end if;
			end loop;
			
			
			/* Si NO esta repetida lo guardamos en la posicion de la tabla y si lo esta ponemos a False de nuevo la variable */
			if repetida = false  then
				aleatorios(n) := numero;
				n := n +1;
				
				else
					repetida := false;
			end if;	
			
		end if;	
		
	end loop;
	
	
	
	/* Imprimimos la tabla con los 6 numeros */
	dbms_output.put_line ('
	');
	dbms_output.put_line ('Numeros Aleatorios:');
	for i in 1..6 loop
	
		dbms_output.put(rpad(aleatorios(i),5));
		
	end loop;
		dbms_output.put_line ('	');
	
	
end;
/

Terminos de Busqueda:

  • guardar numero aleatorio java
  • oracle parte decimal de un numero
  • tabla numeros aleatorios
  • en plpgsql funcion para determinar si un numero es multiplo de otro
  • generar un sorteo en pl sql
  • generar numeros aleatorios entre 1 y 10 java en plsql
  • valor aleatorio pl sql
  • generar numero aleatorio pl/sql
  • Generar nuemos aleatorios y comprobar que existan en la tabla SQL
  • generar codigo aleatorio sql
  • generar aleatorios en oracle
  • 6 numeros aleatorios del 1 al 49
  • datos aleatorios de una tabla en sql
  • crear funcion en pl sql para generar numeros aleatorios
  • como sacar numeros aletorios en sql
  • como sacar multiplo de un numero en oracle
  • como obtener los multiplos de 6 de una tabla de oracle
  • como eliminar oracle america inc
  • como dar datos aleatorios en sql
  • como calcular el binario de un numero en pl sql

Escríbeme un comentario si este contenido te fue útil o si te quedó alguna duda, así podré mejorarlo. Gracias!