Перевірити, чи є чотиризначне число щасливим квитком

Примітка: 
щасливим квитком називається число, в якому: 
а) при парній кількості цифр в числі сума цифр його лівої половини дорівнює сумі цифр його правої половини; 
б) при непарній кількості цифр - те ж саме, але з відкиданням серединної цифри. 
Наприклад, розглянемо число 1322. Його ліва половина 13, а права - 22, і воно є щасливим білетом (бо 1 + 3 = 2 + 2). 
Аналогічно: 1735 (1 + 7 = 3 + 5), 1111 (1 + 1 = 1 + 1) і т. д.
Приклади інших щасливих квитків за рамками умови поточного завдання:  (відкинули єдину цифру), 39466 (3 + 9 = 6 + 6, а 4 відкинули), 11 (1 = 1), і т. д.

Рішення. 
Для введення достатньо однієї змінної n типу word. 
Все, що необхідно зробити для розв'язання - це послідовно отримати всі розряди вихідного числа, причому з двох молодших розрядів (одиниць і десятків) сформувати першу суму, а з двох старших розрядів - другу, після чого вивести на екран результат булевського вираження рівності отриманих сум. 
Першу суму будемо зберігати в змінної right, а другу - в змінній left (обрано по розташуванню цифр у записі числа). Значення обох з них не може перевершувати 18 (бо для найбільшого допустимого числа 9999 обидві суми рівні 9 + 9 = 18), тому для їх опису використовуємо тип byte.
program HappyTicket;
var
n: word;
left, right: byte;
begin
readln(n);
right := n mod 10;
n := n div 10;
right := right + n mod 10;
n := n div 10;
left := n mod 10;
n := n div 10;
left := left + n;
writeln(left = right)
end.

Немає коментарів:

Дописати коментар