В Фортране 95 есть уравнение для вычисления некоторой позиции для массива, я скопировал и вставил одно и то же уравнение в Python, но они возвращают разные результаты.
РЕДАКТИРОВАТЬ: в спешке за ответ, я забыл показать объявления переменных, но они сейчас находятся в примере кода на Фортране.И оказывается, что объявление было проблемой, благодаря @SurestTexas и @albert за то, что они указали на это в комментариях, и всем, кто помог.
Уравнение в Фортране:
integer(2) :: i, j
integer(4) :: e, n_x
n_x = 1162
j = ((-2.8 - (-8.4)) / 0.05) + 1
i = ((-4.5 - (-5.1)) / 0.05) + 1
e = ((i-1)*n_x+j)
Я печатаю e
, что приводит к: 12894
И в Python:
n_x = 1162
j = ((-2.8 - (-8.4)) / 0.05) + 1
i = ((-4.5 - (-5.1)) / 0.05) + 1
e = ((i-1)*n_x+j)
Я печатаю e
, что приводит к: 14057.0
Как видите, они абсолютно одинаковые, я не могу понять, что не так и как я могу решить проблему, пожалуйста, помогите мне.