
Практическая работа №23. Сумма значений элементов массива Уровень A. Напишите программу, которая
заполняет массив из 10 элементов случайными чис-лами на отрезке [–5; 5] и находит сумму ненулевых элементов. Уровень B. Напишите программу, которая заполняет массив из 10 элементов случайными чис-лами на отрезке [–2; 2] и находит произведение ненулевых элементов. Уровень C. Напишите программу, которая заполняет массив из 20 элементов случайными чис-лами на отрезке [100; 1000] и находит отдельно сумму элементов в первой и во вто-рой половинах массива

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

#1
var
mas : array [1..10] of integer;
sum : integer := 0;
begin
for var i:=1 to 10 do begin
mas[i] := random(-5,5);
if (mas[i] <> 0) then
sum += mas[i];
end;
writeln(sum);
end.
#2
var
mas : array [1..10] of integer;
sum : integer := 1;
begin
for var i:=1 to 10 do begin
mas[i] := random(-2,2);
if (mas[i] <> 0) then
sum *= mas[i];
end;
writeln(sum);
end.
#3
var
mas : array [1..20] of integer;
sum : integer := 0;
sum1 : integer := 0;
begin
for var i:=1 to 20 do begin
mas[i] := random(100,1000);
if (i < 11) then sum += mas[i];
if (i >= 11) then sum1 += mas[i];
end;
writeln(sum + ' ' + sum1);
end.



Уровень a:
Для решения этой задачи можно использовать цикл, который будет заполнять массив случайными числами на заданном отрезке. Затем нужно пройтись по всем элементам массива и сложить все ненулевые значения. Вот пример программы на языке Python:
```python import random
# Создаем массив из 10 элементов arr = [0] * 10
# Заполняем массив случайными числами на отрезке [-5, 5] for i in range(len(arr)): arr[i] = random.randint(-5, 5)
# Вычисляем сумму ненулевых элементов sum_of_non_zero = 0 for num in arr: if num != 0: sum_of_non_zero += num
# Выводим результат print("Массив:", arr) print("Сумма ненулевых элементов:", sum_of_non_zero) ```
Уровень b:
Аналогично уровню a, но чтобы найти произведение ненулевых элементов массива, нужно изменить операцию сложения на операцию умножения. Вот пример программы:
```python import random
# Создаем массив из 10 элементов arr = [0] * 10
# Заполняем массив случайными числами на отрезке [-2, 2] for i in range(len(arr)): arr[i] = random.randint(-2, 2)
# Вычисляем произведение ненулевых элементов product_of_non_zero = 1 for num in arr: if num != 0: product_of_non_zero *= num
# Выводим результат print("Массив:", arr) print("Произведение ненулевых элементов:", product_of_non_zero) ```
Уровень c:
Для этого уровня нужно провести два цикла, один для первой половины массива, другой для второй половины. В каждом цикле нужно суммировать элементы соответствующей половины. Вот пример программы:
```python import random
# Создаем массив из 20 элементов arr = [0] * 20
# Заполняем массив случайными числами на отрезке [100, 1000] for i in range(len(arr)): arr[i] = random.randint(100, 1000)
# Вычисляем отдельно сумму элементов в первой и второй половинах массива sum_of_first_half = 0 sum_of_second_half = 0
for i in range(len(arr)//2): sum_of_first_half += arr[i]
for i in range(len(arr)//2, len(arr)): sum_of_second_half += arr[i]
# Выводим результат print("Массив:", arr) print("Сумма элементов в первой половине:", sum_of_first_half) print("Сумма элементов во второй половине:", sum_of_second_half) ```
Надеюсь, эти объяснения помогут вам решить задачу! Если у вас возникнут еще вопросы, не стесняйтесь задавать.


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