菜狗上课根本做不完

python作业及编程答案 python作业题_十六进制

1.任务:一小球以 5 米/秒的水平速度平抛,重力加速度取 9.8 米每秒的平方,在忽略空气阻力的情况下,求经过时间 t 秒后,小球所在位置与抛出点之间的距离 (假设小球距地面足够高)。
t = int(input())
v = 5
g = 9.8
if  t > 0:
s = v*t
h = (g*t**2)/2
d = (s**2+h**2)**0.5
print("%.6f秒后,与原点的距离为%.6f米"%(t,d))
else:
print("不得行")
2.进制转换,输入8位二进制数,分别将其转换为八进制、十进制、十六进制输出。
#二进制转八进制
a = input("请输入八位二进制数:")
print(oct(int(a,2))
#二进制转十进制
#法1:
b = input("请输入八位二进制数:")
print(int(b,2))
#法2:
b = input("请输入八位二进制数:")
num = 0
while b:
    num = num*2+eval(b[0])
    b=b[1:]
print("十进制数为:%s"%(num))
#二进制转十六进制
c = input("请输入八位二进制数")
print(hex(int(c,2)))
3.实现如下功能:

(1)计算两个输入变量bitone,bittwo按位与的值;
(2)计算两个输入变量bitone,bittwo按位或的值;
(3)计算两个输入变量bitone,bittwo按位异或的值;
(4)计算一个输入变量bitone按位取反的值;
(5)计算一个输入变量bittwo左移动两位的值;
计算一个输入变量bittwo右移动两位的值。

def bit(bitone,bittow):
    result =bitone & bittwo
	print(result)#(1)
    result = bitone | bittwo
    print(result)#(2)
    result = bitone ^ bittwo
    print(result)#(3)
    result = (~bitone)
    print(result)#(4)
    result(bittwo<<2)
    print(result)#(5)
    result =(bittwo >> 2)
    peint(result)#(6)
    if __name__ == '__main__':
    a = 1
    b = 2
    bit(a, b)
4.创建一个空列表,命名为names,往里面添加 Lihua、Rain、Jack、Xiuxiu、Peiqi和Black元素。
names = []
names.append("Lihua")
names.append("Rain")
names.append("Jack")
names.append("Xiuxiu")
names.append("Peiqi")
names.append("Black")
print(names)
5.在(1)中的names列表里Black前面插入一个Blue。
names.insert(5,"Blue")
print(names)
6.把names列表中Xiuxiu的名字改成中文“秀秀”。
names[names.index("Xiuxiu")] = "秀秀"
print(names)
7.在names列表中Rain后面插入一个子列表[“oldboy”,“oldgirl”]。
names.insert(2,["oldboy","oldgirl"])
print(names)
8.返回names列表中Peiqi的索引值(下标)。
print(names.index("Peiqi"))
9.创建新列表[1,2,3,4,2,5,6,2,7],合并到names列表中。
new =[1,2,3,4,2,5,6,2,7]
names.extend(new)
print(names)
10.取出names列表中索引4-7的元素。
print(names[4:8])
11.取出names列表中索引为偶数的所有元素。
print(names[0:18:2])
12.取出names列表中最后3个元素。
print(names[-3:])
13.遍历names列表,打印每个元素的索引值和元素。
for i in names:
    print(names.index(i),i)
for i,index in enumerate(names):
    print(i,index)
14.names列表里有3个2,请返回第二个2的索引值。
count = 0
for index,i in enumerate(names):
    if i == 2:
        count += 1
        while count == 2:
            print(index)
            break
    else:
        continue
15.循环names列表,打印每个元素的索引值和元素,当索引值为奇数时,把对应的元素改成-1。
for index,i in enumerate(names):
    if index % 2 == 1:
        names[index] = -1
        print(index,i)
print(names)
16.删除name列表中,索引为奇数的对应元素。
#法1:
k = 1
for i in range(len(names) ):
    if i % 2 == 1:
        del names[k]
        k += 1
print(names)
#法2:
print(names[::2])
17.编写程序,生成20个随机数的列表,然后前10个元素升序排列,后10个元素降序排列,并输出结果。
import  random
num = [random.randint(0,50) for i in range(20)]
print(num)
a = num[0:10]
a.sort()
print(a)
b = num[10:20]
b.sort(reverse=True)
print(b)
18.编写程序,让用户在键盘上输入一个包含若干整数的列表,输出反转后的列表。
def str_reverse():
    a = input("麻烦您随机输入一个字符串:")
    return a[::-1]
print(str_reverse())

溜了溜了