VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
Python cơ bản Câu Lệnh Điều Khiển
Python Tkinter(GUI) Python Web Blocker Python Numpy Python Django Python Flask

Bài tập Python

Bài tập Python có lời giải Bài tập quản lý sinh viên trong Python

Bài Tập Python Kinh Điển

Check số nguyên tố trong Python Tính giai thừa trong Python Chuyển đổi hệ cơ số trong Python Dãy số Fibonacci trong Python

Bài Tập Vòng Lặp Python

Bài tập vòng lặp trong Python Vẽ tam giác đều trong Python Vẽ tam giác vuông cân trong Python Vẽ tam giác Floyd trong Python Vẽ tam giác Pascal trong Python

Bài Tập python Cơ Bản

Giải phương trình bậc 2 trong Python Tìm UCLN và BCNN Liệt kê tất cả số nguyên tố nhỏ hơn n Liệt kê n số nguyên tố đầu tiên Liệt kê tất cả số nguyên tố có 5 chữ số Phân tích số nguyên n thành tích các số nguyên tố Tính tổng của các chữ số của một số nguyên n Tìm số thuận nghịch Liệt kê số Fibonacci nhỏ hơn n là nguyên tố

Bài Tập Python Nâng Cao

Bài tập quản lý sinh viên trong Python
1 / 3
❮ ❯

Dãy số Fibonacci trong Python


Chuyển đổi hệ cơ số trong Python
Python - Tìm ước số chung lớn nhất và bội số chung nhỏ nhất của 2 số nguyên dương

Nội dung chính

  • Đề bài
  • Lời giải
  • 1. Tính dãy số Fibonacci không dùng hàm đệ quy
  • 2. Tính dãy số Fibonacci sử dụng hàm đệ quy

Đề bài

Hãy viết chương trình tìm n số Fibonacci đầu tiên.

Quy luật của dãy số Fibonacci: số tiếp theo bằng tổng của 2 số trước, 2 số đầu tiên của dãy số là 0, 1. Ví dụ: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ...


Dãy số Fibonacci trong Python

Lời giải

Có 2 cách để viết chương trình dãy số Fibonacci trong python

  • Tính dãy số Fibonacci trong python không dùng phương pháp đệ quy
  • Tính dãy số Fibonacci trong python sử dụng phương pháp đệ quy

1. Tính dãy số Fibonacci không dùng hàm đệ quy

Ví dụ chương trình tính dãy số Fibonacci không sử dụng hàm đệ quy:


"""
 * Tính số fibonacci thứ n
 *
 * @param n: chỉ số của số fibonacci tính từ 0
 *           vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2
 * @return số fibonacci thứ n
 """
def fibonacci(n):
    f0 = 0;
    f1 = 1;
    fn = 1;

    if (n < 0):
        return -1;
    elif (n == 0 or n == 1):
        return n;
    else:
        for i in range(2, n):
            f0 = f1;
            f1 = fn;
            fn = f0 + f1;
        return fn;

print("10 số đầu tiên của dãy số fibonacci: ");
sb = "";
for i in range(0, 10):
    sb = sb + str(fibonacci(i)) + ", ";
print(sb)

Kết quả:

10 số đầu tiên của dãy số fibonacci: 
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 


2. Tính dãy số Fibonacci sử dụng hàm đệ quy

Ví dụ chương trình tính dãy số Fibonacci sử dụng hàm đệ quy:


"""
 * Tính số fibonacci thứ n
 *
 * @param n: chỉ số của số fibonacci tính từ 0
 *           vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2
 * @return số fibonacci thứ n
"""
def fibonacci(n):
    if (n < 0):
        return -1;
    elif (n == 0 or n == 1):
        return n;
    else:
        return fibonacci(n - 1) + fibonacci(n - 2);

print("10 số đầu tiên của dãy số fibonacci: ");
sb = "";
for i in range(0, 10):
    sb = sb + str(fibonacci(i)) + ", ";
print(sb)

Kết quả:

10 số đầu tiên của dãy số fibonacci: 
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 

Chuyển đổi hệ cơ số trong Python
Python - Tìm ước số chung lớn nhất và bội số chung nhỏ nhất của 2 số nguyên dương

Recent Updates

Sắp Tết 2024 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2024?Vẽ tam giác Pascal trong PythonVẽ tam giác Floyd trong PythonVẽ tam giác đều trong PythonBài tập vòng lặp trong PythonBài tập quản lý sinh viên trong PythonBài tập Python có lời giảiVẽ tam giác vuông cân trong PythonCheck số nguyên tố trong PythonCách cài đặt Python (Thiết lập môi trường)Hướng dẫn lập trình Python với EclipseHướng dẫn lập trình Python với PyCharm Community EditionHướng dẫn lập trình Python với Visual Studio Code

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml