您的位置:首页 > 其它

九九乘法表

2016-05-25 10:07 274 查看
程序地址:http://www.cheemoedu.com/exercise/2

问题描述:
打印乘法表如图:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

我的思路:
第一次循环范围为range(1,10),因为每次都是从i开始,直到i*i结束,所以第二次循环范围为range(1,i+i),然后格式化输出结果,此时还没有达到乘法表的结果而是一行输出,只需再判断一下第一个数是否等于第二个数,如果等于,就说明此行已结束,换行即可;

我的代码:
for i in range(1,10):
for j in range(1,i+1):
print "%d*%d=%d   " % (i,j,i*j),
if i==j:
print "\n"
效果图:
1*1=1

2*1=2 2*2=4

3*1=3 3*2=6 3*3=9

4*1=4 4*2=8 4*3=12 4*4=16

5*1=5 5*2=10 5*3=15 5*4=20 5*5=25

6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36

7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49

8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64

9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

示例代码:
def fun():
for line in xrange(1,10):
for row in xrange(1,line + 1):
s=str(line) + ' * ' + str(row) + ' = ' + str(line * row)
print s.ljust(12),'|',
print ''

fun()


效果图:
>>>
1 * 1 = 1 | 2 * 2 = 4 | 3 * 3 = 9 | 4 * 4 = 16 | 5 * 5 = 25 | 6 * 6 = 36 | 7 * 7 = 49 | 8 * 8 = 64 | 9 * 9 = 81 |
>>>
示例代码有问题,是错误的;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: