Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/02/2013, 15:52
sduvanandrey
 
Fecha de Ingreso: diciembre-2012
Mensajes: 5
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Clase en c++, no funciona

Bueno desde la ultima vez he estado trabajando con el algoritmo y esto es lo que me llevo ahora:
Código C++:
Ver original
  1. #include <iostream>
  2.  
  3. using namespace std;
  4. //Declaracion de la Clase.
  5. struct ArregloMedalleria{
  6.     int Medalla;
  7.     int Disciplina;
  8. };
  9. class Delegacion{
  10.     private:
  11.  
  12.     int IdenPais;
  13.     string NomPais;
  14.     ArregloMedalleria Medallas [2][50];
  15.     int NumDisciplinas;
  16.     int NumDeportistas;
  17.  
  18.     public:
  19.     Delegacion();
  20.     Delegacion(int,int);
  21.     Delegacion(int,string,int,int);
  22.  
  23.     void set_IdenPais(int);
  24.     void set_NomPais(string);
  25.     void set_Medallas(int,int);
  26.     void set_NumDisciplinas(int);
  27.     void set_NumDeportistas(int);
  28.     int get_IdenPais();
  29.     string get_NomPais();
  30.     ArregloMedalleria get_Medallas();
  31.     int get_NumDisciplinas();
  32.     int get_NumDeportistas();
  33.     void RegistrarMedalla(int,int);
  34.     int CalcularPuntajeTotal();
  35. };
  36. Delegacion :: Delegacion(){
  37. }
  38. Delegacion :: Delegacion(int med,int disc){
  39.  
  40. }
  41. Delegacion :: Delegacion(int id,string nom,int discip,int depor){
  42.     IdenPais = id;
  43.     NomPais = nom;
  44.     NumDisciplinas = discip;
  45.     NumDeportistas = depor;
  46. }
  47. void Delegacion :: set_IdenPais(int id){
  48.     IdenPais = id;
  49.  
  50.     return;
  51. }
  52. void Delegacion :: set_NomPais(string nom){
  53.     NomPais = nom;
  54.  
  55.     return;
  56. }
  57. void Delegacion :: set_NumDisciplinas(int discip){
  58.     NumDisciplinas = discip;
  59.  
  60.     return;
  61. }
  62. void Delegacion :: set_NumDeportistas(int depor){
  63.     NumDeportistas = depor;
  64.  
  65.     return;
  66. }
  67. void Delegacion :: set_Medallas(int med,int disc){
  68.     for(int i = 0;i < 50; i++){
  69.         Medallas [0][i].Medalla = med;
  70.         Medallas [1][i].Disciplina = disc;
  71.     }
  72.     return;
  73. }
  74. int Delegacion :: get_IdenPais(){
  75.     return IdenPais;
  76. }
  77. string Delegacion :: get_NomPais(){
  78.     return NomPais;
  79. }
  80. int Delegacion :: get_NumDisciplinas(){
  81.     return NumDisciplinas;
  82. }
  83. int Delegacion :: get_NumDeportistas(){
  84.     return NumDeportistas;
  85. }
  86. ArregloMedalleria Delegacion :: get_Medallas(){
  87.     return Medallas[2][50];
  88. }
  89. void Delegacion :: RegistrarMedalla(int med,int disc){
  90.     Delegacion set_Medallas(med,disc);
  91.     return;
  92. }
  93. int Delegacion :: CalcularPuntajeTotal(){
  94.     int Puntaje = 0;
  95.     for(int i = 0; i< 100; i++){
  96.         if(get_Medallas().Medalla == 1){
  97.             Puntaje = Puntaje + 10;
  98.         }else if(get_Medallas().Medalla = 2){
  99.             Puntaje = Puntaje + 5;
  100.         }else if(get_Medallas().Medalla = 3){
  101.             Puntaje = Puntaje + 3;
  102.         }
  103.     }
  104.     return Puntaje;
  105. }
  106.  
  107. int main()
  108. {
  109.     //int NumPart = 0;
  110.     int opcion1 = 5;
  111.     int opcion2 = 5;
  112.     int id;
  113.     string nom;
  114.     int disci;
  115.     int depor;
  116.     Delegacion Paises [100];
  117.     int idpais;
  118.     int med;
  119.     int discipli;
  120.     int idpais2;
  121.  
  122.     //cout<<"Digite el Número de paises participantes: ";
  123.     //cin>>NumPart;
  124.  
  125.     while(opcion1 != 3){
  126.         cout<<"Seleccione Una Opcion:"<<"\n"
  127.         "1.Ingreso de Informacion"<<"\n"
  128.         "2.Resultados"<<"\n"
  129.         "3.Salida"<<"\n";
  130.         cin>>opcion1;
  131.         switch(opcion1){
  132.             case 1:
  133.                     while(opcion2 != 3){
  134.                         cout<<"Seleccione Una Opcion:"<<"\n"
  135.                         "1.Registro Pais"<<"\n"
  136.                         "2.Registro Medallas"<<"\n"
  137.                         "3.Salida"<<"\n";
  138.                         cin>>opcion2;
  139.                         switch(opcion2){
  140.                             case 1:
  141.                                     //Paises[NumPart];
  142.                                     for(int i = 0; i< 100; i++){
  143.  
  144.                                         cout<<"Identidad Pais";
  145.                                         cin>>id;
  146.                                         cout<<"Nombre Pais";
  147.                                         cin>>nom;
  148.                                         cout<<"Numero de Disciplinas";
  149.                                         cin>>disci;
  150.                                         cout<<"Numero de Deportistas";
  151.                                         cin>>depor;
  152.                                         Paises[i] = Delegacion(id,nom,disci,depor);
  153.                                     }
  154.                                     cout<<"Totalidad de Paices llenos siga con el registro de las medallas";
  155.                                     opcion2 = 5;
  156.                             break;
  157.                             case 2:
  158.                                     cout<<"Ingrese la identidad del pais";
  159.                                     cin>>idpais;
  160.                                     for(int j = 0; j < 100; j++){
  161.                                         if(Paises[j].get_IdenPais() == idpais){
  162.                                             for(int k = 0;k < 50; k++){
  163.                                                 cout<<"Ingrese la Medalla";
  164.                                                 cin>>med;
  165.                                                 cout<<"Ingrese la Identidad de la Disciplina";
  166.                                                 cin>>discipli;
  167.                                                 Paises[j].RegistrarMedalla(med,discipli);
  168.                                             }
  169.                                         }
  170.                                     }
  171.                                     cout<<"Totalidad de medallas ingresadas";
  172.                                     opcion2 = 5;
  173.                             break;
  174.                             default:
  175.                             break;
  176.                         }
  177.                     }
  178.             break;
  179.             case 2:
  180.                     cout<<"Ingrese la identidad del pais a consultar";
  181.                     cin>>idpais2;
  182.                     for(int j = 0; j < 100; j++){
  183.                         if(Paises[j].get_IdenPais() == idpais2){
  184.                             cout<<"El puntaje de este pais es:"<<"\n";
  185.                             Paises[j].CalcularPuntajeTotal();
  186.                         }
  187.                     }
  188.                     opcion2 = 5;
  189.             break;
  190.             default:
  191.             break;
  192.         }
  193.  
  194.     }
  195.     return 0;
  196. }

Alfinal lo puedo ejecutar pero no me sale la respuesta correcta, donde sigo mal.