Dãy Fibonacci là một chuỗi số tự nhiên bắt đầu từ 0 và 1, sau đó mỗi số tiếp theo là tổng của hai số trước đó. Trong bài viết này, chúng ta sẽ tìm hiểu cách viết code để kiểm tra số fibonacci java và xuất ra n số đầu tiên của dãy số.
Xem thêm:
- Bài thực hành 1: nhập xuất mảng trong Java
- Bài thực hành 3: tính diện tích tam giác theo công thức Heron java
1. Dãy số Fibonacci là gì?
Dãy số Fibonacci là dãy vô hạn các số nguyên dương bắt đầu bằng hai phần tử 0 và 1. Các phần tử sau đó tuân theo quy tắc: mỗi phần tử luôn bằng tổng hai phần tử trước nó.
Ví dụ: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89,…
Công thức truy hồi của dãy số Fibonacci là:
S(n) = S(n-1) + S(n-2) với S(0) = 0 và S(1) = 1.
2. Bài toán in ra n số đầu tiên của dãy Fibonacci
Bài 2 (TH-LTHDT-02): Viết chương trình nhập vào số nguyên n và thực hiện. Xuất ra màn hình n số đầu tiên của chuỗi Fibonaci (có 2 giá trị đầu là 1 và 1).
Ví dụ đầu ra nếu nhập n=10:
1, 1, 2, 3, 5, 8, 13, 21, 34, 55
Bài viết liên quan: [Shell Script] Tính tổng n số hạng đầu tiên của dãy Fibonacci
3. Ý tưởng thực hiện
Để giải bài toán, chúng ta thực hiện các bước sau:
- Bước 1: Khai báo một mảng
fibSequence
để lưu trữ chuỗi Fibonacci và biếnn
để lưu số nguyên n nhập vào từ người dùng. - Bước 2: Sử dụng đối tượng
Scanner
để nhận giá trị n từ người dùng. - Bước 3:
- Kiểm tra nếu n = 1, tức là người dùng chỉ muốn in ra số đầu tiên của chuỗi Fibonacci. Trong trường hợp này, kết quả sẽ là số 1.
- Nếu n > 1, chương trình tạo một mảng
fibSequence
với kích thước n để lưu trữ chuỗi Fibonaci. - Chương trình gán giá trị đầu tiên và thứ hai của chuỗi Fibonacci (1 và 1) vào hai phần tử đầu tiên của mảng
fibSequence
. - Sử dụng vòng lặp for từ i = 2 đến n-1, chương trình tính giá trị của các phần tử còn lại của chuỗi Fibonacci dựa trên quy tắc:
fib(i) = fib(i-1) + fib(i-2)
. Kết quả sẽ được lưu vào mảngfibSequence
.
- Bước 4: In ra từng phần tử của mảng
fibSequenc
.
3. Code in ra n số đầu tiên Fibonacci
Dưới đây là mã nguồn đầy đủ để in ra n số đầu tiên của dãy Fibonacci:
/*Viết chương trình nhập vào số nguyên n và thực hiện: Xuất ra màn hình n số đầu tiên của chuỗi Fibonaci*/ package bai2; import java.util.Scanner; public class Bai2 { public static void main(String[] args) { int[] fibSequence; int n; Scanner sc = new Scanner(System.in); // nhan gia tri tu ban phim System.out.print("Nhap so nguyen n: "); n = sc.nextInt(); if (n == 1) { System.out.println("Day Fibonacci: " + 1); } else { fibSequence = new int[n]; fibSequence[0] = 1; fibSequence[1] = 1; for (int i = 2; i < n; i++) { // cong thuc tinh so Fibonaci fibSequence[i] = fibSequence[i - 1] + fibSequence[i - 2]; } System.out.print("Day Fibonacci: "); for (int i = 0; i < n; i++) { System.out.print(fibSequence[i] + " "); } System.out.println(); } } }
4. Kết quả
Full source code:
Hy vọng bài viết này, ttnguyen đã giúp bạn tìm hiểu cách viết chương trình Java để xuất ra n số đầu tiên của dãy Fibonacci. Qua đây chúng ta đã nắm được các khái niệm cơ bản như gán giá trị, vòng lặp, và biểu thức toán học,…
Bài viết liên quan: