所以我有一個遞歸問題。遞歸和循環的混合
編寫一個程序,可以預測有機體羣體的大小。該計劃應詢問有機體的起始數量,它們的平均每日人口增長率(以百分比表示)以及它們將繁殖的天數。例如,人口可能以兩種有機體開始,平均每天增加50%,並且可以繁殖七天。程序應該使用循環來顯示每天人口的大小。 輸入驗證:
- 不接受小於2的數字作爲總人口的起始大小。
- 不接受每日平均人口增加的負數。
- 不要接受一個小於1的乘數乘以的天數。
- 確保您的程序使用遞歸方法而不是循環來計算生物體的數量。
- 請在任何正在完成的方法開始時記錄事先和事後條件。如果不存在,則爲每個都不指定。
我們必須編寫一個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