程序地带

Python3.x 基础练习题100例(81-90)


练习81:

题目:
809??=800??+9?? 其中??代表的两位数, 809??为四位数,8??的结果为两位数,9??的结果为3位数。求??代表的两位数,及809*??后的结果。


程序:


a = 809
for i in range(10, 100):
b = i * a
if b >= 1000 and b <= 10000 and 8 * i < 100 and 9 * i >= 100:
print(b, " = 800 * ", i, " + 9 * ", i)

输出结果:


9708 = 800 * 12 + 9 * 12
练习82:

题目:
八进制转换为十进制


程序:


if __name__ == "__main__":
n = 0
p = input("input a octal number: ")
for i in range(len(p)):
n = n * 8 + ord(p[i]) - ord(")
print(n)

输出结果:


input a octal number:
12
10
练习83:

题目:
求0—7所能组成的奇数个数。
分析:
组成1位数是4个。
组成2位数是74个。
组成3位数是784个。
组成4位数是7884个。
......
程序:


if __name__ == "__main__":
sum = 4
s = 4
for j in range(2, 9):
print(sum)
if j <= 2:
s *= 7
else:
s *= 8
sum += s
print("sum = %d" % sum)

输出结果:


4
32
256
2048
16384
131072
1048576
sum = 8388608
练习84:

题目:
输入一个奇数,然后判断最少几个 9 除于该数的结果为整数。
分析:999999 / 13 = 76923。
程序:


if __name__ == "__main__":
zi = int(input("输入一个数字: "))
n1 = 1
c9 = 1
m9 = 9
sum = 9
while n1 != 0:
if sum % zi == 0:
n1 = 0
else:
m9 *= 10
sum += m9
c9 += 1
print ("%d 个 9 可以被 %d 整除 : %d" % (c9,zi,sum))
r = sum / zi
print ("%d / %d = %d" % (sum,zi,r))

输出结果:


输入一个数字:
7
6 个 9 可以被 7 整除 : 999999
999999 / 7 = 142857
练习85:

题目:
连接字符串。


程序:


delimiter = ","
mylist = ["Brazil", "Russia", "India", "China"]
print(delimiter.join(mylist))

输出结果:


Brazil,Russia,India,China
练习86:

题目:
两个字符串连接程序。


程序:


if __name__ == "__main__":
a = "acegikm"
b = "bdfhjlnpq"
# 连接字符串
c = a + b
print(c)

输出结果:


acegikmbdfhjlnpq
练习87:

题目:
回答结果(结构体变量传递)。


程序:


if __name__ == "__main__":
class student:
x = 0
c = 0
def f(stu):
stu.x = 20
stu.c = "c"
a= student()
a.x = 3
a.c = "a"
f(a)
print (a.x,a.c)

输出结果:


20 c
练习88:

题目:
读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。


程序:


if __name__ == "__main__":
n = 1
while n <= 7:
a = int(input("input a number:"))
while a < 1 or a > 50:
a = int(input("input a number:"))
print(a * "*")
n += 1

输出结果:


input a number:2
**
input a number:3
***
input a number:5
*****
input a number:6
******
input a number:4
****
input a number:8
********
input a number:7
*******
练习89:

题目:
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代
替该数字,再将第一位和第四位交换,第二位和第三位交换。


程序:


from sys import stdout
if __name__ == "__main__":
a = int(input("输入四个数字: "))
aa = []
aa.append(a % 10)
aa.append(a % 100 / 10)
aa.append(a % 1000 / 100)
aa.append(a / 1000)
for i in range(4):
aa[i] += 5
aa[i] %= 10
for i in range(2):
aa[i], aa[3 - i] = aa[3 - i], aa[i]
for i in range(3, -1, -1):
stdout.write(str(aa[i]))

输出结果:


输入四个数字:
1234
98.47.346.234
练习90:

题目:
列表使用实例。


程序:


# list
# 新建列表
testList = [10086, "中国移动", [1, 2, 4, 5]]
# 访问列表长度
print(len(testList))
# 到列表结尾
print(testList[1:])
# 向列表添加元素
testList.append("i"m new here!")
print(len(testList))
print(testList[-1])
# 弹出列表的最后一个元素
print(testList.pop(1))
print(len(testList))
print(testList)
# list comprehension
# 后面有介绍,暂时掠过
matrix = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
print(matrix)
print(matrix[1])
col2 = [row[1] for row in matrix] # get a column from a matrix
print(col2)
col2even = [row[1] for row in matrix if row[1] % 2 == 0] # filter odd item
print(col2even)

输出结果:


3
["中国移动", [1, 2, 4, 5]]
4
i"m new here!
中国移动
3
[10086, [1, 2, 4, 5], "i"m new here!"]
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
[4, 5, 6]
[2, 5, 8]
[2, 8]

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/youcans/p/14492358.html

随机推荐

算法——Java代码实现版。

1.递归函数简单来说,递归就是函数自己调用自己。下面是Java实现版。如:求5的阶乘。packagecom.test.xiaoma;classAlgorithom{publ...

小码上线 阅读(349)

lambda 对象去重_Lambda表达式,简化你的内部类

1.函数式编程思想面向对象的思想:做—件事情,找一个能解决这个事情的对象,调用对象的方法完成函数式编程思想:只要能获取到想要的结果,...

weixin_39618597 阅读(239)

vue push方法重写解决路由错误问题

vue重写路由push方法重写路由的push方法解决,相同路由跳转时,报错添加,相同路由跳转时,触发watch(仅限string方式传参...

好学的学者 阅读(556)

为什么不能线程调用类的成员函数_c++线程池实现

在定时器模块的文章中我们知道,如果在定时器很多时只有一个线程去逐个判断定时器是否需要被执行,其效率是不高的,因此我们需要有一个更加高效的模型来实现这个工作。同...

weixin_39999536 阅读(253)

网络编程_6(数据库)

一二章请点击:网络编程_1(网络基础+跨主机传输)三四章请点击:网络编程_2(网络属性+UDP(UDP模型+广播组播))第五章请点击:...

°嘟嘟嘟嘟 阅读(818)