Házi feladat
Fibonacci-sorozat külön függvénnyel
Alapfejezet - Kisebb-nagyobb külön függvényekkel
Házi feladat - Mondjunk egy olyan, már részletesen kifejtett algoritmust, amelyben szintén fontos a szomszédos elemek figyelése? Ha tudjuk a választ, programozzuk le!
Egy ilyen feladatunk már mindenképpen volt, ez pedig a híres Fibonacci-sorozat (Egy középkori zseni: Signore Fibonacci című fejezet). Ebben a sorozatban azonban nincs további feltételmegadás, csupán a szomszédos elemek összeadása. Az implementálás során az alapfejezet függvényszerkezetéből indulunk ki, a lehető legkevesebbet változtatva rajta. Ez persze enyhén szólva is szépítgetés, hiszen a kód javarészét ki kell dobnunk. Egyedül a következő metódusok fognak maradni:
-
fibonacciSorozat() - elvégzi a sorozatszámítást és visszaadja a kimeneti adattömböt,
-
tombkiiras - kiírja a tömbtartalmat,
-
main() - lefuttatja a programot.
Nézzük meg a futtatható Java-kódot:
public class Main {
public static int[] fibonacciSorozat (int hossz) {
int [] tomb = new int[hossz];
tomb[0] = 0;
tomb[1] = 1;
for (int i = 0; i < tomb.length-2; i++){
tomb[i+2] = tomb[i] + tomb[i+1];
}
return tomb;
}
public static void tombkiiras(int[] tomb){
for(int i = 0; i < tomb.length; i++) {
System.out.print(tomb[i] + " ");
}
}
public static void main(String[] args) {
tombkiiras(fibonacciSorozat(20));
}
}
Végeredmény:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181