Ir ao conteúdo
  • Cadastre-se

Projeção populacional em C


Rodrigo Gouveia
Ir à solução Resolvido por CiroboyBR,

Posts recomendados

Estou criando um programa em C como parte de um projeto da faculdade e preciso usar uma projeção populacional...
Até agora o que tenho tentado programar não tem me retornado nenhum valor.

 

#include <stdio.h>int vu, x;float nh, tx;float pops[100];main(){	printf("vida util.\n");	scanf("%i", &vu);	printf("numero de habitantes.\n");	scanf("%f", &nh);	printf("taxa de crescimento.\n");	scanf("%f", &tx);			for (x=0; x == vu; x++){		pops[0]=nh;	}	for(x = 1; x == vu; x++){		pops[x] = pops[x--] + (pops[x--] * (tx / 100));		scanf("%f", &pops[x]);		}		    for (x = 0; x == vu; x++){    	printf("valores de população:\n %d", pops[x]);	}}

 

Basicamente para os valores do vetor ele tem que usar os valores do vetor anterior. E o vetor inicial é o inserido como numero de habitantes.
Se alguém puder me dizer em que parte está errado.

Estou usando Dev C++ para programar e ele tem compilado sem problemas, então não consigo achar o que posso ter feito errado.

Desde já agradeço.

Link para o comentário
Compartilhar em outros sites

Então, isso vai ser parte de um programa muito maior sobre aterros sanitários.
Toda a parte de dimensionamento eu já programei, deu 138 linhas de código.

Mas o problema tem sido essa parte de projeção populacional, e ela deve funcionar da seguinte forma:
Usando a vida útil pretendida pro aterro, a população atual e a taxa de crescimento populacional ele vai calcular a projeção de habitantes para a vida util do aterro:
A lógica matemática da coisa é:

 

Numero de habitantesx = Numero de habitantesx-1 + [Numero de habitantesX-1 * (taxa de crescimento / 100)]

 

E para poder começar o calculo, preciso que o programa entenda que vetor[0] é o NH.

E preciso que ele guarde os valores (Assim que compreender o que fiz de errado e ele funcionar vou usar o vetor em outros calculos).

Mas sempre que executo, ele me retorna 0...

Link para o comentário
Compartilhar em outros sites

  • Solução

tem vários erros, olha a correção e compara:

 

#include <stdio.h>int vu, x;float nh, tx;float pops[100];main() {    printf("vida util.\n");    scanf("%d", &vu);    printf("numero de habitantes.\n");    scanf("%f", &nh);    printf("taxa de crescimento.\n");    scanf("%f", &tx);    for (x=0; x < vu; x++)        pops[x]=nh;    for(x = 1; x < vu; x++)        pops[x] = pops[x-1] + (pops[x-1] * (tx / 100.0));    for (x = 0; x < vu; x++)        printf("\nvalores de população: %.1f", pops[x]);    system("pause");}
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...