hola, tengo ke hacer este programita:
La ONU quiere guardar información sobre l'organitzación de sus païes miembros i de las províncias que estos contienen, juntamente con su PIB (producto interior bruto).
La información sobre una província determinada se guarda en la tupla siguiente:
struct Provincia {
string nom;
string capital;
int habitants;
int area;
double pib;
};
La información sobre un pais determinado se guarda en tupla siguiente:
struct Pais {
string nom;
string capital;
vector<Provincia> provs;
};
La información sobre totso los paises se guarda en un vector de paises:
typedef vector<Pais> Paisos;
Utilizando las definiciones anteriores hacer una funcion
int habitants(const Paisos& p, double x);
que devulva la suma de todos los habitantes de los paises de p que tengan al menos dos provincias con producto interior bruto inferior o igual a x.
Lo he hecho, esta seria mi funcion:
int habitants(const Paisos& p, double x) {
int st = 0;
int sp = 0;
int cprov = 0;
for(int i = 0; i<p.size(); ++i) {
for(int j = 0; j<p
.provs.size(); ++i) {
sp += p.provs[j].habitants;
if(p.provs[j].pib <= x) ++cprov;
}
if(cprov >= 2) st += s;
sp = cprov = 0;
}
return st;
}
el sp seria un contador para contar todos los habitantes del pais en que estamos, el cprov seria un contador para contar las provincias ke tienen un pib <= x, i en el st se irian sumando los havitantes de los paises ke tuvieran al menos 2 provincias con el pib <= x.
Esta funcion la envio a un programa corrector ke me dice si esta bien o no, pero me dice ke esta mal, y no se donde esta el fallo, si alguien me pudiera hechar un cable....
P.d: soy estudiante de universidad, y este es un programa de la lista de ejercicios ke nos pasaron para hacer.
gracias adelantadas, salu2