python2.7练习小例子(十七)
程序员文章站
2022-04-18 11:13:24
17):题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。 程序分析:关键是计算出每一项的值。 程序源代码: 以上实例输出结果为: 输出如下所示: Python3 测试实例: pytho ......
17):题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
程序分析:关键是计算出每一项的值。
程序源代码:
#!/usr/bin/python # -*- coding: UTF-8 -*- Tn = 0 Sn = [] n = int(raw_input('n = ')) a = int(raw_input('a = ')) for count in range(n): Tn = Tn + a a = a * 10 Sn.append(Tn) print Tn Sn = reduce(lambda x,y : x + y,Sn) print "计算和为:",Sn
以上实例输出结果为:
n = 4 a = 4 4 44 444 4444 计算和为: 4936
#!/usr/bin/python # -*- coding: UTF-8 -*- a = int(raw_input("a:")) n = int(raw_input("n:")) list=[] for i in range(1,n+1): list.append(int("{}".format(a)*i)) s = reduce(lambda x,y:x+y, list) print list print "计算和为:",s
输出如下所示:
a:4 n:4 [4, 44, 444, 4444] 计算和为: 4936
Python3 测试实例:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- n = int(input('n = ')) a = int(input('a = ')) sum = 0 total = 0 for i in range(n): sum += (10 ** i) total += sum * a print(total)
#usr/bin/env python3 #coding:utf-8 n = int(input('请输入层数:')) a = int(input('请输入计算数:')) Su = 0 Tu = [] for i in range(n): Tu.append(int(str(a)*(i+1))) print('创建的数列为:%s' % Tu) Su = sum(Tu) for i in Tu: Su = Su + i print('数列的和为:%s' % Su)
#!/usr/bin/python # -*- coding: UTF-8 -*- def fadd(): a = input("输入数字:") loopNum = int(input("数字循环次数:")) sum = 0 strsum ="" for i in range(loopNum): sum += int(str(a)*(i+1)) strsum += str((str(a)*(i+1))) + "+" strsum = strsum[:len(strsum)-1] + "=" + str(sum) print strsum fadd()
#!/usr/bin/python # -*- coding: UTF-8 -*- def calculate(a,n): sum = 0 for i in range(1,n+1): x = int(str(a)*i) sum+=x print sum calculate(4,4)
#!/usr/bin/python # -*- coding: UTF-8 -*- n = 4 c = 4 def num(n,time): '拼接数字,如 n =3,time = 4 返回3333' l = [] while time > 0: l.append(str(n)) time -= 1 l = ''.join(l) return int(l) sum = 0 for i in range(1,c + 1): j= num(n,i) sum = sum + j print sum
python3 测试实例:使用递归函数生成每一项的值,并相加:
#!/usr/bin/env python3 def f(n,a): if(n==1): return a else: r=f(n-1,a)*10+a return r n=int(input("n=\n")) a=int(input("a=\n")) print("") sum=0 for i in range(1,n+1): print(f(i,a)) sum=sum+f(i,a) print("sum=",sum)
Python3 测试案例:
#!/usr/bin/python3 n=input('请输入计算数:') m=eval(input('请输入层数:')) s=0 for i in range(1,m+1): a=n*i s+=eval(a) print('{}'.format(s))
#!/usr/bin/python # -*- coding: UTF-8 -*- import math a=input("请输入a:") n=input("请输入数字的个数:") r = 0 for i in range(0,int(n)): num=0 for j in range(0,i+1): num += int(a) * int(math.pow(10,j)) r += num print(r)
Python3 测试:
#!/usr/bin/python3 # -*- coding: UTF-8 -*- def suman(a, n): if n<1: return [] s = [a] m = 10**len(str(a)) for i in range(0, n-1): s.append(s[i]*m + a) return sum(s), s print(suman(4,5))
Python3 下测试:
num=input('输入 1-10 之间的数字:') times=int(input('次数:')) s=0 for i in range(1,times): print(num*i,'+',end='') s+=int(num*i) print(num*times,'=',s+int(num*times))
Python3 下测试,检测输入是否为数字:
a=input('请输入一个整数:') b=input('请输入次数:') d=0 if str.isdigit(a)and str.isdigit(b): for i in range(1,int(b)+1): c=a*i d+=int(c) print('和为:'+str(d)) else: print('请重新输入!')
Python3 测试:
for j in range(5): a = str(input("提示:请输入1~9之间的正整数:")) n = int(input("提示:请输入大于零的正整数:")) if n <= 0 or int(a) >= 10 or int(a) <= 0: print("请根据提示输入正确的数") continue sum = 0 for i in range(1, n+1): print(int(a*i), end = ' ') sum += int(a*i) print("这些数的总和为:%d"%sum)
这个小例子对实际应用也是有帮助的。如果感觉不错的话,请多多点赞支持哦。。。
原文链接:https://blog.csdn.net/luyaran/article/details/80063195