Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 32

Discussione: fibonacci

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    fibonacci

    Ho un dubbio. Qualcuno sa con certezza quanto fa fibonacci di 5?
    e mi spiega brevemente il perchè?

    :metallica :metallica :metallica

  2. #2
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    <ERROR>
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Beh... la serie di Fibonacci è definita come segue:

    1) F(0) = 1
    2) F(1) = 1
    3) F(n+2) = F(n) + F(n+1)

    Quindi F(5) = F(3) + F(4) = (F(1) + F(2)) + (F(2) + F(3)) = (1 + 2) + (2 + 3) = 8


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    lele ma nn era * ? :master:
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Infinitejustice... ehm... cos'è? Un fattoriale senza lo 0?

    codice:
    private int f(int x) {
       return (x < 2) ? 1 : (f(x-2) + f(x-1));
    }
    Occhio: non tiene conto dei numeri negativi. La serie di Fibonacci è definita solo sui naturali, quindi se si vuole avere la certezza che non vada in errore bisogna aggiungere il controllo per il parametro minore di 0:
    codice:
    private int f(int x) {
       int tmp = -1;
       if (x >= 0) tmp = (x < 2) ? 1 : (f(x-2) + f(x-1));
       return tmp;
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Originariamente inviato da infinitejustice
    lele ma nn era * ? :master:
    No... Fibonacci è una serie... quindi una sommatoria.


    Ho visto l'<ERROR>

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    si ho guardato...
    mi sto arrugginendo in mate
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  8. #8
    fib(n) = fib(n-1) + fib(n-2)

    E' la somma non il prodotto.

    int fib(n)
    {
    if (n<= 1) return 1;
    return fib(n-1)+fib(n-2);
    }

    La versione iterativa è più efficiente.
    .:: Zetra.it - Web. ads . multimedia . graphix ::.
    Realizzazione siti web - Carte Magic ai prezzi più bassi d'italia
    - Comuni e Città

  9. #9
    ......Arrivato tardi
    .:: Zetra.it - Web. ads . multimedia . graphix ::.
    Realizzazione siti web - Carte Magic ai prezzi più bassi d'italia
    - Comuni e Città

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    Quindi F(5) = F(3) + F(4) = (F(1) + F(2)) + (F(2) + F(3)) = (1 + 2) + (2 + 3) = 8
    no..allora fa 5, perchè:

    fibonacci di 4 è 3
    e fibonacci di 3 è 2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.