Форум » Обработка числовых последовательностей » 27 задание. 85 номер в файле ege27-C4.doc. Решение. » Ответить

27 задание. 85 номер в файле ege27-C4.doc. Решение.

_s.i.n.d_: Вот у меня такой вопрос: в ответах не представлено решение данного задания ВООБЩЕ БЕЗ КАКОГО-ЛИБО без массива, можно ли использовать ниже составленный мною алгоритм(без массива)? Он хоть и нагружен большим количеством переменных, но зато без использования какого-либо массива. Само задание: 85) На вход программы поступает последовательность из N целых положительных чисел. Нужно определить количество пар различных чисел, сумма которых делится на 12. Описание входных и выходных данных В первой строке входных данных задаётся количество чисел N (1 ≤ N ≤ 1000). В каждой из последующих N строк записано одно натуральное число, не превышающее 100. Пример входных данных: 8 10 14 7 13 5 30 9 6 Пример выходных данных для приведённого выше примера входных данных: 3 В данном случае условиям удовлетворяют три пары: (10, 14), (7, 5) и (30, 6). Суммы чисел в этих парах (24, 12 и 36) делятся на 12. ____________________________________________________________________________________________________________________- Решение: var n1, n2, n3, n4, n5, n6, n7, n8, n9, n10, n11, n12: integer; z, n, i, s:integer; begin readln(n);n1:=0; n2:=0; n3:=0; n4:=0; n5:=0; n6:=0; n7:=0; n8:=0; n9:=0; n10:=0; n11:=0; n12:=0; for i:=1 to n do begin readln(s); if s mod 12=1 then n1:=n1+1; if s mod 12=2 then n2:=n2+1; if s mod 12=3 then n3:=n3+1; if s mod 12=4 then n4:=n4+1; if s mod 12=5 then n5:=n5+1; if s mod 12=6 then n6:=n6+1; if s mod 12=7 then n7:=n7+1; if s mod 12=8 then n8:=n8+1; if s mod 12=9 then n9:=n9+1; if s mod 12=10 then n10:=n10+1; if s mod 12=11 then n11:=n11+1; if s mod 12=0 then n12:=n12+1;end; z:=(n1*n11)+(n2*n10)+(n3*n9)+(n4*n8)+(n5*n7)+(((n6-1)*n6) div 2) + (((n12-1)*n12) div 2); writeln(z); end.

Ответов - 0



полная версия страницы