Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

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)

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote