| Crates.io | sainte_lague |
| lib.rs | sainte_lague |
| version | 0.1.2 |
| created_at | 2020-05-24 11:09:11.655764+00 |
| updated_at | 2022-05-20 22:13:02.016771+00 |
| description | Sainte-Laguë method for seat distribution used in multiple parliamentary elections all over the world. |
| homepage | https://github.com/juliuste/sainte_lague.rs |
| repository | https://github.com/juliuste/sainte_lague.rs |
| max_upload_size | |
| id | 245177 |
| size | 15,634 |
A rust implementation of the Sainte-Laguë (also known as Webster or Schepers) method. Parliament seat allocation algorithm used in multiple countries such as Germany, Latvia, New Zealand etc…
Attention: Since some countries (like Latvia or Norway) use a modification of the algorithm instead of this vanilla version, you should check your country's electoral legislature. Furthermore, I don't take any responsibility for the accuracy of the calculated numbers, even though I'm pretty confident with my implementation.
use sainte_lague::distribute;
// …
#[test]
fn german_bundestag_2013() {
let votes = [41.5, 25.7, 8.6, 8.4];
let seats = 631;
let distribution = distribute(&votes, &seats, &false);
let parliament = vec![311, 193, 64, 63];
assert_eq!(distribution, Ok(parliament));
}
// …
Full documentation on docs.rs.
largest-remainder-method - A rust implementation of the Hare-Niemeyer / Hamilton / largest remainder methodIf you found a bug or want to propose a feature, feel free to visit the issues page.