机器人从原点(0,0)开始在平面中移动。 机器人可以通过给定的步骤向上,向下,向左和向右移动。 机器人运动的痕迹如下所示:
UP 5
DOWN 3
LETF 3
RIGHT 2
方向之后的数字是步骤。 请编写一个程序来计算一系列运动和原点之后距当前位置的距离。如果距离是浮点数,则只打印最接近的整数。
import math
pos=[0,0]
while True:
a=input()
s=a.split(" ")
if not a:
break
x=s[0].lower()
y=int(s[1])
if x=='up':
pos[0]+=y
if x=='down':
pos[0]-=y
if x=='letf':
pos[1]-=y
if x=='right':
pos[1]+=y
print(round(math.sqrt(pos[0]**2+pos[1]**2)))
创建一个二维数组,通过s将指令和数转过来,然后将输入的指令算出来
题二:编写一个程序来计算输入中单词的频率。 按字母顺序对键进行排序后输出。
假设为程序提供了以下输入:
New to Python or choosing between Python 2 and Python 3? Read Python 2 or Python 3.
然后,输出应该是:
2:2
3.:1
3?:1
New:1
Python:5
Read:1
and:1
between:1
choosing:1
or:2
to:1
zd={}
x=input("请输入").split(" ")
for word in x:
zd[word]=zd.get(word,0)+1
sorted(zd.keys())
print(zd)
get函数,搜索字典里的键(第一个参数),如果没有找到就赋值为(第二个参数),返回值然后排一下序。输出字典