Я конвертирую довольно простую программу, которую я сделал в коде C в Javascript. Код идентичен, однако я изменил код на синтаксис Javascript. По какой-то причине мой простой расчет на языке javascript дает мне отличный результат, чем тот, что есть на C. Посмотрите ниже. Я сделал некоторый тест, чтобы увидеть, были ли некоторые из значений переменных одинаковыми. Все, S, S1, S2, V1, V2, T4, LCP одинаковы. BUT T2 имеет другое значение.Преобразование C Программный код в Javascript, производящий разные результаты?
S = lesserofcalc(S1,S2);
alert("S1--->" + S1);
alert("S2--->" + S2);
alert("S--->" + S);
//printf("S1:%.2lf | S2:%.2lf | S:%.2lf | T4:%.2lf | V1:%.2lf | K2P:%.2lf \n",S1,S2,S,T4,V1, K2P);
if (LCPK<=LCPRATE*YY){
LCP = LCPK;
} else {
LCP = LCPRATE*YY;
}
V2 = OHP();
V2 = roundFIX(V2);
alert("V1--->" + V1);
alert("V2--->" + V2);
alert("T4--->" + T4);
alert("LCP--->" + LCP);
T2 = T4+V1+V2-S-LCP; *GIVING DIFFERENT VALUE FROM C ????*
alert("T2--->" + T2);
T2 = roundFIX(T2);
C Программа:
S = lesserofcalc(S1,S2);
printf("S1-----> %.2lf \n", S1);
printf("S2-----> %.2lf \n", S2);
printf("S-----> %.2lf \n", S);
//printf("S1:%.2lf | S2:%.2lf | S:%.2lf | T4:%.2lf | V1:%.2lf | K2P:%.2lf \n",S1,S2,S,T4,V1, K2P);
if (LCPK<=LCPRATE*YY){
LCP = LCPK;
} else {
LCP = LCPRATE*YY;
}
V2 = OHP();
V2 = roundFIX(V2);
printf("v1-----> %.2lf \n", V1);
printf("V2-----> %.2lf \n", V2);
printf("T4-----> %.2lf \n", T4);
printf("LCP-----> %.2lf \n", LCP);
T2 = T4+V1+V2-S-LCP;
printf("T2-----> %.2lf \n", T2);
T2 = roundFIX(T2);
Каковы типы переменных? –
они плавают, или двойные .. это не имеет смысла для меня .. я должен получить тот же результат, но T2 дает мне другое значение! – roxxar
Это какой-то неприятный код ... Рассмотрите лучше названные переменные/функции, и проблема может решить сама. – kufudo