- 用户输入一个三位自然数,计算并输出其佰位、十位和个位上的数字
x = input("请输入一个三位自然数:")
x = int(x)
a = x // 100
b = ( x - a*100 ) // 10
c = x % 10
print(a,b,c)
- 已知三角形的两边长及其夹角,求第三边长。
import math
a,b,c = input("请输入两边长及其夹角:").split(',')
a,b,c = float(a),float(b),float(c)
x = a**2 + b**2 - 2 * a * b * math.cos( math.radians(c) )
x = math.sqrt(x)
print(x)
radians()-----将角度转换为弧度
degrees()-----将弧度转换为角度
- 任意输入三个英文单词,按字典顺序输出。
x = input("请输入三个英文单词:")
a,b,c = x.split(',')
a,b,c = sorted([a,b,c])
print(a,b,c)
- 计算两点间曼哈顿距离。
x = input("请输入x坐标:").split(',')
y = input("请输入y坐标:").split(',')
x = list( map(int,x) )
y = list( map(int,y) )
if len(x) == 2:
print( abs(x[0]-x[1]) + abs(y[0]-y[1]) )
else:
sum = 0
for xi,yi in zip(x,y):
sum += abs(xi-yi)
print(sum)
- 统计一个字符串中所有字符在另一个字符串中出现的总次数。
knowstr = input("请输入已知字符串:")
goalstr = input("请输入目标字符串:")
sum = 0
for k in knowstr:
for g in goalstr:
if k==g:
sum +=1
print(sum)
- 编写程序,输出所有由1、2、3、4这四个数字组成的素数,并且在每个素数中每个数字只使用一次
from itertools import compress
x = [1,2,3,4]
ans = []
a = []
for i1 in x:
a.append(i1)
#ans.append(i1)
for i2 in x:
if i2 in a:
continue
a.append(i2)
#ans.append(i1*10+i2)
for i3 in x:
if i3 in a:
continue
a.append(i3)
#ans.append(i1 * 100 + i2 * 10 + i3)
for i4 in x:
if i4 not in a:
ans.append(i1 * 1000 + i2 * 100 + i3 * 10 + i4)
a.pop()
a.pop()
a.pop()
for i in range(0,len(ans)):
for j in range(2,ans[i]):
if (ans[i]%j==0):
ans[i]=0
break
print(list(compress(ans,ans)))
(我不知道是四个数字全用上还是可以用更少的数字,如果不是必须使用,可以把代码里注释掉的地方还原)
7. 编写程序,实现分段函数计算。
| x | y |
|---|---|
| x<0 | 0 |
| 0≤x<5 | x |
| 5≤x<10 | 3x-5 |
| 10≤x<20 | 0.5x-2 |
| 20≤x | 0 |
x = input("请输入x:")
x = int(x)
if x<0:
y = 0
elif 0<=x<5:
y = x
elif 5<=x<10:
y = 3*x-5
elif 10<=x<20:
y = 0.5*x-2
else:
y = 0
print(y)
- 编写程序,生成包含1000个0~100之间的随机整数,并统计每个元素的出现次数
import random
ans = [ random.randint(0,100) for i in range(1000)]
print(ans)
p = []
for i in ans:
if i not in p:
print(i,":",ans.count(i))
p.append(i)
- 编写程序,用户输入一个列表和2个整数作为下标,然后输出列表中介于2个下标之间的元素组成的子列表。例如用户输入[1,2,3,4,5,6]和2,5,程序输出[3,4,5,6]。
x = input("请输入一个列表:").split(',')
listx = [ int(i) for i in x]
low = input("请输入起始位置:")
high = input("请输入终止位置:")
print( list(listx[int(low):int(high)+1]) )
- 设计一个字典,并编写程序,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不存在,则输出“您输入的键不存在!”
a = dict(name='dangerous',age=21,score=100)
x = input("请输入键:")
print(a.get(x,"您输入的键不存在!"))
- 编写程序,生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果。
import random a = [random.randint(0,100) for i in range(20)] a[0:10] = sorted(a[0:10]) a[10:20] = sorted(a[10:20],reverse=True) print(a)



