
Дан линейный массив A[1..N], содержащий целые числа. Посчитать сумму чисел, имеющих одинаковые
остатки при делении на 7 и на 2 и распечатать номера таких чисел.

Ответы на вопрос

PascalABC.NET 3.4.2, сборка 1887 от 30.11.2018
Внимание! Если программа не работает, обновите версию!
begin
var a := ArrRandom(ReadInteger('n='), -99, 99);
a.Println;
var s:=0;
for var i := 0 to a.High do
if (a[i] mod 7) = (a[i] mod 2) then
begin
Print(i + 1);
s+=a[i]
end;
Println;
Print('S =',s)
end.
Пример
n= 20
-66 27 -82 -18 -35 -41 34 -58 61 15 11 -43 -16 37 -99 69 -52 -97 16 -21
10 12 15
S = -127



Для решения этой задачи вам нужно пройти по всем элементам массива, вычислить остаток каждого числа при делении на 7 и на 2, а затем создать структуру данных для хранения сумм чисел с одинаковыми остатками. В этой структуре данных вы можете хранить номера элементов и сумму для каждой комбинации остатков.
Вот пример реализации на Python:
pythondef find_numbers_with_same_remainders(arr):
remainders_sum = {}
for i, num in enumerate(arr, 1):
remainder_7 = num % 7
remainder_2 = num % 2
remainder_key = (remainder_7, remainder_2)
if remainder_key in remainders_sum:
remainders_sum[remainder_key][0] += num
remainders_sum[remainder_key][1].append(i)
else:
remainders_sum[remainder_key] = [num, [i]]
for key, (total_sum, indices) in remainders_sum.items():
if len(indices) > 1:
print(f"Остатки {key[0]} при делении на 7 и {key[1]} при делении на 2: сумма = {total_sum}, номера элементов = {', '.join(map(str, indices))}")
# Пример использования:
A = [4, 7, 9, 12, 14, 17, 21, 23, 28, 30]
find_numbers_with_same_remainders(A)
Этот код создаст словарь remainders_sum
, где ключами будут комбинации остатков (остаток при делении на 7, остаток при делении на 2), а значениями будут списки, в которых первый элемент - сумма чисел с такими остатками, а второй элемент - список номеров элементов в массиве. Затем он пройдет по словарю и выведет информацию о сумме и номерах элементов для комбинаций остатков с более чем одним элементом.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili