Введите с клавиатуры одномерный массив А(К), элементами которого являются положительные и
отрицательные числа.Подсчитайте сумму положительных и произведение отрицательных.Затем сформируйте новый массив В(К) из массива А(К),в котором все положительные элементы замените на произведение отрицательных,а отрицательные на сумму положительныхОтветы на вопрос
Pascal
var a,b: array of integer;
i,k,s1,s2: integer;
begin
s1:=0;
s2:=1;
write('Введите количество элементов массива');
readln(k);
setlength(a,k);
setlength(b,k);
for i:=0 to k-1 do
begin
write('Ввод данных для a[',i,']=');
readln(a[i]);
if a[i]>0 then s1:=s1+a[i] else s2:=s2*a[i];
end;
writeln('Данные массива A:');
for i:=0 to k-1 do writeln('a[',i,'] = ',a[i]);
writeln;
writeln('Данные массива B:');
for i:=0 to k-1 do
begin
if a[i]>0 then b[i]:=s2 else b[i]:=s1;
writeln('b[',i,'] = ',b[i]);
end;
end.
Хорошо, давайте реализуем алгоритм на каком-нибудь псевдокоде. Это поможет понять логику решения. Для простоты предположим, что массивы индексируются с 1 до К.
plaintext// Вводим массив А(К) Для i от 1 до К: Вводим A(i) // Инициализируем переменные для суммы положительных и произведения отрицательных sum_positive = 0 product_negative = 1 // Вычисляем сумму положительных и произведение отрицательных Для i от 1 до К: Если A(i) > 0: sum_positive = sum_positive + A(i) Иначе: product_negative = product_negative * A(i) // Создаем массив B(К) и заполняем его значениями Для i от 1 до К: Если A(i) > 0: B(i) = product_negative Иначе: B(i) = sum_positive // Выводим массив B(К) Для i от 1 до К: Выводим B(i)
Это простой псевдокод, и код может быть реализован на разных языках программирования, но общая логика остается прежней.
Приведу пример входных данных и результата:
Предположим, у нас есть массив A(5) со следующими элементами:
cssA = [2, -3, 5, -7, 4]
Произведение отрицательных элементов: -3 * -7 = 21 Сумма положительных элементов: 2 + 5 + 4 = 11
Теперь создаем массив B(5) на основе указанных правил:
cssB = [21, 11, 21, 11, 21]
Это и есть ответ: B = [21, 11, 21, 11, 21]
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili
