import math while True: lst = list(map(int, input().strip().split())) if max(lst) == 0: break L, W, x, y, R, a, v, s = tuple(lst) vx = v * math.cos(math.pi*a/180) vy = v * math.sin(math.pi*a/180) for i in range(s): x += vx y += vy if x >= L-R: x -= vx t = 1-((L-R)-x)/abs(vx) vx = -vx x = (L-R) + vx*t if x <= R: x -= vx t = 1-(x-R)/abs(vx) vx = -vx x = R + vx*t if y >= W-R: y -= vy t = 1-((W-R)-y)/abs(vy)
YangleiGe 2024-09-20 19:32:50 |
代码不全,这大致是我的思路,就是速度分解vx和vy,但是测试就过了一例……
汽水瓶 (C语言代码)浏览:664 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:485 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:368 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:701 |
母牛的故事 (C语言代码)浏览:594 |
数组与指针的问题浏览:760 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:755 |
C语言程序设计教程(第三版)课后习题12.3 (C语言代码)浏览:587 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:592 |