【JAVA练习】- 一个逻辑题
2024-08-29 00:02:22
打印
1
3 4
5 8 12
7 12 20 32
9 16 28 48 80
.....
输入任意一个奇数,输出那一行的数据
第一种方法找到规律进行归纳等式:
public static void main(String[] args) {
System.out.println("请输入任意一个奇数: ");
Scanner input = new Scanner(System.in);
int i = input.nextInt();//任意一个奇数
input.close();
int j = (i + 1) / 2;//行数
for(int p = 1; p <= j; p++) {//p为行数的项数
System.out.print( (int)( Math.pow(2,p) * j - p * Math.pow(2,p-1) ) + " ");//观察得出数值与项数,行数的关系
}
第二中方法递归方法:
int[][] num = new int[j][j];//二维数组储存数据
for(int p = 0; p < j; p++) {//p代表数组纵轴与上面的p不同
for(int m = 0; m < j; m++) {//m代表数组横轴
if(m == 0) {//横轴为首项时,数值为2*行数-1 行数=p+1
num[p][m] = 2*p + 1;
}
else if( p > 0) { //当纵轴不为0时,即不是第一行时
num[p][m] = num[p][m-1] + num[p-1][m-1];
}
}
}
for(int m = 0; m < j; m++) {
System.out.print(num[j-1][m]+" ");
}
最新文章
- 『.NET Core CLI工具文档』(六)dotnet 命令
- 实现类似QQ对话聊天功能脚本
- 《Linux内核分析》第五周 扒开系统调用的三层皮(下)
- DEV GridControl.TableView FocusedRow选中行背景颜色
- oracle 解锁表
- oracle 10g 学习之游标使用和异常介绍(11)
- iOS开发之总结
- “我爱淘”冲刺阶段Scrum站立会议3
- Node.js 学习(四)Node.js 回调函数
- Html5 audio stop
- Oracle EBS-SQL (MRP-7):检查MRP计划运行报错原因之超大数据查询2.sql
- cpu亲和力总结taskset和setcpu及其他相关
- JSON、JSONP、Ajax的区别
- java面向对象的三大特性——封装
- 非负矩阵分解NMF
- flutter 新增安卓ios 闪图
- C#生成不重复的N位随机数
- 高度自适应不能触发transition的解决方法
- 【oneday_onepage】——Tastes differ!
- linux和mac使用virtualenv使用和安装
热门文章
- https webservice通讯 参考网址 http://blog.csdn.net/small____fish/article/details/8214938
- Luogu P1892 [BOI2003]团伙
- jquery源码分析(七)——事件模块 event(二)
- UCloud 的安全秘钥
- [BZOJ1031][JSOI2007]字符加密Cipher(后缀数组)
- 造成segment fault,产生core dump的可能原因
- RDS for MySQL Online DDL 使用
- python lmdb demo 这接口和BDB一样恶心啊!
- hdoj-看病要排队
- [POJ 1745] Divisbility