Поскольку все литеральные числа в правой части являются целыми числами (например, 5363, а не 5363.0), выражение вычисляется с использованием целочисленной арифметической семантики, т.е. /
выполняет деление целых чисел.Таким образом, 5262/12 равняется 446 и 446 * 5 равняется 2230. Также ваша переменная a
является int
, которая может содержать только целое значение.
Чтобы исправить это, вам нужно сделать две вещи.Измените тип a
на десятичный тип, например, float
или double
b), чтобы хотя бы один из 5363 и 12 был представлен как десятичный тип, например,
double a= 5363.0/12.0*5