Составить программу c++ дана плотность жидкости и плотность тела. определить, что произойдет с некоторым телом, опущенным в жидкость. например, свинец утонет в воде, а дерево нет
Давай попробуем рассуждать логически. Если бы сад состоял из двух деревьев, то было бы два варианта садов: 100+99 и 100+101. Если бы досадили третье дерево, то каждый из предыдущих садов удвоил бы число вариантов: первый 100+99+98 и 100+99+100, и так же второй 100+101+100 и 100+101+102. Подмечаем закономерность: каждое добавляемое дерево удваивает количество вариантов. А сад из одного дерева имеет лишь один вариант.
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.
using namespace std;
int main() {
double p1, p2;
cout << "плотность жидкости = ", cin >> p1, cout << "\n";
cout << "плотность тела = ", cin >> p2, cout << "\n";
if (p1>p2) cout << "тело будет плавать на поверхности";
else if (p1<p2) cout << "тело уйдет на дно";
else cout << "тело будет плавать полностью погрузившись в жидкость";
return 0;
}
Пример:
плотность жидкости = 1.3
плотность тела = 11.2
тело уйдет на дно