Leer los 250000 votos otorgados a los 3 candidatos a gobernador e imprimir el número del candidato ganador y su cantidad de votos.
Bien amigos como ya es costumbre, vamos a explicar el funcionamiento de este algoritmo, entonces lo primero que hacemos es ponerle un nombre en mi caso le puse:
Algoritmo detarea
Declaramos las siguientes variables:
Definir x, a, b, c, voto Como Entero
Inicializo la variable x con el numero 250,000 ya que así lo indica el ejercicio.
x = 250000
Este ciclo se repetirá 250,000 veces, hasta que la variable x sea igual a cero.
Repetir
Como son muchos números los más correcto es utilizar la función azar, para generar los números automáticamente.
Generamos números al azar entre 1 y 3, para descartar el cero le sumamos 1 a la función azar.
voto = azar(3) + 1
Evaluamos si el número almacenado en la variable voto es igual a 1.
si voto == 1 Entonces
Si la condición se cumple, entonces quiere decir que el voto es para el candidato1, contamos estos votos con la variable a.
a = a + 1
SiNo
Si la condición anterior no se cumple, entonces evaluamos si el numero asignado en la variable votos es igual a 2, si la condición se cumple entonces estos votos son para el candidato 2, contamos estos votos con la variable b.
si voto == 2 Entonces
b = b + 1
sino
Si la condición anterior no se cumple, entonces el voto es para el candidato 3, contamos estos votos con la variable c.
c = c + 1
FinSi
FinSi
En cada bucle decrementamos la variable x en 1, es decir que en cada bucle la vamos restando 1, hasta que sea igual a cero.
x = x – 1
Como ya mencionaba este bucle se repetirá hasta que la variable x sea igual a cero.
Hasta Que x == 0
Fuera del ciclo mostramos los votos que obtuvieron cada candidato.
Escribir «Candidato 1: «,a,» votos»
Escribir «Candidato 2: «,b,» votos»
Escribir «Candidato 3: «,c,» votos»
Ahora determinamos el candidato con más votos.
Primero evaluamos si los candidatos obtuvieron los mismos votos ya que es una posibilidad.
si a == b y a == c y b == c Entonces
Si la condición se cumple entonces mostramos indicando que los 3 candidatos tienen el mismo número de votos.
Escribir «Los tres candidatos tienen el mismo número de votos»
SiNo
Si la condición anterior no se cumple, entonces evaluamos si el candidato 1 y el candidato 2 tienen los mismos votos.
si (a == b y a > c) Entonces
Escribir «Los candidatos 1 y 2 tienen los mismos votos»
SiNo
Si la condición no se cumple, entonces evaluamos si el candidato 1 y el candidato 3 tienen los mismos votos.
si a == c y a > b Entonces
Escribir «Los candidatos 1 y 3 tienen los mismos votos»
SiNo
Si la condijo anterior no se cumple, entonces evaluamos si el candidato 2 tiene los mismos votos que el candidato 3. (Como puedes ver estoy evaluando todos los posibles casos)
si b == c y b > a Entonces
Escribir «Los candidatos 2 y 3 tienen los mismos votos»
SiNo
Si la condición anterior no se cumple, entonces quiere decir que no hay votos iguales, por lo tanto hay un ganador.
Entonces evaluamos si el número almacenado en la variable a es mayor al número almacenado en la variable b.
si a > b Entonces
Si la condición se cumple, entonces evaluamos si el numero almacenado en la variable a es mayor al número almacenado en la variable c.
si a > c Entonces
Si la condición se cumple, entonces el candidato con más votos es el candidato 1.
Escribir «El candidato 1 tiene más votos»
SiNo
Si la condición anterior no se cumple, entonces el candidato con más votos es el candidato 3.
Escribir «El candidato 3 tiene más votos»
FinSi
SiNo
Cuando la el numero almacenado en la variable a no sea mayor al número almacenado en la variable b, entonces evaluamos si el numero almacenado en la variable b, es mayor al número almacenado en la variable c.
si b > c Entonces
Si la condición se cumple, entones el candidato con más votos es el candidato 2.
Escribir «El candidato 2 tiene más votos»
SiNo
Si la condición anterior no se cumple, entones el candidato con más votos es el candidato 3.
Escribir «El candidato 3 tiene más votos»
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinAlgoritmo
Aquí puedes ver el funcionamiento de este algoritmo.
Esta es la solución de este algoritmo, espero les guste y más que nada que les pueda ser de utilidad, les comparto el código.
Si mi contenido te ha sido de utilidad y te gustaría hacerme una donación te dejo un enlace.