我在写一个计算势能变化的复杂程序(ΔPE=mgΔh)。如何交换两个变量值?
Console.WriteLine("Mass in kg");
string cmMa = Console.ReadLine();
double cMass;
if(!Double.TryParse(cmMa, out cMass))
{
Console.WriteLine("Only numbers!");
Console.ReadLine();
}
Console.WriteLine("First height in m");
string cfH = Console.ReadLine();
double fH;
if(!Double.TryParse(cfH, out fH))
{
Console.WriteLine("Only numbers!");
Console.ReadLine();
}
Console.WriteLine("Second height in m");
string csH = Console.ReadLine();
double sH;
if(!Double.TryParse(csH, out sH))
{
Console.WriteLine("Only numbers!");
Console.ReadLine();
}
double ch = fH - sH;
Console.WriteLine("Intermediate result: Change in height(Δh)= "+ch+" m");
Console.ReadLine();
double ng = 9.81; // m/s^2
Console.WriteLine("CHANGE IN POTENTIAL ENERGY: "+ch*cMass*ng+" J");
最后,我想添加一个if语句,如果sH> fH,那么它们的值被交换。我应该申请什么概念?
很平凡:使用第三个变量。这里没有概念。 –
'double ch = Math.Abs(fH - sH);' – Ryan
[不使用临时变量交换两个变量]的可能重复(http://stackoverflow.com/questions/804706/swap-two-variables-without-使用温度变量) –