Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
5.4 kB
2
Indexable
Never
/******************************************************************************

                              Online C++ Compiler.
               Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.

*******************************************************************************/

#include <iostream>
using namespace std;


int main()
{
    int tam= 5;
    int votoscandidatoA = 0;
    int votoscandidatoB= 0;
    int votoscandidatoC = 0;
    int votoscandidatoD = 0;
    int votosZONA1 = 0;
    int votosZONA2= 0;
    int votosZONA3 = 0;
    int votosZONA4 = 0;
    int votosZONA5 = 0;


    int elecciones[tam][tam]= {
        {1, 294, 64, 213, 65},
        {2, 178, 32, 423, 17},
        {3, 246, 79, 165, 21},
        {4, 542, 65, 975, 34},
        {5, 850, 64, 1002, 23}
        
    };
    
    
    for (int i=0; i<tam; i++){
        
        for (int j=0; j<tam; j++){
            //<<elecciones[j][i]<<"|";
            if(i==1){
                votoscandidatoA +=elecciones[j][i];
                
            }else if(i==2){
                votoscandidatoB +=elecciones[j][i];
            }else if(i==3){
                votoscandidatoC +=elecciones[j][i];
            }else if(i==4){
                votoscandidatoD +=elecciones[j][i];
            }
            
            if(j!=0){
                if(i==0){
                    
                    votosZONA1 += elecciones[i][j];
                }else if(i==1){
                    
                    votosZONA2 += elecciones[i][j];
                }else if(i==2){
                    votosZONA3 += elecciones[i][j];
                }else if(i==3){
                    votosZONA4 += elecciones[i][j];
                }else if(i==4){
                    votosZONA5 += elecciones[i][j];
                }
                
      
            }
            
            
        }
        cout<<endl;
    }
    
    int votos[4] = {votoscandidatoA, votoscandidatoB, votoscandidatoC, votoscandidatoD};
    int mayorVoto = 0;
    int index;
    float suma = 0;
    for (int i=0; i<4; i++){
        suma += votos[i];
        if(votos[i]>mayorVoto){
            mayorVoto = votos[i];
            index = i;
        }
    }
    bool hayUnPorcentaje = false;
    for (int i=0; i<4; i++){
        
        float porcentaje = (votos[i]*100)/suma;
        if(porcentaje>50){
           hayUnPorcentaje = true;
           break; 
        }
    }
    
   
   
    int candidatosIndex[4]= {1,2,3,4};
    if(!hayUnPorcentaje){
        
        //https://www.scaler.com/topics/cpp-selection-sort/
        
       for (int i = 0; i < 4 - 1; i++)
        {
            int indexMin = i; //Taken first index as minimum
            for (int j = i + 1; j < 4; j++)
            {
                //Making comparisons
                if (votos[j] > votos[indexMin])
                {
                    //Updating the minimum value
                    indexMin = j;
                }
            }
            //Swapping the values using swap() method
            swap(votos[indexMin], votos[i]);
            swap(candidatosIndex[indexMin], candidatosIndex[i]);
        }
    }
    
  
   
    cout<<"votoscandidatoA:"<<votoscandidatoA<<endl;
    cout<<"votoscandidatoB:"<<votoscandidatoB<<endl;
    cout<<"votoscandidatoC:"<<votoscandidatoC<<endl;
    cout<<"votoscandidatoD:"<<votoscandidatoD<<endl;
    cout<<"Porcentaje votos Candidato A: "<<(votoscandidatoA*100)/suma<<"%"<<endl;
    cout<<"Porcentaje votos Candidato B: "<<(votoscandidatoB*100)/suma<<"%"<<endl;
    cout<<"Porcentaje votos Candidato C: "<<(votoscandidatoC*100)/suma<<"%"<<endl;
    cout<<"Porcentaje votos Candidato D: "<<(votoscandidatoD*100)/suma<<"%"<<endl;
    cout<<"votosZONA1:"<<suma<<endl;
    cout<<"votosZONA2:"<<votosZONA2<<endl;
    cout<<"votosZONA3:"<<votosZONA3<<endl;
    cout<<"votosZONA4:"<<votosZONA4<<endl;
    cout<<"votosZONA5:"<<votosZONA5<<endl;
    
    if(hayUnPorcentaje){
        if(index == 0){
          cout<<"Ganador Candidato A con "<<mayorVoto<<" votos"<<endl;  
        }else if(index == 1){
          cout<<"Ganador Candidato B con "<<mayorVoto<<" votos"<<endl;  
        }else if(index == 2){
          cout<<"Ganador Candidato C con "<<mayorVoto<<" votos"<<endl;  
        }else if(index == 3){
          cout<<"Ganador Candidato D con "<<mayorVoto<<" votos"<<endl;  
        }
    }else {
        cout<<"Candidatos con mayores votos para la segunda vuelta"<<endl;
        if(candidatosIndex[0]== 1){
          cout<<"Candidato A"<<endl;  
        }else if(candidatosIndex[0] == 2){
          cout<<"Candidato B"<<endl;  
        }else if(candidatosIndex[0] == 3){
          cout<<"Candidato C"<<endl;  
        }else if(candidatosIndex[0] == 4){
          cout<<"Candidato D "<<endl;  
        }
        if(candidatosIndex[1]== 1){
          cout<<"Candidato A"<<endl;  
        }else if(candidatosIndex[1] == 2){
          cout<<"Candidato B"<<endl;  
        }else if(candidatosIndex[1] == 3){
          cout<<"Candidato C"<<endl;  
        }else if(candidatosIndex[1] == 4){
          cout<<"Candidato D "<<endl;  
        }
       
    }
        
    
    return 0;
}