Dans une population, le taux de natalité est le pourcentage d'augmentation de la population dû aux naissances, et le taux de mortalité est la diminution en pourcentage de la population due aux décès. Écrire un programme qui demande les éléments suivants:Calcul d'une nouvelle population
- La taille de départ d'une population (minimum 2) (Prompt taille Entrez à partir :)
- Le taux de natalité annuel (rapide Entrez le taux de natalité annuel :)
- le taux de mortalité annuel (Prompt Entrez le taux de mortalité annuel :)
- le nombre d'années à afficher (minimum 1) (Prompt Enter années pour afficher :)
le programme devrait alors afficher la population de départ et la projection popu lation à la fin de chaque année. Il devrait utiliser une fonction qui calcule et renvoie la nouvelle taille projetée de la population après une année. La formule est
N = P(1 + B)(1 - D)
où N
est la nouvelle taille de la population, P
est la taille de la population précédente, B
est le taux de natalité et D
est le taux de mortalité. Le taux annuel de natalité et le taux de mortalité sont les nombres typiques de naissances et de décès dans une année pour 1000 personnes, exprimés sous forme décimale. Par exemple, s'il y a normalement environ 32 naissances et 26 décès pour 1000 habitants dans une population donnée, le taux de natalité serait de 0,032 et le taux de mortalité de 0,026.
Voici mon code; J'ai du mal à comprendre comment faire le calcul.
#include "stdafx.h" // Defines IDE required "pre-compiled" definition files
#include <iomanip>
#include <iostream>
using namespace std
int main()
{
double startPop, // To hold the starting population.
float birthRate, // To hold the birth rate.
float deathRate; // To hold the death rate.
int numYears; // To hold the number of years to track population changes.
// Input and validate starting population
cout << "This program calculates population change.\n";
cout << "Enter the starting population size: ";
cin >> startPop;
while (startPop < 2.0)
{
cout << "Starting population must be 2 or more. Please re-enter: ";
cin >> startPop;
}
// Input and validate annual birth and death rates
cout << "Enter the annual birth rate (as % of current population): ";
cin >> birthRate;
while (birthRate < 0)
{
cout << "Birth rate percent cannot be negative. Please re-enter: ";
cin >> birthRate;
}
birthRate = birthRate/100; // Convert from % to decimal.
cout << "Enter the annual death rate (as % of current population): ";
cin >> deathRate;
while (deathRate < 0)
{
cout << "Death rate percent cannot be negative. Please re-enter: ";
cin >> deathRate;
}
deathRate = deathRate/100; // Convert from % to decimal.
cout << "For how many years do you wish to view population changes? ";
cin >> numYears;
while (numYears < 1)
{
cout << "Years must be one or more. Please re-enter: ";
cin >> numYears;
population = projectedNewSize(populationStartingSize, annualBirthRate, annualDeathRate);
cout << population << endl;
populationStartingSize = population;
}
printPopulations(startPop, birthRate, deathRate, numYears);
return 0;
} // End of main function
Votre devoir vous a donné toutes les informations dont vous avez besoin pour l'implémenter. Plus précisément, la formule est "N = P (1 + B) (1 - D)". Traduire une formule mathématique en code informatique est l'une des tâches les plus faciles de la programmation informatique. Votre question est "J'ai du mal à trouver comment faire le calcul." Eh bien, c'est comme ça que vous faites le calcul. C'est la formule. Quelle partie de "N = P (1 + B) (1 - D)" vous êtes incapable de comprendre? –