Java编程经典实战:斐波那契数列、素数判定与水仙花数
需积分: 9 160 浏览量
更新于2024-07-28
收藏 107KB DOC 举报
在本文档中,我们讨论了三个关于Java编程的经典习题,涵盖了递归算法、素数判断以及数学问题的编程实现。
1. **斐波那契数列问题** - 题目1涉及到了经典的递归问题,即著名的斐波那契数列。在`lianxi01`类的`main`方法中,通过for循环模拟了一对兔子繁殖的过程,从第3个月开始,每个月兔子对数按照斐波那契数列的方式增长。斐波那契数列是一个自相似序列,前两项通常为1,后续每一项都是前两项之和。代码中的`f1`和`f2`分别代表当前月和上个月的兔子对数,`M`设为24个月,程序逐月计算并打印出兔子的总数,展示了递归算法的实际应用。
2. **素数判断** - 在`lianxi02`类中,通过双重循环实现了判断101至200之间的素数。首先,`count`变量用于统计素数的数量。外部循环遍历101到199(跳过偶数),内部循环检查每个数`i`是否能被2到其平方根之间的整数整除。如果找到因子,则`b`标志设为`false`并跳出循环;否则`b`保持为`true`。当外部循环结束,`b`为`true`的`i`值即为素数,计数器`count`加一,并输出素数。这里体现了基本的数学逻辑和条件判断在编程中的运用。
3. **水仙花数** - 最后一个程序`lianxi03`聚焦于数学趣味问题,即寻找"水仙花数"。水仙花数定义为一个三位数,其各位数字的立方和等于其本身。通过`for`循环遍历101至999范围内的每个三位数,将每一位数字分别提取出来(`b1`, `b2`, `b3`),计算它们的立方和并与原数`m`比较。当满足`(b3 * b3 * b3 + b2 * b2 * b2 + b1 * b1 * b1) == m`的条件时,说明找到了一个水仙花数,将其打印出来,展示了数值计算和条件语句在解决特定数学问题时的编程技巧。
这三个Java程序不仅锻炼了编程基础,还涉及到了递归、数学算法和条件控制等核心概念,是学习Java编程过程中的良好练习案例。通过解决这些问题,程序员可以加深对数据结构、循环、函数和逻辑思维的理解。
2011-08-25 上传
2020-12-06 上传
2011-04-01 上传
2023-05-27 上传
226 浏览量
ian003
- 粉丝: 0
- 资源: 27
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载