У меня проблема с рекурсией.смесь рекурсивной и петлевой
Напишите программу, которая будет прогнозировать размер популяции организмов. Программа должна запрашивать начальное количество организмов, их среднесуточное увеличение населения (в процентах) и количество дней, в которые они будут умножаться. Например, население может начинаться с двух организмов, средний дневной прирост составляет 50 процентов, и им будет разрешено размножаться в течение семи дней. Программа должна использовать цикл для отображения размера населения за каждый день. Подтверждение ввода:
- Не принимайте число менее 2 для начального размера населения.
- Не принимайте отрицательное число для среднего ежедневного прироста населения.
- Не принимайте число меньше 1 за количество дней, которое они будут умножать.
- Убедитесь, что ваша программа использует рекурсивный метод вместо цикла для вычисления количества организмов.
- В начале любого метода, который вы завершаете, представьте и отправьте условия. Если ни один из них не существует, укажите для каждого из них значение none.
Мы должны написать метод displayPopulation
, который будет отображать размер популяции каждого дня. Затем мы должны написать рекурсивный метод для вычисления размера, а затем у нас есть основная для проверки ввода.
Теперь у меня есть основной и рекурсивный метод. То, что я не могу понять, - как заставить цикл отображать размер каждый день? Ниже мой рекурсивный метод:
private static double showPopulation(int dayNum, int days, double organisms, double dailyIncrease){
if(dayNum==days)
return organisms;
else
return showPopulation(dayNum+1, days, organisms + organisms*(dailyIncrease/100), dailyIncrease);
}
Я знаю, что это даст мне размер всех дней вместе взятых. Я не знаю, как сохранить каждое значение и заставить его печатать в цикле другим методом. Я действительно потерян. Мне нужна помощь, я был бы признателен.
Вы пробовали что-нибудь для displayPopulation? Если нет, как бы вы решили это в устной форме? Это иногда помогает мне определить рабочий алгоритм. – Meesh
'@Rabia Khan' Если вы нашли какие-нибудь Ans. Помогите полностью, чем вы можете отметить это как принятое. – HybrisFreelance