ПГ
Павел Габур
Преобразование типов данных.Почем получаются разные ответы?
Допустим, double x=100.Тогда 1/4*x=0.Но 0.25*x=25.0.А x/4=25.0.
Язык С.
Допустим, double x=100.Тогда 1/4*x=0.Но 0.25*x=25.0.А x/4=25.0.
Язык С.
это не только "приведение типов", а ещё и "целочисленное деление"
результатом целочисленного деления будет целое число
поэтому 1/4=0, а не 0.25 как ты думал. (это к слову о целочисленном делении)
и не важно какой бы Х ты потом этот ноль умножишь.
кстати, при double x выражение 1/4*x=0.0, а не просто 0, потому как результат будет типа double (это из оперы про "приведение типов"
Читай раздел "приведение типов"
феномен