Untitled
unknown
plain_text
3 years ago
5.4 kB
8
Indexable
/******************************************************************************
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;
}Editor is loading...