sqm12323 2021-11-17 11:35 采纳率: 66.7%
浏览 57
已结题

关于#python#的问题:一开始在xyz坐标轴平面的原点(0,0,0)处

假设有个飞人,一开始在xyz坐标轴平面的原点(0,0,0)处。
每过一秒,它会随机地往一个方向北(y正半轴)南(y负半轴)东(x正半轴)西(x负半轴)上(z正半轴)下(z负半轴)飞n个单位长度(n取值范围是1-10, 包括10)不能飞到z<0处,若z<0则不飞
1.记录过了1秒, 2秒, 100000秒后,它距离原点的矩离s
2.把距离和时间的关系画出来(二维平面图,x轴为时间,y轴为距离)
3.把它的高度变化(z方向的变化)画出来
4.把它的路线投影在xy平面上画出来(x-y)
把程序运行5次,把15张图按顺序贴到word里,并说明这是第几次运行,其中,不要给定随机数种子。

  • 写回答

1条回答 默认 最新

  • 关注
    import random
    import matplotlib.pyplot as plt
    x=0
    y=0
    z=0
    distance=[]
    height = []
    xPos=[]
    yPos=[]
    for i in range(10000):
        mydir = random.randint(1,6)
        if mydir == 1:
            x+=1
        elif mydir == 2:
             y+=1
        elif mydir == 3:
             x-=1
        elif mydir == 4:
             z+=1
        elif mydir == 5:
             x-=1
        else:
            if z>0:
                 z-=1
            else:
                pass
        distance.append((x**2+y**2+z**2)**0.5)
        height.append(z)
        xPos.append(x)
        yPos.append(y)
    plt.plot(range(10000),distance)
    plt.show()
    plt.plot(range(10000),height)
    plt.show()
    plt.plot(xPos,yPos)
    plt.show()
    
    # plt.close()
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月17日

悬赏问题

  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式
  • ¥50 关于多次提交POST数据后,无法获取到POST数据参数的问题
  • ¥15 win10,这种情况怎么办
  • ¥15 如何在配置使用Prettier的VSCode中通过Better Align插件来对齐等式?(相关搜索:格式化)
  • ¥100 在连接内网VPN时,如何同时保持互联网连接
  • ¥15 MATLAB中使用parfor,矩阵Removal的有效索引在parfor循环中受限制
  • ¥20 Win 10 LTSC 1809版本如何无损提升到20H1版本
  • ¥50 win10 LTSC 虚拟键盘不弹出
  • ¥30 微信小程序请求失败,网页能正常带锁访问
  • ¥15 Matlab求解微分方程,如何用fish2d进行预优?