Java Write a recursive method to calculate the size of a population of organisms
ID: 3589256 • Letter: J
Question
Java
Write a recursive method to calculate the size of a population of organisms that increases at a specified rate each day.
The method header is: public int populationSize(int startingPopulation, double increaseRate, int numberOfDays)
Examples:starting population = 10, increase rate = 0.5, number of days = 5
day 1 population = 15
day 2 population = 22 (22.5 truncated down to 22)
day 3 population = 33
day 4 population = 49 (49.5 truncated down to 49)
day 5 population = 73 (73.5 truncated down to 73)
method returns 73
starting population = 2, increase rate = 1.0, number of days = 4
day 1 population = 4
day 2 population = 8
day 3 population = 16
day 4 population = 32
method returns 32
Explanation / Answer
Program:--
package populationrate;
import java.util.Scanner;
public class PopulationRate
{
public int populationSize(int startingPopulation, double increaseRate, int numberOfDays, int day)
{
if(day<=numberOfDays) //condition for how many times the method should call recursively
{
double Population=startingPopulation+startingPopulation*increaseRate; //calculating next day population
startingPopulation=(int)Population; //value turned down to integer
System.out.println("Day "+day+"Population = "+startingPopulation); //printing the day and result populatin
populationSize(startingPopulation, increaseRate, numberOfDays,day+1); //recursive call for method
}
return 0; //return final value
}
public static void main(String[] args)
{
Scanner scan=new Scanner(System.in);
System.out.println("Enter Starting Population :");
int SP=scan.nextInt(); //read Starting population from user
System.out.println("Enter Increase Rate :");
double rate=scan.nextDouble(); //read Increase Rate from user
System.out.println("Enter Number of Days :");
int days=scan.nextInt(); //read Number of days from user
PopulationRate pr=new PopulationRate();
pr.populationSize(SP,rate,days,1); //call the method populationSize
}
}
Output:--
run:
Enter Starting Population :
10
Enter Increase Rate :
0.5
Enter Number of Days :
5
Day 1Population = 15
Day 2Population = 22
Day 3Population = 33
Day 4Population = 49
Day 5Population = 73
BUILD SUCCESSFUL (total time: 11 seconds)
run:
Enter Starting Population :
2
Enter Increase Rate :
1.0
Enter Number of Days :
4
Day 1Population = 4
Day 2Population = 8
Day 3Population = 16
Day 4Population = 32
BUILD SUCCESSFUL (total time: 13 seconds)
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.