Idees per al programa de la Llei de d'Hondt
S'assenyalen de manera especial els "quocients" que, en l'exemple
del BOE, atorguen els 8 diputats.
división |
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
A
|
168.000 |
84.000 |
56.000 |
42.000 |
33.600 |
28.000 |
24.000 |
21.000 |
B
|
104.000 |
52.000 |
34.666 |
26.000 |
20.800 |
17.333 |
14.857 |
13.000 |
C
|
72.000 |
36.000 |
24.000 |
18.000 |
14.400 |
12.000 |
10.285 |
9.000 |
D
|
64.000 |
32.000 |
21.333 |
16.000 |
12.800 |
10.666 |
9.142 |
8.000 |
E
|
40.000 |
20.000 |
13.333 |
10.000 |
8.000 |
6.666 |
5.714 |
5.000 |
F
|
32.000 |
16.000 |
10.666 |
8.000 |
6.400 |
5.333 |
4.571 |
4.000 |
Hi ha algunes variants pràctiques en la manera d'enunciar com s'adjudiquen
els diputats:
- Naturalment que en alguns casos pot ser més recomanable treballar
canviant el paper de les files i les columnes.
- Podeu veure a mat.uab.es/seccio/raco/llibre/eleccions.pdf
l'explicació següent:
Fem una taula amb una fila per a cada candidatura, i posem a la primera columna
el nombre de vots v que ha obtingut cadascuna. La llista amb
més vots rep el primer escó. Hi fem una marca, i posem a la
segona columna el nombre de vots dividit per 2. Entre tots els números
de la taula que no estan marcats, escollim el més gran... i així
successivament. Quan el nombre més gran sigui el resultat de dividir
v per n a la columna següent es posa el resultat
de dividir v per n+1.
- En el curs
de C++ de la SGTI es fa servir un procediment anàleg a l'anterior
però treballant no amb una "graella" sinó únicament
amb una llista o vector on es van actualitznt en cada moment els "quocients"
que corresponen a cada partit.
- Si us interessa el tema podeu
consultar l'enunciat de lleis electorals en certa manera anàlogues
a la de d'Hondt però que preserven més (o menys) la proporcionalitat
vots/escons.
Pel que fa a l'elaboració del programa amb Wiris:
- Podeu passar una llista a vector amb la comanda llista i recíprocament
amb la comanda vector.

- Un vector té un avantatge: el podeu dividir "globalment"
per un número; cosa que no es pot fer amb una llista.

- Teniu la comanda zeros(n) que construeix una seqüència
amb n zeros; i a partir d'aquí {zeros(n)} o bé
[zeros(n)] per tenir una llista o un vector, respectivament.
- Una matriu (o "graella") és un vector de vectors.