Publié le 22/12/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
2 commentaires

Afficher la suite de Fibonacci dans un JTable

La suite du mathématicien Fibonacci est la célèbre suite de nombre:
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,...
Elle est utilisée dans de nombreux domaines qui vont des statistiques, à la finance et même à la littérature (Da Vinci Code). Le nombre doré, issu de la division f(n)/f(n-1), est une constante importante dans l'art et l'architecture.

Calcul de la suite de Fibonacci

Le but de la class FibonacciSerie est d'illustrer:
- la création d'un GUI contenant un JTable
- l'affichage d'un Double avec Double.toString et DecimalFormat,
- l'ajout d'une ligne dans un JTable.
import java.text.DecimalFormat;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
 
/**
 * Calculer les 30 premiers elements de la suite de Fibonacci
 * @author Fobec 2010
 */
public class FibonacciSerie extends JFrame {
 
    private JTable jTable = null;
/**
 * Constructeur
 * Creation du GUI
 */
    public FibonacciSerie() {
        super("Suite de Fibonacci");
 
        JScrollPane jscrollPane = new javax.swing.JScrollPane();
        DefaultTableModel tableModel = new DefaultTableModel(
                new Object[][]{},
                new String[]{
                    "n", "f(n)", "ratio"
                });
 
        jTable = new JTable(tableModel);
        jscrollPane.setViewportView(jTable);
        getContentPane().add(jscrollPane);
        setSize(600, 550);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }
/**
 * Ajouter la suite de Fibonacci dans le tableau
 */
    public void fillTable() {
        this.appendLine(0, "1", "");
        this.appendLine(1, "1", "");
 
        double prev = 1;
        double prevprev = 1;
        double val = 0;
        Double ratio;
        DecimalFormat fmt = new DecimalFormat();
        fmt.setMinimumFractionDigits(0);
 
        for (int i = 2; i < 30; i++) {
            val = prevprev + prev;
            ratio = val / prev;
            this.appendLine(i, fmt.format(val), Double.toString(ratio));
            prevprev = prev;
            prev = val;
        }
    }
 
    /**
     * Ajouter une ligne au JTable
     * @param n indice
     * @param val f(n)
     * @param ratio f(n)/f(n-1)
     */
    private void appendLine(int n, String val, String ratio) {
        DefaultTableModel tablemodel = (DefaultTableModel) jTable.getModel();
        Object[] objects = new Object[3];
        objects[0] = n;
        objects[1] = val;
        objects[2] = ratio;
 
        tablemodel.addRow(objects);
    }
 
    /**
     * Exemple pour lancer la classe
     * @param args
     */
    public static void main(String[] args) {
        FibonacciSerie jFrame = new FibonacciSerie();
        jFrame.fillTable();
    }
}

Voici la suite des 30 premiers nombres de la suite de Fibonacci

Lorsque l'on execute la class ci-dessus, on obtient les 30 premiers nombres de la suite de Fibonacci. On remarque également que plus le nombre de boucle augmente plus on obtient un ratio proche du nombre d'or.

fibonacci_serie

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.
avatar coramarr

Publié par coramarr

le 26/09/2013 à 18:20:12

Peut-on trouver des infos sur cette suite qui serait utilise en statistiques. Des documents ou ouvrages qui relatent les divers possibilites d'utilisation de cette suite.
Je suis un particulier ni trop doue ni trop bete. Depuis le temps que j'entends parler de cette suite de FIBONACCI je me decide poser des questions sans grand espoir de reponse mais on ne sait jamais....
Cordialement

avatar amelia

Publié par amelia

le 28/10/2013 à 12:47:29

pour 30 sa donne 1346269

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - class
Mise a jour
22/12/2010
Visualisation
vu 13461 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 261 articles
|BIO_PSEUDO|
Commentaires récents

Publié par beeker dans tuto

Le script fonctionne bien en hebergement mutua1isee

Publié par ammar dans CMS

merci pour ce code , mais ce que je veux savoir c\'est es-ce que possible de récupérer la totalité de code source html de la page original.<br>merci...

Publié par fobec dans logiciel

Bravo, le soft a trouvé quelques 2400 liens sur le site en un temps record.

Publié par fobec dans tuto

Pour le script fonctionne, renseigner les constantes $SITE_PATH et $CACHE_PATH. Remplacer les valeurs avec les chemins de son propre site.

Publié par Fobec dans CMS

//une variante avec UrlMon
uses
UrlMon;

function GetPageContent(URL: string): string;
var
MyFile: file;
Buf: array[0..14] of Char;
Filename: string;