У меня есть следующий код Visual Basic:
Dim L16, L23, L45, t As Double
Dim LBase, LAdjacent, LOpposite As Double
L16 = 20
L23 = 10
L45 = 30
t = 1
LBase = L16
LAdjacent = L23
LOpposite = L45
Dim Sum As Double
Sum = t ^ 2 * L16 + 6 * t ^ 3 + 2 * L16 ^ 3 + 3 * L16 ^ 2 * t + 2 * L23 ^ 2 * L16 + L23 ^ 2 * t + 8 * L23 * t * L16 + 4 * L23 * t ^ 2 - L45 ^ 2 * L16 + L45 ^ 2 * t - 4 * L45 * t * L16 + 4 * L45 * t ^ 2
Console.WriteLine("1st Sum: " & Sum)
Sum = t ^ 2 + LBase + 6 * t ^ 3 + 2 * LBase ^ 3 + 3 * LBase ^ 2 * t + 2 * LAdjacent ^ 2 * LBase + LAdjacent ^ 2 * t + 8 * LAdjacent * t * LBase + 4 * LAdjacent * t ^ 2 - LOpposite ^ 2 * LBase + LOpposite ^ 2 * t - 4 * LOpposite * t * LBase + 4 * LOpposite * t ^ 2
Console.WriteLine("2nd Sum: " & Sum)
Оба уравнения должны быть эквивалентны: я просто заменил L16 на LBase, L23 на LAdjacent и L45 на LOppverse.Тем не менее, первое уравнение выдает 3586, а второе выдает 3587. Почему?
Я использую VS2010
Amr