# UVA 10071 - Back to High School Physics ### 題意: 一個粒子具有初速度和加速度。 如果這個粒子在某個時間點的速度是 v,那麼它在兩倍該時間長度內所通過的位移是多少? 先直接給公式: ==s = 2vt== **為什麼是2vt?** > 如果還沒忘記高中物理的各位可以直接跳過這一段 XD > 其實直接代進去就可以寫出這題了。 > 但是我一開始想了很久為什麼是 2vt,那加速度呢? > 我本來想用套公式的方式去推導它,是可以的,但是因為感覺好像沒啥用就懶得幹了。 > 另外是因為我想到了更好的解釋方式。 這邊來回憶一下高中物理,寫這章節的時候是不是常常在畫圖! 現在來畫一個v-t圖。 題目說了加速度和初速度都是固定的,那速度的線是不是會是一條斜的直線? (如果加速度為 0 就會是水平,加速度為負是斜率為負的直線,為正是斜率為正的直線) 要求 2t 時間內的位移,還記得是在 2t 這條縱線和速度的線圍起來的面積就是位移量嗎? 然後題目給你 t 秒時的瞬時速度 v,是不是剛好在中間! 畫一條水平線對到 t 秒時的 v,兩邊缺 & 多出來的面積會剛好抵銷變成 s = 2vt 以上是我非常粗淺的說明,因為物理已經幾乎還給高中老師了 (抱歉XD ### Sample Input: 輸入多組測資,每組測資為一行,輸入直到 EOF。 每組測資有兩個整數: v:某個時間點的速度(單位:m/s),範圍為 −100 ≤ v ≤ 100 t:時間(單位:秒),範圍為 0 ≤ t ≤ 200 ```= 0 0 5 12 ``` ### Sample Output: 每組測資,輸出在 2t 秒內粒子所通過的位移。 ```= 0 120 ``` ### 程式碼: 講了半天程式碼就這樣而已...(´・ω・`) ```cpp= #include <iostream> using namespace std; int main() { int v, t; while (cin >> v >> t) cout << 2 * v * t << endl; return 0; } ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up