En este artículo, escribiremos un programa basado en menús para implementar el Sistema de Votación. El programa debe contener las siguientes propiedades:
- Emitir votos.
- Muestra el conteo de votos de cada candidato.
- Muestra el nombre del candidato que tiene más votos.
Enfoque: siga los pasos a continuación para resolver el problema:
- Proporcione las siguientes opciones a la persona que está accediendo como se muestra a continuación:
- Vota por tu Candidato favorito.
- Consultar el número de votos de cada Candidato.
- Marque el candidato que lidera y luego Salir .
- El usuario elige una de las opciones.
- Si el usuario elige 1, se muestra la lista de candidatos y ahora el usuario puede elegir de esta lista de candidatos.
- Si el usuario elige 2, se muestra la lista de candidatos junto con su número actual de votos.
- Si el usuario elige 3, se muestra el nombre del candidato con el máximo número de votos. Si hay más de un candidato con el máximo de votos, muestra un mensaje de error que dice «No hay ganador».
- Este programa continúa hasta que el usuario elige 0 para salir() .
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program for the above approach #include <bits/stdc++.h> using namespace std; // Driver Code int main() { int choice, i, N; // Stores the names of candidates vector<string> candidates = { "A", "B", "C", "D", "E" }; N = candidates.size(); // Stores the votes of candidates vector<int> votes(N); do { cout << "\n1. Vote for your " << "favorite Candidate.\n"; cout << "2. Check the number " << "of votes of each " "Candidate.\n"; cout << "3. Check the candidate " << "who is leading.\n"; cout << "0. Exit\n"; // Take input of options cout << "Enter Your choice: "; cin >> choice; cout << "\n"; // Switch Statement switch (choice) { case 1: { int candidatechoice; // Display the names of // all the candidates for (i = 0; i < N; i++) cout << i + 1 << "." << candidates[i] << "\n"; cout << "Choose your candidate: "; // Taking user's vote cin >> candidatechoice; cout << "\n"; // Update the vote of the // chosen candidate votes[candidatechoice - 1]++; break; } case 2: { // Display the name and votes // of each // candidate for (i = 0; i < N; i++) cout << i + 1 << "." << candidates[i] << " " << votes[i] << "\n"; break; } case 3: { int mx = 0; string winner; // Find the candidate with // maximum votes for (int i = 0; i < N; i++) if (votes[i] > mx) { mx = votes[i]; winner = candidates[i]; } int flag = 0; // Check whether there are // more than one candidates // with maximum votes for (int i = 0; i < N; i if (votes[i] == mx && winner != candidates[i]) { flag = 1; break; } if (!flag) cout << "The current winner is " << winner << ".\n"; else cout << "No clear winner\n"; } default: "Select a correct option"; } } while (choice != 0); return 0; }
Producción:
Publicación traducida automáticamente
Artículo escrito por jagroopofficial y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA