Голосование

Программа позволяет проводить голосование по системе За/Против/Воздерживаюсь.

Распределение регистров

Данные пользователя:

Неиспользуемые:

Использование

Перед началом нового голосования нужно набрать число голосующих и нажать В/О С/П.

На каждой итерации в #X появляется количество уже проголосовавших (вначале — 0), в #Y — число ещё не голосовавших (вначале равно общему числу голосующих).

При непосредственном голосовании очередной его участник устанавливает переключатель Р—ГРД—Г в положение, соответствующее своему выбору (Р — «за», Г — «против», ГРД — «воздерживаюсь»), после чего нажимает С/П и передаёт калькулятор следующему; если голосующий желает сохранить тайну своего волеизъявления, перед передачей калькулятора дальше ему следует перевести переключатель Р—ГРД—Г в нейтральное положение ГРД. (Если необходима документальная фиксация голосов, например в бюллетенях, её надо проводить параллельно).

Другой сценарий использования предполагает, что имеются уже заполненные бюллетени; в таком случае оператором программы является участник счётной комиссии, который берёт очередной бюллетень, устанавливает переключатель в положение, соответствующее выбранному в бюллетене варианту, и нажимает С/П.

В любом случае действия «установка переключателя» и С/П повторяются, пока не будут учтены все голоса́.

Признаком завершения голосования по вопросу является появление на экране общего числа участников со знаком минус. После этого можно ознакомиться с результатами:

Поскольку эти значения находятся в стеке, их можно просмотреть сразу после останова, последовательно нажимая F .

Остальные данные можно проконтролировать, вызывая содержимое соответствующих адресуемых регистров:

Если голосование включает несколько вопросов, то голоса́ подсчитываются по отдельному вопросу, и только подведя его итоги, следует переходить к голосованию по следующему вопросу, нажав С/П.

Исходный код

	X→П0    0       X→П4    X→П5    X→П6    С/П     КНОП    2       F10ˣ    Fcos
	Fx<0    15      КП→X5   БП      21      Fx=0    20      КП→X6   БП      21
	КП→X4   П→X0    1       −       П→X4    П→X5    П→X6    +       +       FL0
	05      X→П0    2       F10ˣ    ÷       FВx     ↔       П→X4    ↔       ÷
	X→П1    П→X5    FВx     ÷       X→П2    +       -       X→П3    П→X2    П→X1
	П→X0    /−/     С/П     В/О

Программу разработал, перевёл в формат эмулятора и составил эту инструкцию А. Лаврик — 2025-04-25

Идея программы почерпнута в журнале «Наука и жизнь» № 10/1990, стр. 112, статья «Калькулятор — машина для голосования», автор А. Белогорцев (Севастополь). Однако алгоритм управления данной программы совершенно иной — более продуманный и снижающий вероятность ошибок пользовательского ввода.