Задачу решил, но вопрос таков.В условии вводим числа и результатом однозначно должно быть double(согласно условия), а числа вроде как int вводим(в условии такого нет, но и число то не с плавающей точкой показано в примере). Я писал так double = int / int, а заработало только когда double = double / double. Где почитать об этом и почему так?
Николай
10 уровень
Помогите понять
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
IceBergMaster
2 марта 2019, 10:08
int / int = int, а потом уже будет преобразование в double, во время сохранения результата в переменную. Т.е. если поделить 3/5 результат будет "0" а потом "0.0", а если double / double то подсчеты будут изначально корректными, с учетом дробной части 3.0/5.0 будет "0.6".
0
Николай
2 марта 2019, 19:50
преобразование типов, это я понял, но не понял что такое преобразование типов толком))со временем думаю.Спасибо
0
Сергеев ВикторMaster
2 марта 2019, 20:04решение
тут важно не само преобразование типов.
При делении целого на целое получается целое, просто примите это, так устроено. Поэтому если на выходе вы хотите получить дробный результат, то надо одно из чисел привести к дробному до деления.
+2
Николай
2 марта 2019, 20:33
Спасибо большое!!!
0