ロボットの進む方向が命令された時のプログラムを書こうと思い、
場合分けを考えましたが、方向X距離が考えられ、16パターン式を作る必要があると思ったんですけど、
考え方があっているか、他の関数があるか教えてください。
スタート地点X,Yから、
・前に進む あるいは 方向転換する(右、左、180度)
・前は2,右は1,左は1,後は1
スタートは頭がY座標のプラス方向
スタート (2,2)
命令① 前に進め (2,4)
命令② 後ろに進め (2,3)
命令③ 右に旋回 (2,3)
命令④ 前に進め (4,3)
x,y= map(int, input().split()) M,R,B,L = map(int, input().split()) n=int(input()) numi="F" for i in range(n): a,b = input().split() #print(a,b) if a=="m": if b=="F": x=x y=y+M elif b=="R": x=x+R y=y elif b=="L": x=x+L y=y elif b=="B": x=x y=y-B elif a=="t": if b=="F": x=x y=y+M elif b=="R": x=y y=x elif b=="L": x=y y=x elif b=="B": x=x y=y-B print(x,y)
かなり難しい問題ですので、もう少しプログラミングに慣れてから挑戦したほうがよいと思います。
http://taustation.com/math-rightangle-vector/
あたりが参考になると思います。
回答1件
あなたの回答
tips
プレビュー