ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介、代码实现、exe程序应用(斐波纳契时钟设计)之详细攻略

2021-06-16 22:51:59  阅读:227  来源: 互联网

标签:exe 数列 代码 编程 波纳契 斐波 那契


数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介、代码实现、exe程序应用(斐波纳契时钟设计)之详细攻略

 

 

 

目录

斐波那契数列的简介

斐波那契数列代码实现

1、python代码实现

2、Java代码实现

3、go语言代码实现

exe程序应用(斐波纳契时钟设计)


 

 

 

斐波那契数列的简介

         斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(≥ 3,∈ N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从 1963 年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

 

 

斐波那契数列代码实现

1、python代码实现

import time

# recursive method
def rec_fib(n):
    if n <= 1:
        return n
    else:
         return rec_fib(n-1) + rec_fib(n-2)

time_cost = 0
for _ in range(100):
    # time cost of cursive method
    t1 = time.time()
    t = rec_fib(38)
    t2 = time.time()
    time_cost += (t2-t1)


print('结果:%s, 平均运行时间:%s'%(t, time_cost/100))

2、Java代码实现

import java.util.Date;

public class Main {

    // 主函数
    public static void main(String[] args) {
        double time_cost = 0;
        for (int i=0; i<100; i++) {
            Date start_time = new Date(); //开始时间
            int n = 38;
            rec_fib(n);
            Date end_time1 = new Date(); // 结束时间
            Long cost_time1 = end_time1.getTime() - start_time.getTime();  // 计算时间,返回毫秒数
            time_cost += cost_time1;
        }
        System.out.println(String.format("Average cost time is %.3fs.", time_cost*1.0/1000));
    }

    // 利用递归方法计算斐波那契数列的第n项
    public static int rec_fib(int n){
        if(n == 0)
            return 0;
        if(n ==1)
            return 1;
        else
            return rec_fib(n-1) + rec_fib(n-2);
    }

}

3、go语言代码实现

// rec_fib
package main

import (
    "fmt"
    "time"
)

// 函数返回第n个斐波那契数
func rec_fib(num int) int {
    if num <= 1 {
        return num
    } else {
        return rec_fib(num-1) + rec_fib(num-2)
    }
}

func main() {
    var time_cost float64
    for i := 0; i < 100; i++ {
        t1 := time.Now()
        n := 38
        rec_fib(n)
        t2 := time.Now()
        time_cost += t2.Sub(t1).Seconds()
    }
    fmt.Printf("Average cost time: %f.\n", time_cost/100)
}

 

 

 

 

exe程序应用(斐波纳契时钟设计)

斐波那契时钟,以斐波那契数列显示时间。以颜色方块来显示小时和分钟。

 

 

 

 

 

 

 

 

 

标签:exe,数列,代码,编程,波纳契,斐波,那契
来源: https://blog.51cto.com/u_14217737/2912897

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有