Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução seguindo o mesmo conceito da procedure anterior

create or replace PROCEDURE CALCULA_SEQ_FIBONACCI
(
    p_INDICE IN FLOAT
)

AS
    v_N1 FLOAT := 0;
    v_N2 FLOAT := 1;
    v_RESP FLOAT := 0;
    v_INDICE FLOAT := p_INDICE;

BEGIN
    CASE 
        WHEN v_INDICE <= 0 THEN RETURN; -- ÍNDICE COMEÇA EM 1
        WHEN v_INDICE = 1 THEN
            DBMS_OUTPUT.PUT_LINE(v_N1); -- NÚM IGUAL A 0
        WHEN v_INDICE > 1 THEN
            DBMS_OUTPUT.PUT_LINE(v_N1); -- NÚM IGUAL A 0
            DBMS_OUTPUT.PUT_LINE(v_N2); -- NÚM IGUAL A 
    ELSE
        DBMS_OUTPUT.PUT_LINE(v_N1);
        DBMS_OUTPUT.PUT_LINE(v_N2);
    END CASE;
    FOR v_COUNT IN 2..v_INDICE LOOP
        v_RESP := v_N1 + v_N2;
        v_N1 := v_N2;
        v_N2 := v_RESP;
        DBMS_OUTPUT.PUT_LINE(v_RESP);
    END LOOP;
END;
SET SERVEROUTPUT ON;
EXECUTE CALCULA_SEQ_FIBONACCI(45);

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta
solução!

Ei, tudo bem?

Parabéns por praticar a atividade, fico feliz em ver sua dedicação! O seu código está funcional e certinho.

Continue se dedicando aos estudos e qualquer dúvida, compartilhe.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!