Documentos de Académico
Documentos de Profesional
Documentos de Cultura
--Bloque de Excepciones
END Cap_Pr_Suma;
Li_temporal INTEGER := 0;
BEGIN
IF Pi_num_a IS NULL OR Pi_num_a <= 0 THEN
Pv_error := 'Numero A invalido';
RETURN;
END IF;
IF Pi_num_b IS NULL OR Pi_num_b <= 0 THEN
Pv_error := 'Numero B invalido';
RETURN;
END IF;
IF Pi_num_c IS NULL OR Pi_num_c <= 0 THEN
Pv_error := 'Numero C invalido';
RETURN;
END IF;
Pv_cadena_num := Lv_cadena;
END Cap_Pr_Suma_Numeros;
Pi_factorial := Li_multiplicacion;
END Cap_Pr_Factorial;
BEGIN
--Bloque de Validaciones
IF Pi_Num IS NULL OR Pi_num <= 0 THEN
Pv_Error := 'Numero no valido';
RETURN;
END IF;
Li_numero := Pi_Num;
WHILE Li_numero != 0 LOOP
Li_contador := Li_contador + 1;
Li_numero := FLOOR(Li_numero / 10);
END LOOP;
Pi_Digitos := Li_contador;
END Cap_Pr_Contar_Dig;
Li_suma_div_a INTEGER := 0;
Li_suma_div_b INTEGER := 0;
BEGIN
--Bloque de Validaciones
IF Pi_num_a IS NULL OR Pi_num_a <= 0 THEN
Pv_error := 'Numero A invalido';
RETURN;
END IF;
IF Pi_num_b IS NULL OR Pi_num_b <= 0 THEN
Pv_error := 'Numero B invalido';
RETURN;
END IF;
BEGIN
IF Pv_palabra IS NULL THEN
Pv_error := 'palabra no valida';
RETURN;
END IF;
BEGIN
FOR Li_num_1 IN 10 .. 99 LOOP
FOR Li_num_2 IN 10 .. 99 LOOP
CAP_PK_EJERCICIOS_LOG_JDE.Cap_Pr_Palindromo(Pv_palabra => to_char(Li_num_1 *
Li_num_2),
Pv_palindromo => Lv_palindromo,
Pv_Error => Pv_Error);
IF Lv_palindromo != '-1' THEN
IF Li_mayor_palindromo < Li_num_1 * Li_num_2 THEN
Li_mayor_palindromo := Li_num_1 * Li_num_2;
Lv_cadena_pareja := to_char(Li_num_1) || '*' ||
to_char(Li_num_2) || '=' ||
Lv_palindromo;
END IF;
END IF;
END LOOP;
END LOOP;
Pv_pareja_palindromo := Lv_cadena_pareja;
END Cap_Pr_Palin_2_num;
Li_Suma INTEGER := 0;
Li_Factorial INTEGER := 1;
Lv_Cadena_Sud VARCHAR2(2000) := '';
Li_Numero_Temp INTEGER := 0;
BEGIN
IF NVL(Pi_Numero_Limite, 0) <= 0 THEN
Pv_Error := 'Numero limite invalido';
RETURN;
END IF;
END CAP_PR_CADENA_SUD;
end CAP_PK_EJERCICIOS_LOG_JDE;