Skip to content

emka.web.id

Menu
  • Home
  • Indeks Artikel
  • Tutorial
  • Tentang Kami
Menu

Program Python untuk Mencetak Deret Fibonacci


Deret Fibonacci adalah deret angka dimana angka berikutnya ditemukan dengan menjumlahkan dua angka sebelumnya. Barisan dimulai dengan 0 dan 1. Ini adalah suku pertama dan kedua. Sebagai contoh, barisan sampai suku ke-7 adalah sebagai berikut: 0, 1, 1, 2, 3, 5, 8.

Dalam Python, kita dapat mengimplementasikan barisan Fibonacci menggunakan pendekatan yang berbeda. Artikel ini akan fokus pada dua metode: menghasilkan deret Fibonacci hingga jumlah suku tertentu, dan menghasilkan deret Fibonacci hingga angka maksimum yang diberikan.
1. Deret Fibonacci hingga Sejumlah Istilah Tertentu

Di sini, kami akan menulis program Python yang mencetak deret Fibonacci hingga sejumlah istilah tertentu. Hal ini dilakukan dengan memulai dua suku pertama dari deret dan kemudian menghitung suku berikutnya dengan menjumlahkan dua suku terakhir, sebanyak yang ditentukan pengguna. # Inisialisasi dua suku pertama a, b = 0, 1 # Cetak dua suku pertama print("Deret Fibonacci hingga", n, "suku: ") cetak(a,b,akhir=" ") # Hitung istilah berikutnya untuk saya dalam rentang (2, n): a, b = b, a + b cetak(b, akhir=" ") # Uji fungsinya barisan_fibonacci(10)123456789101112131415deffibonacci_sequence(n):    # Inisialisasi dua suku pertama    a,b=0,1        # Cetak dua suku pertama    print("Deret Fibonacci naik ke",n,"suku: ")    cetak(a,b, end=" ")        # Hitung suku berikutnya    untukinrange(2,n):        a,b=b,a+b        print(b,end=" ")        # Uji fungsifibonacci_sequence(10)


Fungsi `fibonacci_sequence` ini menggunakan bilangan bulat n sebagai input, yang mewakili jumlah istilah dalam urutan. Variabel a dan b diinisialisasi dengan dua suku pertama deret Fibonacci. Perulangan for kemudian berjalan n-2 kali (karena dua suku pertama sudah dicetak), memperbarui a dan b dengan penerusnya dalam urutan, dan mencetak suku berikutnya.
2. Deret Fibonacci hingga Angka Maksimum yang Diberikan

Dalam pendekatan ini, alih-alih menentukan jumlah suku, kami akan menentukan nilai maksimum yang akan dicetak oleh deret Fibonacci. # Inisialisasi dua suku pertama a, b = 0, 1 # Cetak dua suku pertama print("Urutan Fibonacci hingga nilai maksimum", max_val, ":") cetak(a, akhir=" ") # Hitung dan cetak suku berikutnya hingga melebihi nilai maksimum sementara b <= max_val: cetak(b, akhir=" ") a, b = b, a + b # Uji fungsinya fibonacci_sequence_up_to_max(100)123456789101112131415deffibonacci_sequence_up_to_max(max_val):    # Inisialisasi dua suku pertama    a,b=0,1        # Cetak dua suku pertama    print("Deret Fibonacci hingga nilai maksimum",val_maksimum,":")    cetak(a,end =" ")        # Hitung dan cetak suku berikutnya hingga melebihi nilai maksimum    whileb<=max_val:        print(b,end=" ")        a,b=b,a+b        # Uji fungsi fibonacci_sequence_up_to_max(100)


Fungsi ` fibonacci_sequence_up_to_max` mengambil bilangan bulat `max_val` sebagai input, yang mewakili nilai maksimum urutan. Ini menginisialisasi a dan b dengan dua suku pertama dari deret Fibonacci. Perulangan while kemudian berjalan hingga `b` melebihi `max_val`, memperbarui a dan b dengan penerusnya dalam urutan, dan mencetak suku berikutnya jika tidak melebihi max_val.
3. Mencetak Deret Fibonacci Menggunakan Fungsi Rekursif

A Deret Fibonacci juga dapat dicetak menggunakan rekursi. Dalam pendekatan ini, kami menggunakan fakta bahwa setiap suku dalam deret Fibonacci adalah jumlah dari dua deret sebelumnya, yang secara alami memberikan solusi rekursif.

Di bawah ini adalah program Python yang mencetak deret Fibonacci hingga sejumlah suku tertentu menggunakan rekursi:


def fibonacci_recursive(n): # Kasing dasar jika n <= 0: kembali 0 elif n == 1: kembali 1 kalau tidak: # Kasus rekursif kembalikan fibonacci_recursive(n - 1) + fibonacci_recursive(n - 2) def print_fibonacci_sequence(n): # Cetak urutannya print("Deret Fibonacci hingga", n, "suku: ") untuk saya dalam rentang (n): cetak(fibonacci_recursive(i), end=" ") # Uji fungsinya print_fibonacci_sequence(10)123456789101112131415161718deffibonacci_recursive(n):    # Base case    ifn<=0:        return0    elifn==1:        return1    else:        # Rekursif case        returnfibonacci_recursive(n-1)+fibonacci_recursive(n-2) defprint_fibonacci_sequence(n):    # Cetak sequence    print("Fibonacci Sequence up to",n,"terms: ")    foriinrange(n):        print(fibonacci_recursive(i),end=" ") # Test the functionprint_fibonacci_sequence(10)


Dalam program ini, `fibonacci_recursive` adalah fungsi rekursif yang menghitung suku ke-n dari deret Fibonacci. Kasing dasar memeriksa apakah n adalah 0 atau 1, dalam hal ini mengembalikan n itu sendiri. Jika n lebih besar dari 1, ia menghitung suku ke-n dengan menjumlahkan suku ke-n (n-1) dan (n-2), yang diperoleh dengan pemanggilan rekursif ke fungsi fibonacci_recursive.

Fungsi print_fibonacci_sequence kemudian mencetak deret Fibonacci ke atas ke n suku dengan memanggil fibonacci_recursive untuk setiap suku dalam barisan tersebut.
Bungkus

Kesimpulannya, barisan Fibonacci adalah konsep matematika menarik yang telah menemukan aplikasi luas di berbagai bidang, mulai dari ilmu komputer hingga pemodelan keuangan. Seperti yang telah kami tunjukkan, Python menyediakan platform serbaguna untuk mengimplementasikan deret Fibonacci, karena sintaksnya yang sederhana dan fitur-fiturnya yang canggih. Artikel ini menyajikan tiga metode berbeda untuk menghasilkan deret Fibonacci dengan Python. Metode pertama menghasilkan barisan sampai dengan jumlah suku tertentu, sedangkan yang kedua menghasilkan barisan sampai dengan jumlah maksimum yang ditentukan. Pendekatan ketiga menggunakan rekursi, konsep fundamental dalam ilmu komputer, untuk menghitung dan mencetak urutan. Setiap metode memiliki kekuatannya sendiri dan dapat cocok untuk skenario yang berbeda.



Referensi tecadmin.comArtikel Diperbarui pada: June 21, 2023
Kontributor: Syauqi Wiryahasana
Model: Haifa Manik Intani
Seedbacklink

Recent Posts

TENTANG EMKA.WEB>ID

EMKA.WEB.ID adalah blog seputar teknologi informasi, edukasi dan ke-NU-an yang hadir sejak tahun 2011. Kontak: kontak@emka.web.id.

©2024 emka.web.id Proudly powered by wpStatically