Задать вопрос
@Conan_Doyle

Почему 150/1000 == 0?

double n = 150/1000;
    cout << n << endl;
  • Вопрос задан
  • 214 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Яндекс Практикум
    Разработчик C++ расширенный
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл разработчик С++
    4 месяца
    Далее
Решения вопроса 1
@Mercury13
Программист на «си с крестами» и не только
Потому что деление происходит int/int, то есть целочисленное.
Надо 150.0/1000.

Это известный глюк Си-подобных языков — a/b в зависимости от типа или деление, или неполное частное. В Паскале, например, неполное частное — a div b. В Си-подобных языках с динамической типизацией (JS) отказались от неполного частного, ибо мы тип плохо контролируем.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы