Реализовать процедуру или функцию, реализующую следующие операции над одномерны?

Реализовать процедуру или функцию, реализующую следующие операции над одномерны??и массивами. Написать программу, использующую данные алгоритмы. !Работу пррограммы организовать в виде функций! -Язык Программирования(Pascal) 1. Заменить положительные элементы массива единицами, отрицательные – нулями, посчитать количество положительных и отрицательных элементов. 2.Вывести на экран номера положительных элементов массива и посчитать количество таких элементов. 3.Найти сумму и среднее арифметическое значение модулей нечетных элементов массива. Сделайте хотя бы одно из трёх заданий! Буду благодарен!
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.1, сборка 1214 от 09.04.2016 procedure ex1(a:array of integer; var nn,np:integer); begin   nn:=0; np:=0;   for var i:=0 to a.Length-1 do     if a[i]<0 then begin a[i]:=0; Inc(nn) end     else       if a[i]>0 then begin a[i]:=1; Inc(np) end end; begin   var a:=ArrRandom(ReadInteger('n='),-20,20);   a.Println;   var kp,kn:integer;   ex1(a,kn,kp);   Writeln('Отрицательных ',kn,', положительных ',kp);   a.Println end. Тестовое решение: n= 15 -5 4 -10 15 12 -17 12 4 0 8 -2 -9 8 6 4 Отрицательных 5, положительных 9 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 // PascalABC.NET 3.1, сборка 1214 от 09.04.2016 procedure ex2(a:array of integer); begin   var k:=0;   for var i:=0 to a.Length-1 do     if a[i]>0 then begin Print(i+1); Inc(k) end;   Writeln(NewLine,'Количество положительных элементов равно ',k) end; begin   var a:=ArrRandom(ReadInteger('n='),-20,20);   a.Println;   ex2(a); end. Тестовое решение: n= 13 15 -3 1 11 -20 17 -17 -12 -12 20 11 2 20 1 3 4 6 10 11 12 13 Количество положительных элементов равно 8 // PascalABC.NET 3.1, сборка 1214 от 09.04.2016 procedure ex3(a:array of integer); begin   var s:=0;   var k:=0;   var i:=0;   while i<a.Length do begin     s+=abs(a[i]); Inc(k); i+=2     end;   Writeln('Сумма модулей нечетных элементов равна ',s);   Writeln('Их среднее арифметическое равно ',s/k) end; begin   var a:=ArrRandom(ReadInteger('n='),-20,20);   a.Println;   ex3(a); end. Тестовое решение: n= 10 2 -1 -14 -12 11 13 1 17 20 6 Сумма модулей нечетных элементов равна 48 Их среднее арифметическое равно 9.6
Не нашли ответ?
Ответить на вопрос
Похожие вопросы