Терминатор(начало)->данные(ввод N)->функция(нахождение суммы всех отр. чисел)->терминатор(конец) условие?условие_верно:условие_ложно если надо более подробно, то вместо функции: условие(число отрицательное?добавить в сумму->данные(сложить_отр._число): пропустить)->данные(N_декремент)->условие(если N>0?повторить_всю_эту_муть_что_я_написал_в_этой строке_и_поза строках:терм.(конец))
const M = 10; var a : array [1..M] of integer; i,max, odd : integer; begin odd := 0; {Заполнение массива} for i := 1 to M do begin write('Input a[',i,']:' ); readln(a[i]); end; {Вывод массива на экран} for i := 1 to M do write(a[i]:2,' '); writeln; {Поиск максимального в массиве} max := a[1]; for i := 2 to M do if (a[i] > max) then max := a[i]; writeln('Максимальный элемент массива: ',max); {Поиск всех нечетных чисел в массиве и замена их на 1} for i := 1 to M do if (a[i] mod 2 = 1) then begin a[i] := 1; odd := 666; end; {Вывод сообщения об отсутствии нечетных чисел} if (odd = 0) then writeln('В массиве нечетных чисел нет'); {Вывод преобразованного массива} for i := 1 to M do write(a[i]:2,' '); writeln; readln; end.
В фигурных скобках - комментарии, из программы можно удалять безболезненно. M - количество элементов в массиве. Контрольные примеры для массива из 10 элементов: 1) Массив "1 2 3 4 5 6 7 8 9 10" будет преобразован в "1 2 1 4 1 6 1 8 1 10", максимальный элемент (до преобразования) 10 2) Массив " 2 2 2 2 2 2 2 2 2 2" будет преобразован в " 2 2 2 2 2 2 2 2 2 2", на экран будет выведено сообщение "в массиве нечетных чисел нет", максимальный элемент 2
условие?условие_верно:условие_ложно
если надо более подробно, то вместо функции:
условие(число отрицательное?добавить в сумму->данные(сложить_отр._число): пропустить)->данные(N_декремент)->условие(если N>0?повторить_всю_эту_муть_что_я_написал_в_этой строке_и_поза строках:терм.(конец))