Olá, eu estou com um problema com o seguinte exercicio:A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário
e o número de filhos. A prefeitura deseja saber:
· a média do salário da população;
· a média do número de filhos;
· o maior salário;
· a porcentagem de pessoas com salários de até R$ 1000,00
Para finalizar a leitura digite um salário igual a zero.
sempre que eu rodo o programa os resultados que ele mostra estão totalmente errados e eu não consegui localizar o erro.
#include <stdio.h>
#include <iostream>
#include <locale.h>
#include <cstdlib>
using namespace std;
int main (){
system("color 0A");
system("mode con:cols=99 lines=40");
/*A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário
e o número de filhos. A prefeitura deseja saber:
· a média do salário da população;
· a média do número de filhos;
· o maior salário;
· a porcentagem de pessoas com salários de até R$ 1000,00
Para finalizar a leitura digite um salário igual a zero.*/
setlocale (0, "Portuguese");
double sal;
int f;
double mediasal;
double mediaf;
double porcent;
int contsal;
double somasal;
double somamil;
int contf;
int somaf;
double salmax;
int hab;
char repeat;
while (repeat =='s' || 'S'){
sal=1; //Variável idade será igualada a 1.
f=0; //Variável cont será igualada a 0.
mediasal=0;//Variável sal será igualada a 0.
mediaf=0;//Variável mediasal será igualada a 0.
porcent=0;
contsal=0;//Variável somasal será igualada a 0
somasal=0;//Variável somasal será igualada a 0.
somamil=0;//Variável somasal será igualada a 0.
contf=0;
somaf=0;
salmax=0;//Variável idmax será igualada a 0.
hab=0;
while(sal != 0){
cout <<"\nDigite o salário:R$";
cin >> sal;
cout <<"\nDigite a quantidade de filhos:";
cin >> sal;
cout <<"\n---------------------------------------------------------------------------------------------------\n" << endl;
contf=contf+1;// Contator de quantos filhos foram informados.
somaf=somaf+f;// Acumulador dos valores dos filhos informados.
if(sal>salmax){
salmax= sal;
}
if(sal<= 1000.00){ // Se salário for menor ou igual a 1000, será adicionado 1 ao contador.
somamil=somamil+sal;//Acumulador dos valores dos salários informados.
}
hab=hab+1;
}
mediasal= somasal/contsal;/*Será dividida a soma dos salários pelo contador dos salários,
obtendo a média dos laários*/
mediaf= somaf/contf;/*Será dividida a soma dos salários pelo contador dos salários,
obtendo a média dos laários*/
mediasal= somasal/contsal;/*Será dividida a soma dos salários pelo contador dos salários,
obtendo a média dos laários*/
porcent= (somamil*100)/hab;
cout <<"\n---------------------------------------------------------------------------------------------------\n" << endl;
cout <<"A média dos salários é de:" << mediasal << endl;
cout << "Maior salário:" << salmax << endl;
cout << "A média dos filhos é de:" << mediaf << endl;
cout <<"A porcentagem de pessoas com salário até R$1000.00 é de:" << porcent << endl;
cout <<"\nDeseja utilizar o programa novamente<S/N>?:";
cin >> repeat;
if(repeat=='N'||'n'){
break;
}
cout << endl;
}
cout <<"\n---------------------------------------------------------------------------------------------------\n" << endl;
cout <<"\n\n\tAperte ENTER.";
system ("PAUSE>NULL");
return 0;
}