task5.cpp 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include <iostream>
  2. int main() {
  3. double u, v, w; // Суточный рацион коровы (кг сена, кг силоса, кг комбикорма)
  4. int k; // Количество коров в стаде
  5. double s, t, f; // Оставшееся количество кормов (кг сена, кг силоса, кг комбикорма)
  6. double p, q, r, g; // Проценты (погибание коров, сгнивание сена, разворачивание силоса, распродажа комбикорма)
  7. std::cout << "Введите суточный рацион коровы (u кг сена, v кг силоса, w кг комбикорма): ";
  8. std::cin >> u >> v >> w;
  9. std::cout << "Введите количество коров в стаде (k): ";
  10. std::cin >> k;
  11. std::cout << "Введите оставшееся количество кормов (s кг сена, t кг силоса, f кг комбикорма): ";
  12. std::cin >> s >> t >> f;
  13. std::cout << "Введите проценты (погибание коров (p%), сгнивание сена (q%), разворачивание силоса (r%), распродажа комбикорма (g%)): ";
  14. std::cin >> p >> q >> r >> g;
  15. int days = 0;
  16. while (k > 0 && s >= u * k && t >= v * k && f >= w * k) {
  17. k -= k * p / 100.0;
  18. s -= u * k;
  19. t -= v * k;
  20. f -= w * k;
  21. s -= s * q / 100.0;
  22. t -= t * r / 100.0;
  23. f -= f * g / 100.0;
  24. days++;
  25. }
  26. std::cout << "Коровы не смогут быть покормлены через " << days << " дней." << std::endl;
  27. if (s < u * k) {
  28. std::cout << "Сено закончилось первым." << std::endl;
  29. } else if (t < v * k) {
  30. std::cout << "Силос закончился первым." << std::endl;
  31. } else if (f < w * k) {
  32. std::cout << "Комбикорм закончился первым." << std::endl;
  33. } else {
  34. std::cout << "Неизвестная ошибка." << std::endl;
  35. }
  36. return 0;
  37. }