Дана матрица А[1:4; 1:4] а) получить сумму и количество четных элементов в интервале [-10 +5]. б) сформировать вектор из сумм эл
Дана матрица А[1:4; 1:4] а) получить сумму и количество четных элементов в интервале [-10 +5]. б) сформировать вектор из сумм элементов матрицы по столбцам в) получить среднеарифметическое значение положительных элементов матрицы. г) получить произведение и сумму элементов в третьем столбце.
Var A: array [1..4, 1..4] of integer; B: array [1..4] of integer; i, j, Count, CountAr: byte; ArithMean: real; Sum, Mult, SumThird: integer; begin Mult := 1; randomize; writeln(' *** Исходный массив ***'); for i := 1 to 4 do begin for j := 1 to 4 do begin //Случайные значение в диапазоне [-30;30] A[i, j] := random(61)-30; //Сумма и количество четных в диапазоне [-10..5] if (A[i, j] mod 2 = 0) and ((A[i, j] >= -10) and (A[i, j] <= 5)) then begin Sum := Sum + A[i, j]; Count := Count + 1; end; //Количество и сумма положительных для среднего арифметического if A[i, j] > 0 then begin CountAr := CountAr + 1; ArithMean := ArithMean + A[i, j]; end; //Произведение и сумма 3-его столбца if j = 3 then begin Mult := Mult * A[i, j]; SumThird := SumThird + A[i, j]; end; write(A[i, j]:5); end; writeln; end; writeln('Количество четных [-10..5] = ', Count); writeln('Сумма четных [-10..5] = ', Sum); writeln('Среднее арифметическое = ', (ArithMean/CountAr):0:2); writeln('Произведение в 3 столбце = ', Mult); writeln('Сумма в 3 столбце = ', SumThird); //Получение вектора for j := 1 to 4 do begin Sum := 0; for i := 1 to 4 do Sum := Sum + A[i, j]; B[j] := Sum; end; writeln('Вектор:'); for i := 1 to 4 do writeln(B[i]:5); end.
<em>// PascalABC.NET 3.3, сборка 1625 от 17.01.2018</em> <em>// Внимание! Если программа не работает, обновите версию!</em>
begin Writeln('*** Исходная матрица ***'); var a:=MatrRandom(4,4,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var s:=a.ElementsByRow.Where(t->t.Between(-10,5) and t.IsEven); Writeln('На интервале [-10;5] четных элементов ',s.Count, ', их сумма равна ',s.Sum); var vc:=a.Cols.Select(t->t.Sum); Write('Вектор сумм по столбцам: '); vc.Println; Writeln('Среднее арифметическое положительных равно: ', a.ElementsByRow.Where(t->t>0).Average); Writeln('В третьем столбце сумма элементов равна ', a.Col(2).Sum,', произведение равно ', a.Col(2).Aggregate(1,(p,q)->p*q)) end.
<u>Пример</u> *** Исходная матрица *** 27 -87 73 -6 48 -50 75 -32 4 92 -84 85 27 4 31 -63 ---------------- На интервале [-10;5] четных элементов 3, их сумма равна 2 Вектор сумм по столбцам: 106 -41 95 -16 Среднее арифметическое положительных равно: 46.6 В третьем столбце сумма элементов равна 95, произведение равно -14256900
Это логическая задача которая рещается с помощью таблички начертите табличку в тетради которая будет состоять из 5 столбцов и 4-х строк затем пропишите в 4 столбцах магазины, а в сроках название покупак после чего можно приступать к решению задачи нам известно что в магазине D не было Дискет и джёстиков значит в столбце D напротив в строке Дискеты ставим знак минус и джойстик тоже минус