关于FizzBuzz问题
来源:互联网 发布:修改图片尺寸的软件 编辑:程序博客网 时间:2024/06/14 07:51
最近,在一些论坛看了一些面试题目,其中有一道题是用java代码实现FizzBuzz问题。FizzBuzz是什么东东呢?。。。先找下度娘吧,看看什么是FizzBuzz。原来FizzBuzz是借鉴一个英国学校里小孩子经常玩的游戏。改编后的题目大概是这样的 “编写程序把1-100的数字打印出来。不过,要把3的倍数打成"Fizz",把5的倍数打成"Buzz"。而如果一个数既是3的倍数。又是5的倍数时,就打成"Fizz-Buzz",其余的输出数字。然后在论坛看见这道编程题很多计算级系的高材生(博士、硕士之类的)都不能现场写出来,更有多年经验自称高级开发程序员在几分钟内也写不出来。。。(这),不过既然说到这了,那就先打开Eclipse来考验下自己,最后我是通过两种方式来实现的:
第一种:利用循环和条件判断,过滤满足特定条件的数字,然后输出结果,代码如下:
for (int i = 1; i <= 100; i++) { if (i%3==0) { if(i%5==0){ System.out.println("FizzBuzz"+i); continue; }else { System.out.println("Fizz"+i); continue; } }else if(i%5==0){ System.out.println("Buzz"+i); continue; }else { System.err.println(i); continue; }}
这段代码中,符合即是3的倍数又是5的倍数这一条件,也可以用3和5的最小公倍数15来实现,具体代码就不贴出来了。
运行结果为:
第二种:是用三元运算符来实现,代码如下:
String result = null; for (int i = 1; i <= 100; i++) { result = i%3==0?(i%5==0? result="FizzBuzz"+i:"Fizz"+i):(i%5==0?"Buzz"+i:i).toString(); System.out.println(result); }
运行结果为:
好了,以上就是对FizzBuzz的两种解法。
0 0
- 关于FizzBuzz问题
- FizzBuzz问题
- FizzBuzz问题
- FizzBuzz问题
- FizzBuzz问题
- FizzBuzz问题
- 面试---FizzBuzz问题
- python FizzBuzz问题
- FizzBuzz
- FizzBuzz
- FizzBuzz
- FizzBuzz
- FizzBuzz
- 杂记——FizzBuzz问题
- 关于FizzBuzz我写的例子
- 我对FizzBuzz问题的小小思考
- FizzBuzz问题&&斐波那契数列
- 简单却又复杂的FizzBuzz面试编程问题
- UVA 10069 Distinct Subsequences(dp+高精度加法)
- UVA 796 - Critical Links (求桥按序输出)
- Java常见问题及答案
- MVC三层模(struts+spring+hibernate(SSH)总结
- 发现的一些在线地图库
- 关于FizzBuzz问题
- 蓝桥杯试题集 基础练习 数列排序
- pycharm+django搭建简单blog
- win7下IIS的安装和配置 图文教程
- 新博客地址
- id ,NSObject, id<NSObject>区别
- 排序:选择排序
- 求1-1/2+1/3-1/4+...+1/99-1/100
- HEVC逆扫描之一:在HM代码中的位置