Возникла проблема с задачкой на c++

208
28 ноября 2017, 22:45

Задача:

В результате исследований было установлено, что искусственный заменитель сахара, обычно используемый в малокалорийном лимонаде, вызвал смерть лабораторной мыши. Ваш друг очень хочет похудеть, но не может отказать себе в лимонаде. Поэтому он решил выяснить, сколько лимонада можно выпить, не опасаясь летального исхода. Напишите программу, отвечающую на этот вопрос. На входе ее задается количество заменителя сахара, смертельное для мыши, вес мыши и вес человека. Для безопасности указывается не нынешний вес человека, желающего похудеть, а тот вес, который он считает для себя нормальным. Предположим, что лимонад содержит 0,1% сахарозаменителя. Присвойте этому числу (которое можно выразить как значение 0.001 типа double) имя, используя квалификатор const.

Вот мой код, и видимо я что-то упускаю, ибо с цифрами какой-то бардак

#include <iostream>
using namespace std;
int main() {
    setlocale(LC_ALL, "RUS");
    const double SWEETENER = 0.001;
    double dead_for_mouse;
    double weight_of_mouse;
    double weight_of_human;
    double dead_mouse;
    double danger_for_human;
    cout << "Введите кол-во заменителя сахара,\n"
         << "смертельное для мыши в граммах" << endl;
    cin >> dead_for_mouse;
    cout << "Введите вес данной мыши в граммах" << endl;
    cin >> weight_of_mouse;
    cout << "Введите вес человека в килограммах" << endl;
    cin >> weight_of_human;
    //смертельно для мышки
    dead_mouse = weight_of_mouse/dead_for_mouse;
    //смертельная доза на 1 килограмм товарища
    danger_for_human = (dead_mouse*1000)*weight_of_human * SWEETENER;
    cout << "Смертельная доза = " << danger_for_human;
    cout << "А для безопасности лучше выпить не более " << (danger_for_human * SWEETENER * 0.75);
    return 0;
}
Answer 1

Ну давайте считать... Если вес мыши weight_of_mouse, а смертельная доза dead_for_mouse, то доза на 1 грамм - dead_for_mouse/weight_of_mouse. Человек весит weight_of_human*1000 грамм, так что его доза - weight_of_human*1000*dead_for_mouse/weight_of_mouse. Лимонада нужно в 1/SWEETENER раз больше. Итого -

weight_of_human*1000*dead_for_mouse/weight_of_mouse/SWEETENER

Вот и все.

cout << "Введите вес человека в килограммах" << endl;
cin >> weight_of_human;
cout << "Смертельная доза = " << weight_of_human*1000*dead_for_mouse/
                                 weight_of_mouse/SWEETENER << endl;
cout << "Но лучше выпить не более " << weight_of_human*1000*dead_for_mouse/
                                       weight_of_mouse/SWEETENER * 0.75 << endl;
READ ALSO
Работа с вектором классов C++

Работа с вектором классов C++

Дано: два вектора классов

186
Как получить адрес kernel32.dll

Как получить адрес kernel32.dll

Как получить адрес kernel32dll не используя функции WinAPI?

185
has triggered a breakpoint

has triggered a breakpoint

При выполнении выдаёт ошибку

208