python:第三章 程序流程控制作业2

作业习题

1. 编写程序,计算s=a+aa+aaa+……+aaa…aaa的值,其中a是1~9之间的某个数字,
   n是一个正整数。例如,当a=2,n=5时,s=2+22+222+2222+22222=246903. 编写程序,使用循环语句打印如下九九乘法表。
             九九乘法表
	1*1=1	1*2=2	1*3=3		1*9=9
	2*1=1	2*2=4	2*3=6		2*9=18
	…………
	9*1=9	9*2=18	9*3=27		9*9=81
4. 编写程序,使用双重循环语句打印以下图形:

在这里插入图片描述

5. 编写程序,把10元钱拆分为1元、2元和5元三种货币的各种组合,并打印出来。
6. 设一根铜管长317米,现要求将其截成15米和27米两种长度的短管,
   且两种短管至少各有一根。问每种规格的短管各为多少根时,剩余的残料最小。
   请编写程序,找出所有的最佳方案。

参考代码

# 暨南大学 王杰安 13430898693 转载请注明出处
def separate():
    print('##=============================##')
# 1
def calculate(a, n):
    value = [int(str(a)*i) for i in range(1,n+1)]
    print('+'.join(map(str,value)) + '={}'.format(sum(value)))

calculate(2, 5)
calculate(3,6)
separate()
#2
print('九九乘法表')
for i in range(1,10):
    for j in range(1,10):
        if j == 9:
            print('{:<8}'.format('{}*{}={}'.format(i, j, i*j)))
        else:
            print('{:<8}'.format('{}*{}={}'.format(i, j, i*j)),end=' ')
separate()
#3
for i in range (1,6):
    value = ''.join(map(str, list(map(lambda x: x, range(i,6)))))
    print('{:>5}'.format(value))
separate()
for i in range (2,7):
    value = ''.join(map(str, list(map(lambda x: x, range(1,i)))))
    print('{:>5}'.format(value))
separate()
for i in range (1,6):
    print('{:^15}'.format('*'*(2*i-1)))
separate()
for i in range (1,6):
    print('{:^15}'.format('*'*(11-2*i)))
separate()
for i in range (1,7):
    value = ''.join(map(str, list(map(lambda x: chr(64+x), range(i,6)))))
    print('{:>5}'.format(value))
separate()
for i in range (1,6):
    value = ''.join(map(str, list(map(lambda x: chr(64+x), range(6-i,6)))))
    print('{:>5}'.format(value))
separate()
# 3
for i in range (int(10/1)+1):
    for j in range (int(10/2)+1):
        if 10-i-j > 0 and (10-i-j*2)%5==0:
            print('1元:{} ,2元:{} ,5元:{}'.format(i, j, (10-i-j*2)//5))
separate()
# 4
option = {}
for i in range (1, int(317/15)+1):
    residual = divmod(317 - 15*i,37)
    option['[{},{}]'.format(i, residual[0])] = residual[1]
print(option)
print('最佳方案:',min(option,key=option.get))

运行结果

2+22+222+2222+22222=24690
3+33+333+3333+33333+333333=370368
##=============================##
九九乘法表
1*1=1    1*2=2    1*3=3    1*4=4    1*5=5    1*6=6    1*7=7    1*8=8    1*9=9   
2*1=2    2*2=4    2*3=6    2*4=8    2*5=10   2*6=12   2*7=14   2*8=16   2*9=18  
3*1=3    3*2=6    3*3=9    3*4=12   3*5=15   3*6=18   3*7=21   3*8=24   3*9=27  
4*1=4    4*2=8    4*3=12   4*4=16   4*5=20   4*6=24   4*7=28   4*8=32   4*9=36  
5*1=5    5*2=10   5*3=15   5*4=20   5*5=25   5*6=30   5*7=35   5*8=40   5*9=45  
6*1=6    6*2=12   6*3=18   6*4=24   6*5=30   6*6=36   6*7=42   6*8=48   6*9=54  
7*1=7    7*2=14   7*3=21   7*4=28   7*5=35   7*6=42   7*7=49   7*8=56   7*9=63  
8*1=8    8*2=16   8*3=24   8*4=32   8*5=40   8*6=48   8*7=56   8*8=64   8*9=72  
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  
##=============================##
12345
 2345
  345
   45
    5
##=============================##
    1
   12
  123
 1234
12345
##=============================##
       *       
      ***      
     *****     
    *******    
   *********   
##=============================##
   *********   
    *******    
     *****     
      ***      
       *       
##=============================##
ABCDE
 BCDE
  CDE
   DE
    E
     
##=============================##
    E
   DE
  CDE
 BCDE
ABCDE
##=============================##
1:0 ,2:0 ,5:2
1:0 ,2:5 ,5:0
1:1 ,2:2 ,5:1
1:2 ,2:4 ,5:0
1:3 ,2:1 ,5:1
1:4 ,2:3 ,5:0
1:5 ,2:0 ,5:1
1:6 ,2:2 ,5:0
1:8 ,2:1 ,5:0
##=============================##
{'[1,8]': 6, '[2,7]': 28, '[3,7]': 13, '[4,6]': 35, '[5,6]': 20,
 '[6,6]': 5, '[7,5]': 27, '[8,5]': 12, '[9,4]': 34, '[10,4]': 19,
 '[11,4]': 4, '[12,3]': 26, '[13,3]': 11, '[14,2]': 33, '[15,2]': 18,
  '[16,2]': 3, '[17,1]': 25, '[18,1]': 10, '[19,0]': 32, '[20,0]': 17,
   '[21,0]': 2}
   
最佳方案: [21,0]

好物分享
python: 数据科学代码速查表(强烈推荐!)
入门总结:
python入门:有关字符串的操作代码总结
python入门:有关math包以及内置函数的数值操作代码总结
Python练习:
python:第二章 字符串和数值程序作业
python:第三章 程序流程控制作业
python:第三章 程序流程控制作业2
python:第四章 列表与元组作业
python:第四章 列表与元组作业2

发布了20 篇原创文章 · 获赞 3 · 访问量 1495

猜你喜欢

转载自blog.csdn.net/qq_42830966/article/details/105233515
今日推荐