Вопрос задан 27.02.2019 в 17:43. Предмет Информатика. Спрашивает Радошнов Давид.

2. В массиве Z[1..N] определить сумму нечетных чисел от последнего нулевого значения до Z[N] и

среднее арифметическое четных чисел, находящихся в массиве до последнего нуля. Если нулей в массиве нет, то рассортировать все числа по убыванию.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Авсюкевич Аким.
Const nx =50;
var z:array[1..nx] of integer; i,j,n,m,d,s,s1,k:integer; sr:real;
begin
write ('Введите число элементов n');read(n);
for i:= 1 to n do begin
z[i]:= random(30)-5;
write(z[i]:3);
if z[i]=0 then m:=i;end;writeln;
if m > 0 then begin
for j:=1 to n do begin
if (j< m) and (z[j] mod 2 = 0) then  s:= s + z[j];
if (j> m) and (z[j] mod 2 = 1) then begin s1:= s1 + z[j]; k:= k +1; end;end;end
else
begin
writeln;
for i:=1 to n do begin
for j:=2 to n do begin
if z[j] > z[j-1] then begind:=z[j-1]; z[j-1]:=z[j];  z[j]:= d;end;end;
end;end;writeln;
sr:= s1 /k;
if m > 0 then begin
writeln('сумму нечетных чисел от последнего нулевого значения до Z[N]', s:6);
write('среднее арифметическое четных чисел, находящихся в массиве до последнего нуля ', sr:6:3);
end
else
for j:=1 to n do
write(z[j]:3);end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, это задача на работу с массивами чисел. Давай разберём её шаг за шагом.

1. Определение суммы нечетных чисел от последнего нулевого значения до Z[N]: - Нам нужно найти последний ноль в массиве и начать суммировать нечетные числа после него. - Переберём массив с конца к началу, найдем последний ноль и начнем суммировать нечетные числа после него до конца массива.

2. Вычисление среднего арифметического четных чисел до последнего нуля: - Тут нам нужно найти последний ноль и вычислить среднее арифметическое четных чисел до этого нуля. - Обратный проход по массиву до первого нуля, подсчет количества четных чисел и их суммы для вычисления среднего арифметического.

3. Если нулей в массиве нет, рассортировать все числа по убыванию: - В этом случае, если нулей нет, используем метод сортировки, например, пузырьковую сортировку или сортировку вставками для упорядочивания чисел в порядке убывания.

Пример кода на Python, который решает эту задачу:

```python def sum_odd_after_last_zero(arr): last_zero_index = -1 for i in range(len(arr) - 1, -1, -1): if arr[i] == 0: last_zero_index = i break

odd_sum = 0 for i in range(last_zero_index + 1, len(arr)): if arr[i] % 2 != 0: odd_sum += arr[i]

return odd_sum

def average_even_before_last_zero(arr): last_zero_index = -1 for i in range(len(arr) - 1, -1, -1): if arr[i] == 0: last_zero_index = i break

even_count = 0 even_sum = 0 for i in range(last_zero_index): if arr[i] % 2 == 0: even_count += 1 even_sum += arr[i]

if even_count == 0: return None else: return even_sum / even_count

def sort_descending(arr): arr.sort(reverse=True) return arr

# Пример использования функций: Z = [3, 8, 2, 0, 5, 7, 0, 10, 4] sum_odd = sum_odd_after_last_zero(Z) avg_even = average_even_before_last_zero(Z)

if sum_odd > 0: print(f"Сумма нечетных чисел после последнего нуля: {sum_odd}") else: print("Нет нечетных чисел после последнего нуля")

if avg_even is not None: print(f"Среднее арифметическое четных до последнего нуля: {avg_even}") else: print("Нет четных чисел до последнего нуля")

if sum_odd == 0 and avg_even is None: sorted_arr = sort_descending(Z) print(f"Отсортированный массив по убыванию: {sorted_arr}") ```

Этот код решает задачу для заданного массива `Z` и выводит соответствующие результаты, в зависимости от условий, описанных в задаче.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос