#include <iostream>
using namespace std;
//Declaracion de la Clase.
struct ArregloMedalleria{
int Medalla;
int Disciplina;
};
class Delegacion{
private:
int IdenPais;
string NomPais;
ArregloMedalleria Medallas [2][50];
int NumDisciplinas;
int NumDeportistas;
public:
Delegacion();
Delegacion(int,int);
Delegacion(int,string,int,int);
void set_IdenPais(int);
void set_NomPais(string);
void set_Medallas(int,int);
void set_NumDisciplinas(int);
void set_NumDeportistas(int);
int get_IdenPais();
string get_NomPais();
ArregloMedalleria get_Medallas();
int get_NumDisciplinas();
int get_NumDeportistas();
void RegistrarMedalla(int,int);
int CalcularPuntajeTotal();
};
Delegacion :: Delegacion(){
}
Delegacion :: Delegacion(int med,int disc){
}
Delegacion :: Delegacion(int id,string nom,int discip,int depor){
IdenPais = id;
NomPais = nom;
NumDisciplinas = discip;
NumDeportistas = depor;
}
void Delegacion :: set_IdenPais(int id){
IdenPais = id;
return;
}
void Delegacion :: set_NomPais(string nom){
NomPais = nom;
return;
}
void Delegacion :: set_NumDisciplinas(int discip){
NumDisciplinas = discip;
return;
}
void Delegacion :: set_NumDeportistas(int depor){
NumDeportistas = depor;
return;
}
void Delegacion :: set_Medallas(int med,int disc){
for(int i = 0;i < 50; i++){
Medallas [0][i].Medalla = med;
Medallas [1][i].Disciplina = disc;
}
return;
}
int Delegacion :: get_IdenPais(){
return IdenPais;
}
string Delegacion :: get_NomPais(){
return NomPais;
}
int Delegacion :: get_NumDisciplinas(){
return NumDisciplinas;
}
int Delegacion :: get_NumDeportistas(){
return NumDeportistas;
}
ArregloMedalleria Delegacion :: get_Medallas(){
return Medallas[2][50];
}
void Delegacion :: RegistrarMedalla(int med,int disc){
Delegacion set_Medallas(med,disc);
return;
}
int Delegacion :: CalcularPuntajeTotal(){
int Puntaje = 0;
for(int i = 0; i< 100; i++){
if(get_Medallas().Medalla == 1){
Puntaje = Puntaje + 10;
}else if(get_Medallas().Medalla = 2){
Puntaje = Puntaje + 5;
}else if(get_Medallas().Medalla = 3){
Puntaje = Puntaje + 3;
}
}
return Puntaje;
}
int main()
{
//int NumPart = 0;
int opcion1 = 5;
int opcion2 = 5;
int id;
string nom;
int disci;
int depor;
Delegacion Paises [100];
int idpais;
int med;
int discipli;
int idpais2;
//cout<<"Digite el Número de paises participantes: ";
//cin>>NumPart;
while(opcion1 != 3){
cout<<"Seleccione Una Opcion:"<<"\n"
"1.Ingreso de Informacion"<<"\n"
"2.Resultados"<<"\n"
"3.Salida"<<"\n";
cin>>opcion1;
switch(opcion1){
case 1:
while(opcion2 != 3){
cout<<"Seleccione Una Opcion:"<<"\n"
"1.Registro Pais"<<"\n"
"2.Registro Medallas"<<"\n"
"3.Salida"<<"\n";
cin>>opcion2;
switch(opcion2){
case 1:
//Paises[NumPart];
for(int i = 0; i< 100; i++){
cout<<"Identidad Pais";
cin>>id;
cout<<"Nombre Pais";
cin>>nom;
cout<<"Numero de Disciplinas";
cin>>disci;
cout<<"Numero de Deportistas";
cin>>depor;
Paises[i] = Delegacion(id,nom,disci,depor);
}
cout<<"Totalidad de Paices llenos siga con el registro de las medallas";
opcion2 = 5;
break;
case 2:
cout<<"Ingrese la identidad del pais";
cin>>idpais;
for(int j = 0; j < 100; j++){
if(Paises[j].get_IdenPais() == idpais){
for(int k = 0;k < 50; k++){
cout<<"Ingrese la Medalla";
cin>>med;
cout<<"Ingrese la Identidad de la Disciplina";
cin>>discipli;
Paises[j].RegistrarMedalla(med,discipli);
}
}
}
cout<<"Totalidad de medallas ingresadas";
opcion2 = 5;
break;
default:
break;
}
}
break;
case 2:
cout<<"Ingrese la identidad del pais a consultar";
cin>>idpais2;
for(int j = 0; j < 100; j++){
if(Paises[j].get_IdenPais() == idpais2){
cout<<"El puntaje de este pais es:"<<"\n";
Paises[j].CalcularPuntajeTotal();
}
}
opcion2 = 5;
break;
default:
break;
}
}
return 0;
}