1
我剛開始學習Java。我目前正在編寫平臺遊戲的基本代碼,並且我在計算平臺遊戲中角色的最終y
位置的公式中遇到問題。如何修復此公式?
,我試圖代碼的公式是
y = y0 + vy * t - (1/2 * g * t^2)
其中,
Y =最終y
位置;
y0 =最初的y
位置;
vy =沿y
軸的速度;
g =重力;
t =時間;
以下是我爲此公式編寫的代碼。 (請忽略xPosition的代碼)
public class Position {
static double xPosition;
static double yPosition;
final static double gravity = 10.0; //gravity on Earth rounded up to the tens place.
public static double xPosition (double initialPosition , double xVelocity , double time) {
return initialPosition + xVelocity * time;
}
public static double yPosition (double initialPosition , double yVelocity , double time) {
return initialPosition + (yVelocity * time) - (0.5 * gravity * time * time);
}
這就是代碼。而且,如下所示,我插入了隨機值,試圖檢查此公式是否正常工作。
public static void main (String args[]) {
xPosition = xPosition (5 , 4 , 9);
System.out.println (xPosition);
yPosition = xPosition (0 , 10 , 5);
System.out.println (yPosition);
}
當我編譯和運行這個代碼,我得到了50.0
。問題是當我手工解決這個問題時,我得到了-75
。我的代碼有什麼問題,還是因爲過度使用自己而導致大腦故障?提前感謝您的回答。
這個問題似乎是題外話,因爲它是關於一個錯字。 –
@Benjamin。天啊。當我犯這樣的錯誤時,我討厭它。感謝您指出。 –
避免爲您的方法和變量使用相同的名稱。它會爲您節省一些未來的麻煩。 – Lai