Java打印斐波那契前N项的实现示例
作者:R.I.PKobe 发布时间:2022-12-03 21:18:10
标签:Java,斐波那契
题外
由于idea原因 用注解test无法在控制台上输入所以写死到程序里了,版本都30.9102了为什么还是这样啊,intelJ你们该反思了!!!
用intelJ IDEA的小伙伴有遇到这种测试情况吗,如果项目上有测试用例需要自己单元测试,怎么解决控制台输入问题(@test情况下),直接改main方法的那个就算了。~~
斐波那契的认识
斐波那契数列前2项为1,从第3项开始为该项的前2项和。
eg:1,1,2,3,5,8…
f(n)=f(n-1)+f(n-2)
代码参考
import org.junit.Test;
import java.util.Scanner;
import static java.lang.System.out;
/**
* ClassName:Maintest
*
* @author: zhengkw
* @description: 测试
* @date: 20/02/01下午 7:34
* version:
* @since: jdk 1.8
*/
public class Maintest {
@Test
public void printFibonacciTest() {
FibonacciSequence fibonacciSequence = new FibonacciSequence();
//打印一个斐波那契前i项
// Scanner sc = new Scanner(System.in);
// out.println("打印多少项斐波那契");
// int i=sc.nextInt();
int i =8;
for (int n=1;n<i;n++){
out.print(fibonacciSequence.fibonacci(n)+"\t\t");
}
}
}
import static java.lang.System.out;
/**
* @ClassName:FibonacciSequence
* @author: zhengkw
* @description: 斐波那契数列递归应用
* @date: 20/02/07下午 4:10
* @version:1.0
* @since: jdk 1.8
*/
public class FibonacciSequence {
/**
* @param n 项数
* @descrption: 生成第n项元素
* @return: int
* @date: 20/02/07 下午 5:03
* @author: zhengkw
*/
public int fibonacci(int n) {
if (n < 3) {
return 1;
} else {
return fibonacci(n - 2) + fibonacci(n - 1);
}
}
}
来源:https://blog.csdn.net/qq_37714755/article/details/104212704
0
投稿
猜你喜欢
- 今天我做的是一个自定义刻度尺控件,由于项目需求需要使用刻度尺那样滑动选择,由于对自定义控件的认识还不够深入,于是花了一周多时间才把这个控件给
- 需求在前面的文章里使用.NET 6开发TodoList应用之领域实体创建原理和思路,我们留了一个坑还没有填上,就是在数据库保存的时
- Spring Data JPA映射自定义实体类这个问题困扰了我2天=-=,好像也能使用 jpql解决先说下自己的功能:查询oracle最近s
- 在我们编程过程中如果需要执行一些简单的定时任务,无须做复杂的控制,我们可以考虑使用JDK中的Timer定时任务来实现。下面LZ就其原理、实例
- int n;int &m = n;在C++中,多了一个C语言没有的引用声明符&,如上,m就是n的引用,简单的说m就是n的别名
- 前言Java的StringUtil.isEmpty(str)和"".equals(str)都是用来判断字符串是否为空的方
- 概述企业内部一般都有一套单点登录系统(常用的实现有apereo cas),所有的内部系统的登录认证都对接它。本文介绍spring boot的
- 话不多说,请看下面//C# 代码int year = DateTime.Now.Year;int month = DateTime.Now.
- InterProcessMutex内部实现了zookeeper分布式锁的机制,所以接下来我们尝试使用这个工具来为我们的业务加上分布式锁处理的
- 本文实例为大家分享了unity实现场景跳转的具体代码,供大家参考,具体内容如下话不多说直接开始操作步骤。1.打开我们的unity创建一个工程
- java文件打包jar运行有效步骤:1.cmd 到当前目录(默认包主类所在目录为例) set classpath = 默认包主类所在目录2.
- 本文实例为大家分享了Unity shader实现自由放大缩小效果的具体代码,供大家参考,具体内容如下代码:以下实现的shader代码:Sha
- 1、什么是值传递,什么是引用传递?值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数
- 1.点 “window”-> "Preferences" -> "Java" ->
- 平常我们工作中基本最多两级嵌套,但是有时候难免会遇到 * 嵌套的业务场景,笔者最近就碰到了,使用一般的嵌套发现赋值为空,这可难倒了菜逼的我,后
- 本文实例讲述了spring boot validation参数校验。分享给大家供大家参考,具体如下:对于任何一个应用而言在客户端做的数据有效
- 引言在实际分布式项目中延迟任务一般不会使用JDK自带的延迟队列,因为它是基于JVM内存存储,没有持久化操作,所以当服务重启后就会丢失任务。在
- 本文介绍了SpringCloud +Zookeeper完成配置中心,分享给大家,具有如下:使用场景项目配置更改不需要打包,重启提供配置文件的
- MyBatis简介MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。 MyBatis 消除了几乎所有的 JDBC
- maven使用exec插件运行java main方法,以下是3种不同的操作方式。一、从命令行运行1、运行前先编译代码,exec:java不会