gpt4 book ai didi

java - 如何缩短使用相似代码的不同场景的算法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:09:08 24 4
gpt4 key购买 nike

我开发了一个程序来求解基础物理学中的运动方程。要求解,需要 5 个可能变量中的 3 个。已知的 3 个变量有 10 种不同的组合。我编写了 10 个类似于下面两个代码块的场景

    // If we have acceleration, final velocity, and initial velocity
if (varEntered[0] == true && varEntered[1] == true && varEntered[2] == true)
{
double acceleration = knownVariables[0]; //Setting acceleration
double finalVelocity = knownVariables[1]; //Setting finalVelocity
double initVelocity = knownVariables[2]; //Setting initVelocity

double time = ((finalVelocity - initVelocity)/acceleration); //Finding time using an equation
double distance = ((finalVelocity + initVelocity)*((0.5)*time)); //Finding distance using an equation

System.out.println("The time is " + time + " seconds"); //Printing time
System.out.println("The distance is " + distance + " meters"); //Printing distance
}




//If we have distance, final velocity, initial velocity
if (varEntered[3] == true && varEntered[1] == true && varEntered[2] == true)
{
//Known variables
double distance = knownVariables[3]; //Acceleration
double finalVelocity = knownVariables[1]; //Final Velocity
double initVelocity = knownVariables[2]; //Initial Velocity

// Unknown variables
double time = (distance/((0.5)*(finalVelocity + initVelocity))); //Time
double acceleration = ((finalVelocity - initVelocity)/time); //Acceleration

System.out.println("The time is " + time + " meters/second"); //Printing time
System.out.println("The acceleration is " + acceleration + " meters/second^2"); //Printing distance
}

这些看似很相似,却是不同的场景。作为编程初学者,我想知道是否可以修改我使用的算法以缩短代码。如果需要任何更多信息,我将非常乐意提供。

最佳答案

您应该定义一个接受三个数字并执行一般计算的函数。对于初学者,请尝试 this tutorial .然后您可以调用您的函数两次,每次使用不同的变量集。

关于java - 如何缩短使用相似代码的不同场景的算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12925551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com