Learn Golang in Days - Day 13

栏目: Go · 发布时间: 5年前

Learn Golang in Days - Day 13

简介

  • 递归
  • 递归,就是自己调用自己
  • Go语言支持递归
  • 类型转换

递归的应用

package main

import "fmt"

func Factorial(n uint64)(result uint64) {
    if(n > 0) {
        result = n * Factorial(n-1)
    }
    
    return 1
}

func main() {
    var i int =15
    fmt.Printf("%d 的阶乘是 %d\n", i, Factorial(uint64(i)))
}

斐波那契数列

  • 通过 Go 语言的递归函数实现斐波那契数列
package main

import "fmt"

func fibonacci(n int) int {
    if n < 2 {
        return n
    }

    return fibonacci(n-2) + fibonacci(n-1)
}

func main() {
    var i int
    for i = 0; i < 10; i++ {
        fmt.Printf("%d\t", fibonacci(i))
    }
}

类型转换

  • 类型转换
package main

import "fmt"

func main() {
    var sum int = 18
    var count int = 5
    var mean float32

    mean = float32(sum) / float32(count)

    fmt.Printf("%f / %d = %f", float32(sum), count, mean)
}

以上所述就是小编给大家介绍的《Learn Golang in Days - Day 13》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

高等应用数学问题的MATLAB求解

高等应用数学问题的MATLAB求解

薛定宇、陈阳泉 / 清华大学出版社 / 2008-10 / 49.00元

薛定宇和陈阳泉编著的《高等应用数学问题的MATLAB求解》首先介绍了MATLAB语言程序设计的基本内容,在此基础上系统介绍了各个应用数学领域的问题求解,如基于MATLAB的微积分问题、线性代数问题的计算机求解、积分变换和复变函数问题、非线性方程与最优化问题、常微分方程与偏微分方程问题、数据插值与函数逼近问题、概率论与数理统计问题的解析解和数值解法等,还介绍了较新的非传统方法,如模糊逻辑与模糊推理、......一起来看看 《高等应用数学问题的MATLAB求解》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具