AGRADECIMENTO...

Pessoal, Gostaria de pedir desculpas aqueles que deixam perguntas/comentários/elogios/críticas e ainda não foram respondidos.

Aproveito a oportunidade para informar a todos que devido a correria do dia a dia não conclui o curso de BSI, por isso meus conhecimentos são limitados rsrsrs...

Ainda não retirei o blog do ar porque tem ajudado a diversos estudantes, principalmente os iniciantes.

As vezes, quando o trabalho me permite, ainda arrisco tentar resolver algumas questões rs... mas para não deixar esse blog parar no tempo, o ESTUDANTE que quiser enviar a resolução de alguma questão (código próprio) para o meu e-mail, terei o prazer de posta-la neste blog e será mantido a autoria.

Desde já agradeço a todos pelas visitas e desejo bons estudos.

Thiago Campos
(srthiago@hotmail.com)

quarta-feira, 12 de setembro de 2012

Sequência Fibonacci, recursividade e JOptionPane


A seqüência de Fibonacci e a seqüência de inteiros 0,1,1,2,3,5,8,13,21,34,... Cada elemento da seqüência e a soma dos dois elementos precedentes. Os dois  primeiros são dados pela definição:
a) fib(n) = n para n = 0 ou n= 1
b) fib(n) = fib(n-1) + fib(n-2) para n >= 2.


PS; Mostre também a sequencia Fibonacci ate o termo  informado.

Código Java

//Autor: Thiago Campos
//Data: 12.09.2012

/**
 *
 * @author Thiago
 */
import javax.swing.JOptionPane;

public class Fibonacci {

    public static void main(String[] args) {
        //variaveis
        Fibonacci brasil = new Fibonacci(); //instanciando a função
        String sequencia = ""; //vai armazenar os termos
        int termo;

        //entrada de dados
        termo = Integer.parseInt(JOptionPane.showInputDialog("Informe o termo desejado:"));

        // Armazena a sequencia dos termos ate o termo desejado
        for (int i = 0; i <= termo; i++) {
            sequencia += brasil.fibo(i) + "  ";
        }
        //Saida
        JOptionPane.showMessageDialog(null, "O termo é: " + brasil.fibo(termo)
                + "\nA sequencia é:\n" + sequencia);
    } //fim do main
/*------------------------------------------------------------------------------
 *             FUNÇÃO RECURSIVA DA SEQUENCIA FIBONACCI
 -------------------------------------------------------------------------------*/
    public int fibo(int num) {
        if (num < 2) { //condição de parada
            return num;
        } else {
            return fibo(num - 1) + fibo(num - 2);
        }
    } //fim da funçao 
} //fim da classe

Nenhum comentário:

Postar um comentário