/***************************************************************************
* elecciones.cpp
*
* Sat Sep 3 22:39:50 2005
* Copyright 2005 Francisco Javier Rodriguez Arias - FJSistemas
* fjsistemas[arroba]yahoo.com
* Versión 1.0
****************************************************************************/
/*
* Este es un programa Libre; puede ser distribuído y/o modificado
* bajo las condiciones acá especificadas:
* Son bastante simples, usted puede modificar el código, puede
* redistribuir el presente sofware, puede compilarlo para otros
* sistemas operativos, vaya, puede hacerle lo que le de la regalada gana
* ¿Sencillo no? Pero no es oro todo lo que reluce, en todo caso, debe
* reconocer la autoría del código original (indicada más arriba) más la
* dirección de contacto, si hace cambios en el código, por favor,
* sírvase notificarlo al creador. En todo caso, este programa debe ser
* de código abierto, al igual que las modificaciones que Usted realice
* en el mismo, si se distribuye de esta forma, conserve este estilo de
* distribución (vaya, no se le permite cambiarlo ;) ).
*
* Si tiene alguna duda sobre la presente licencia, puede preguntar al
* creador del presente programa o a Jomra (jomra.tk[arroba]gmail.com,
* que es para quien se hizo originalmente :P )...
* Si le pone interface gráfica o lo traduce a otros idiomas, se
* lo agradeceremos profundamente...
*
* Si va a estafar a algún gobierno u organización vendiéndole el
* presente programa, nos lo cuenta para echarnos unos jajas y nos pasa
* su voluntad, esto es, el donativo que desee, pero comenta a los
* estafados quien es el creador del programa...
*
* ¿Alguien leerá la presente licencia? Lo dudo... Sea feliz y coma
* una perdiz ;).
*/
/**************************************************************************
* 1.- ¿Para qué es este programa?
*
* Para distribuir un número de escaños entre un número de partidos que
* cada cual ha conseguido un número de votos (obvio esto último), el
* reparto se hace mediante la Ley D'Hont, dándose el escaño, en caso de empate
* en un cociente determinado, al partido que más votos ha recibido
* (siguiendo el criterio empleado por la Ley Orgánica 5/1985 -de España-,
* el mencionado en su artículo 163).
*
* Ahora bien, en caso de empate en el total de votos, dicha ley recoge
* un sorteo para el primer reparto, los siguientes se asignan de forma
* alternativa, esto el programita NO LO HACE, si alguien quiere
* implementarlo, que lo haga, se lo agradeceremos (miren las condiciones
* de la Licencia). El programa asigna al azar los escaños en caso de este
* tipo de empate...
*
* Este programa no aplica vallas electorales, estas, en su caso, deben
* ser aplicadas antes de volcar los datos, esto es, si no le mete los datos
* de los partidos que no superaron la posible valla electoral, todo irá
* perfecto.
*
* 2.- ¿Cómo funciona?
*
* Básicamente hay dos formas de hacerlo funcionar, ahora pasamos a la
* necesaria explicación:
*
* 2.1.- Todo desde el programita de marras:
* Una vez se ejecuta el mismo se deben insertar los datos necesarios,
* esto es, en la primera línea se pone el número de partidos (en
* números, los arábicos, no los romanos...), en la segunda línea se
* pone el número de escaños (curules) a repartir. En la tercera y
* siguientes líneas se pone el nombre del partido (sin espacios y
* con un máximo de 30 caracteres) y al lado (con un espacio en blanco)
* el número de votos obtenidos por el partido (el número purito, sin
* comas o puntos para separar los miles, millones, y demás).
*
* Después de escribir todos los partidos y sus votos (cada uno en una línea)
* al tocar enter en el último de los partidos, el programa procesará
* los datos y nos dará el reporte del resultado.
*
* 2.2.- Haciendo que el programita de marras lea un archivo:
* Se escribe en un archivo de texto la información antes indicada,
* respetando en todo momento el orden de las líneas e indicaciones
* dadas en el punto anterior.
*
* Se escribe la línea para ejecutar el programa, se deja un espacio y se
* pone el símbolo "<" (sin las comillas), después del símbolo se escribe
* el nombre completo del archivo de texto (extensión incluida) y acá
* caben dos formas más de ver los resultados:
* a.- Tocar enter, se mostrará en la misma pantalla los resultados del
* reparto efectuado por el programita.
* b.- Escribir, en la línea de comando después de tipear el nombre
* del archivo que va a leer, ">" (sin las comillas) más el nombre de
* un archivo de texto que el programa creará para volcar los datos.
*
* 3.- ¿Qué datos arroja?
* Úsalo y lo verás. Básicamente te dice:
* - Cuantos escaños le tocan a cada partido (y qué por ciento del total
* de escaños repartidos representan los obtenidos).
* - El número de Escaño que le toca a cada partido (esto es, escaño por
* escaño te dice a qué partido le corresponde y con cuantos votos se
* ganó dicho escaño (si no sabes cómo los reparte, revisa el punto 1.
* - El siguiente partido con sus votos, para ver cuanta diferencia hay
* entre el último escaño repartido y el siguiente partido en la lista
* para ser receptor de un escaño.
*
* ... Y ya nada más.
*
* 4.- Versiones y demás...
* Aunque lo puede leer al comienzo de este archivo, este programa está
* escrito por Francisco Javier Rodríguez Arias - FJSistemas
* (fjsistemas[arroba]yahoo.com), colgado originalmente en www.jomra.tk y
* jomra.perublog.net, es la versión 1.0 y el resto de cuestiones, lea
* la licencia que está más arriba, cacho vago.
*
* 5.- Recomendación para quienes usen la versión de Windows:
* No escribe bien las Ñ y tildes en el modo consola, esto es, si ponen que los
* resultados los arroje dentro de un TXT, todo perfecto, si ponen que los datos
* sean arrojados directamente en la consola (símbolo de sistema) se verán mal
* eñes y tildes... Quien avisa no es traidor
*
*
* Este mensaje lo ha escrito Jomra (www.jomra.tk o http://jomra.perublog.net).
**************************************************************************/