欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-15 16:18:22
...

练习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:\n')
    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位数是7
84个。
组成4位数是7
884个。
......
程序:

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('输入一个数字:\n'))
    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('输入四个数字:\n'))
    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]
相关标签: 技术