Jam*_*pam -1 python algorithm math
编写一个名为FooBar的函数,它接受输入整数n并在新行中打印从1到n的所有数字.如果数字可被3整除,则打印"Foo",如果数字可被5整除,则打印"Bar",如果数字可被3和5整除,则打印"FooBar".否则只需打印该号码.
for example FooBar(15) should print as follows:
1
2
Foo
4
Bar
Foo
7
8
Foo
Bar
11
Foo
13
14
FooBar
Run Code Online (Sandbox Code Playgroud)
它很容易但面试正在检查更好的算法.
我首先想到的是:
for i in xrange(1,101): print [i,'Fizz','Buzz','FizzBuzz'][(i%3==0)+2*(i%5==0)]
Run Code Online (Sandbox Code Playgroud)
如果您有任何其他解决方法,请建议.
小智 5
def foobar(n):
for x in range(n):
print x%3/2 * 'Foo' + x%5/4 * 'Bar' or x+1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
444 次 |
| 最近记录: |