0
c ++ and JavaScript have different answers? Check this..
A= 20, B = 30 mix = (a/b+5)*3+b-a*9%a This is answered differently in both c ++ and javascript. Why does this happen? As well as calculator, the answer is different..
9 Réponses
+ 7
jaydip devaliya
In C++ or Java, 20 / 30 will always be 0 because 20 is less than 30 and data type is int so int always gives numeric value.
So here (a / b + 5) * 3 = (0 + 5) * 3 = 15
In JavaScript 20 / 30 will give 0.6666667 because JavaScript automatically handle data type, we don't need to define the data type.
So here (a / b + 5) * 3 = (0.6666667 + 5) * 3 = (5.6666667) * 3 = (17.0000001) = 17
In C++ or Java if you do like this
int a = 20;
int b = 30;
cout << (double) 20 / 30;
then you get 0.6666667
+ 3
I guess your c++ code is:
int a = 20, b = 30, mix = ...
in this case, (a/b+5)*3 == 15 (integer division) in c++, but == 17 in javascript (float division)
you could have same result by doing:
float a = ...
anyway, if you declare variables as float, you must cast 'a' to int for last modulo (%) operation:
float a = 20, b = 30, mix = (a/b+5)*3 + b - (int) (a*9) % (int) a;
+ 3
I Am AJ ! ....
Ohh Thank you now I understand.🧑💻☺️
+ 1
assuming you declare a, b and mix as int in your c++ code, (a/b+5)*3 result as 15 (integer division), while 17 in js (float division)...
if you declare them as float, you'll get same result...
+ 1
a = 20;
b = 30;
mix = (a / b + 5) * 3 + b - a * 9 % a = (20 / 30 + 5) * 3 + 30 - 20 * 9 % 20 = ((((20 / 30) + 5) * 3) + 30) - ((20 * 9) % 20) = …
C++ move (with int: only whole numbers):
… = (((0 + 5) * 3) + 30) - ((20 * 9) % 20) = ((5 * 3) + 30) - ((20 * 9) % 20) = (15 + 30) - ((20 * 9) % 20) = 45 - ((20 * 9) % 20) = 45 - (180 % 20) = 45 - 0 = 45
JavaScript move (with Number: any real number; anyways, the type is defined automatically):
… = (((0.66666666… + 5) * 3) + 30) - ((20 * 9) % 20) = ((5.66666666… * 3) + 30) - ((20 * 9) % 20) = (17 + 30) - ((20 * 9) % 20) = 47 - ((20 * 9) % 20) = 47 - (180 % 20) = 47 - 0 = 47
+ 1
get ....
Ohh Thank you so much now I understand this .!
0
get ... I have assigned its value to just for information
0
visph ....
I don't understand what you told me, can you try to understand in a simple language .... 😥🤷♂️
0
visph Ohh yas🙂