Найти сумму неповторяющихся элементов массива a(20) - Free Pascal
Формулировка задачи:
Даны элементы массива а(20).Найти сумму неповторяющихся элементов.
Решение задачи: «Найти сумму неповторяющихся элементов массива a(20)»
textual
Листинг программы
program pr;
const
n = 20;
var
i, m, sum, j, x, k, p: integer;
a: array [1..n] of integer;
begin
sum := 0;
for i := 1 to n do
begin
a[i] := random(21);
write(a[i]:3);
end;
for i := 1 to n do
begin
x := a[i];
k := 0;
for p := 1 to n do
if a[p] = x then k := k + 1;
if k = 1 then
sum := sum + x;
end;
writeln;
writeln('Сумма не повторяющихся элементов: ', sum);
end.
Объяснение кода листинга программы
- Объявляются константы и переменные:
- n = 20 (размер массива и количество итераций в первом цикле)
- i, m, sum, j, x, k, p (переменные для циклов и вычислений)
- Заполняется массив a случайными целыми числами от 0 до 20
- Выводится на экран каждый элемент массива a, отформатированный как 3-значное число
- Проверяется каждый элемент массива a на наличие повторений. Если элемент встречается только один раз, то его значение прибавляется к сумме sum
- Выводится на экран итоговая сумма неповторяющихся элементов массива a