Programming Problem 2 in c++ This program is designed to analyze the growth of t
ID: 665892 • Letter: P
Question
Programming Problem 2
in c++
This program is designed to analyze the growth of two cities. Each city has a starting population and annual growth rate. The smaller city has the larger growth rate (required). Show the comparative populations of each city year by year until the smaller city has grown larger than the bigger city.
As an example, Dogville has a population of 5000 growing at 20% annually while Cattown has a population of 7000 growing at 10% annually. The projected populations are:
Year Dogville Cattown
1 6000 7700
2 7200 8470
3 8640 9317
4 10368 10249
1. Identify the inputs and outputs of the problem.
2. Identify the processing needed to convert the inputs to the outputs.
3. Design an algorithm in pseudocode to solve the problem. Make sure to include steps to get each input and to report each output.
4. Identify three significant test cases including one for incorrect input (ie Small town has lower growth rate). For each of the three test cases show what inputs you will use and calculate what your expected outputs should be.
5. Write the program to implement your algorithm. Test your program using your test cases.
Explanation / Answer
1. Identify the inputs and outputs of the problem
Inputs
Enter population of Dogville: 6000
Enter growth rate of Dogville: 20
Enter population of Cattown: 7200
Enter growth rate of Cattown: 10
3. ALGORITHM
REPEAT
OUTPUT year Dogville Cattown?'
INPUT Enter population of DOGVILLE
STORE the user's input in the answer variable
IF answer = 'DOGVILLE' THEN
OUTPUT 'Of DOGVILLE it is!'
ELSE
OUTPUT 'Try again!'
UNTIL answer = '1 6000 7700'
4.Testing:
UNIT TESTING
SYSTEM TESTING
PERFORMANCE TESTING
Test case:
In entering the incorrect input
Enter the intial population of Dogville: 5000
Enter the intial growth rate of Dogville: 10
Enter the intial population of Cattown: 6000
Enter the intial growth rate of Cattown: 25
year Dogville Cattown
1 5500 7500
2 6050 9375
3 6655 11718
Expected output:
Year Dogville Cattown
1 6000 7700
2 7200 8470
5.
PROGRAM
#include <iostream>
using namespace std;
int main()//MAIN METHOD
{
int pop15,pop20;//INTEGER DECLARATION
double rateA,rateB;
int years=0;
cout<<"Enter the intial population of Dogville: ";
cin>>pop15;
cout<<"Enter the intial growth rate of Dogville: ";
cin>>rateA;
cout<<"Enter the intial population of Cattown: ";
cin>>pop20;
cout<<"Enter the intial growth rate of Cattown: ";
cin>>rateB;
rateA/=100.;
rateB/=100.;
cout<<"year Dogville Cattown ";
while(pop15<pop20)//LOOP STARTS
{
pop15=(int)(pop15*rateA+pop15);
pop20=(int)(pop20*rateB+pop20);
years++;
cout<<years<<" "<<pop15<<" "<<pop20<<endl;
}
system("pause");
return 0;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.