python问题问答题目

1.用for循环计算8+88+888+8888+.....的前十项之和。
2.用编程的方法找出用1、3、4、5、7这五个数组成一个两位数乘三位数,使其得到它们的乘积,找出这个乘积中最大的那个数。
3.编写程序,用for与while循环语句分别计算1~1000之间能被3和7同时整除的整数之和。

3

arr = []
#for
for i in range(1, 1001):
  if i % 21 == 0:
    arr.append(i)
print(sum(arr))
#while
arr = []
i = 1
while i != 1001:
  if i % 21 == 0:
    arr.append(i)
  i += 1
print(sum(arr))

# 题1----------------
利用字符串的特性,例如'8'*3='888'再转化整数就好了

# 题2-------------------
s = [1, 3, 4, 5, 7]
# 倒序, 得到最大三位数和两位数再做后续计算
s = sorted(s)


# 题3-------------------
# 整除用%实现,比如 x%3== 0 表示 x 能被3整除

# for实现
for i in range(1, 1001):
      pass


# while实现
while i < 10001:
    pass

1

result = 0
for i in range(1, 11):
  result += int('8' * i)