黑马程序员——阶乘的两种实现方法及水仙花数的打印
2016-01-02 00:43
375 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
需求:分别使用循环和递归打印5的阶乘
需求:分别使用循环和递归打印5的阶乘
/* * 两种方式实现求5的阶乘 * 1.循环 * 2.递归 */ public class Factorial5 { public static void main(String[] args) { System.out.println(factorialM1(5)); System.out.println(factorialM2(5)); } // 写一个使用循环求n的阶乘的方法 public static int factorialM1(int n) { int y = 1; for (int x = 1; x <= n; x++) { y *= x; } return y; } // 写一个使用递归求n的阶乘的方法 /* * 分析: * 如果n==1,return n; * 如果n!=1,return n*jc(n-1) */ public static int factorialM2(int n) { if(n==1){ return n; }else{ return n*factorialM2(n-1); } } }打印水仙花数:指一个三位数,其各位数字的立方和等于该数本身。
/* * 打印水仙花数 * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。 * 分析: * 3位数指明了范围是100-999,可以使用for来限定范围 * 分别获取各位上的数,判断该数是不是水仙花数,如果是则打印 * 获取个位数:n%10 * 获取十位数:n/10%10 * 获取百位数:n/100%10 * */ public class PrintDaffodil { public static void main(String[] args) { for(int x=100;x<1000;x++){ int ge = x%10; int shi = x/10%10; int bai = x/100%10; if(ge*ge*ge+shi*shi*shi+bai*bai*bai==x){ System.out.println(x); } } } }
相关文章推荐
- java基础(一)
- 怎样学习java,漫谈java学习之路
- 设置jdk环境变量时lib中的rt.jar ,dt.jar ,tool.jar是什么,作用是什么
- Java 集合系列11之 Hashtable详细介绍(源码解析)和使用示例
- 学习日志---treemap
- java基础知识笔记
- java中web应用中重定向与转发的区别
- java基础篇---枚举详解
- java基础数据类型包装类
- equals与null
- 【Java基础】Java入门程序&基础数据类型(转换)&逻辑判断&运算等
- Java.基础(学习笔记)
- 一个简单的加密解密程序
- 【代码练习】用FIle.list()打印多级目录
- 【学习日记】有关java的IO的知识点总结
- JAVA基础-IO流
- 用java解决约瑟夫问题
- date and time
- Java中基础数据类型
- java基础之IO操作