练习十八:求这样的一组数据和,s=a+aa+aaa+aaaa+aa...a,其中a为一个数字
例如:2+22+222+2222+22222(此时共有5个数字相加),这里具体几个数字由键盘控制
方法一:普通做法
a = int(input("计算要加的数(1-9之间数):"))
count = int(input("总共要加多少次:"))
sumall = 0 #c初始化最终所求的和
for i in range(1,count+1):
s = 0 #临时用的变量
for j in range(i):
s = s + 10 ** j #先计算10**0
sumall = sumall + (a * s) #再计算a*s
print(sumall)
执行结果:
计算要加的数(1-9之间数):2
总共要加多少次:3
2
24
246
进阶版,起始就是利用了函数
a = int(input("计算要加的数(1-9之间数):"))
list1 = [a]
count = int(input("总共要加多少次:"))
sumall = 0
def sum_one(a,count):
for i in range(1,count):
new_a = list1[-1] + a*(10**i)
list1.append(new_a)
return list1
print(sum_one(a,count))
for i in list1:
sumall += i
print(sumall)
执行结果:
计算要加的数(1-9之间数):2
总共要加多少次:2
[2, 22]
24
再来改下:
from functools import reduce #python3的reduce内置函数使用时必须导入
a = int(input("计算要加的数(1-9之间数):"))
list1 = [a]
count = int(input("总共要加多少次:"))
sumall = 0
def sum_one(a,count):
for i in range(1,count):
new_a = list1[-1] + a*(10**i)
list1.append(new_a)
return list1
print(sum_one(a,count))
sumall = reduce(lambda arg1, arg2: arg1 + arg2, list1)
print(sumall)
执行结果:
计算要加的数(1-9之间数):2
总共要加多少次:2
[2, 22]
24
方法二:递归
a = int(input("计算要加的数(1-9之间数):"))
count = int(input("总共要加多少次:"))
sumall = 0
def sum_one(a,count):
count1 = count - 1
if count == 1:
return a
else:
return sum_one(a,count1) + a *(10**(count1))
print("第{}的结果是{}".format(count,sum_one(a,count)))
执行结果:
计算要加的数(1-9之间数):2
总共要加多少次:5
第5的结果是22222
练习十八:求这样的一组数据和,s=a+aa+aaa+aaaa+aa...a,其中a为一个数字的更多相关文章
- 求S=a+aa+aaa+aaaa+aa...a的值
问题描述:求S=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字,由输入a(1 <= a <= 9)表示,相加的元素个数由输入b(b<= 1000)表示. 这个算法的优 ...
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
package com.lw.HomeWork1;//包名 2 import java.util.Scanner; public class Demo18 { /** * @param args */ ...
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
import java.util.Scanner; /** * 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字. * 2+22+222+2222+22222(此时共有5个数 ...
- 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
一.第一种写法 package com.pb.demo1; import java.util.Scanner; /** * 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字. ...
- 8 求s=a+aa+aaa+aaaa+aa...a的值
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字. * 例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制.程序分析:关键是计算出每一项的 ...
- 【编程小题目7】求s=a+aa+aaa+aaaa+aa...a的值
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制 #include <iostr ...
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。 例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
代码: package com.liron.p1; import java.io.IOException; import java.util.Scanner; /** * 求s=a+aa+aaa+aa ...
- 代码实现:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字
import java.util.Scanner; /*题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字. 例如2+22+222+2222+22222(此时共有5个数相加), ...
- 【程序18】求s=a+aa+aaa+aaaa+aa...a的值
求s=a+aa+aaa+aaaa+aa-a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制. 知识点:在Python 3里,reduce( ...
- python基础练习题(题目 求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制)
day11 --------------------------------------------------------------- 实例018:复读机相加 题目 求s=a+aa+aaa+aaa ...
随机推荐
- oop的方式来操纵时间
减少return 减少传参. 主要是在调用上比以前强大很多,以前很怕操作时间,在一堆函数中传来传去.这个调用爽. class DatetimeConverter: DATETIME_FORMATTER ...
- Zend Server 安装与配置图文教程
Zend Server是一款专业的PHP Web开发应用服务器,一些初次接触并使用此程序的朋友可能不太了解安装方法,本文为您提供了Zend Server 安装与配置图文教程,欢迎大家阅读,并提出自己的 ...
- JConsole远程监控配置
首先,看本机(Windows)安装了JRE没 Win > CMD 打开命令窗口 如有安装,则会显示以下版本信息:若没有显示,就安装吧 C:\Users\Administrator>java ...
- [HDU1754]I Hate It线段树裸题
http://acm.hdu.edu.cn/showproblem.php?pid=1754 解题关键:刚开始死活超时,最后发现竟然是ch,和t1.t2每次循环都定义的锅,以后养成建全局变量的习惯. ...
- Learning Python 008 正则表达式-003 sub()方法
Python 正则表达式 - sub()方法 sub()方法 sub()方法:替换符合规律的内容,返回替换的值 # -?- coding: utf-8 -?- import re secret_cod ...
- hadoop job 重要性能参数
name 说明 mapred.task.profile 是否对任务进行profiling,调用java内置的profile功能,打出相关性能信息 mapred.task.profile.{maps|r ...
- Python通过调用windows命令行处理sam文件
Python通过调用windows命令行处理sam文件 以samtools软件为例 一.下载或者索取得到windows版本的samtools软件,解压后如下: 进入文件内部,有如下几个文件: 二.将s ...
- JAVA之J2EE学习路线
摘自:http://blog.csdn.net/hsc456/article/details/51970559 历经2,3个月,终于学完了J2EE的方方面面,虽然还是一知半解,好歹也算是整条路都走 ...
- servlet与filter的加载顺序详解
项目:3个filter,3个servlet,匹配的url路径/hello. 情况1:servlet没加<load-on-startup></load-on-startup>情 ...
- Java异常处理的10个最佳实践
本文作者: ImportNew - 挖坑的张师傅 未经许可,禁止转载! 异常处理在编写健壮的 Java 应用中扮演着非常重要的角色.异常处理并不是功能性需求,它需要优雅地处理任何错误情况,比如资源不可 ...