Дана матрица действительных чисел размера 7 на 7. вычислите число отрицательных и положительных элементов матрицы, а также найдите среднее арфиметическое каждого из столбца
Const n=7; Var ma:array[1..n,1..n] of integer; countn,countp,i,j:integer; sr:real; begin for i:=1 to n do for j:=1 to n do begin readln(ma[i][j]); if ma[i][j]>0 then inc(countp) else if ma[i][j]<0 then inc(countn); end; for i:=1 to n do begin for j:=1 to n do write(ma[i][j]:4); writeln; end; writeln('Count of positive=',countp,', count of negative=',countn); for j:=1 to n do begin sr:=0; for i:=1 to n do sr+=ma[i][j]; writeln(j,' ',sr/n); end; end.
Program q1; uses crt; const n=10; var i,j:integer; mass:array [1..n] of integer; countNum:integer; // переменная для хранения количества нечетных чисел proizv:integer; // переменная для хранения произведения нечетных чисел BEGIN proizv:=1; // так как, изначально равно 0, а при умножении на 0 будет всегда 0 {создание последовательности n целых чисел} Writeln('Случайные целые числа: '); for i:=1 to n do begin mass[ i ]:=random(9)+1; //присваеваем переменной случайное значение от 1 до 10 write(inttostr(mass[ i ])+', '); end; {Вычисление произведения и количества нечетных чисел} for i:=1 to n do if mass[ i ] mod 2 <> 0 then //проверяем не четное-ли число, если да, то.. . begin inc(countNum); //увеличиваем на один кол-во нечетных чисел proizv:=proizv*mass[ i ]; // высчитываем произведение end; {Вывод результатов} writeln; writeln('Всего нечетных чисел: '+inttostr(countNum)); writeln('Их произведение: '+inttostr(proizv)); END.
program q2; uses crt; const n=10; var i,j:integer; mass:array [1..n] of real; Summ:real; // переменная для хранения суммы чисел MNum:real; // переменная для хранения среднего арифметического BEGIN {создание последовательности n отрицательных вещественных чисел} Writeln('Случайные отрицательные вещественные числа: '); for i:=1 to n do begin mass[ i ]:=((random(9)+1)+(random(9)+1)/10)*(-1); //присваеваем переменной случайное вещественное от 1 до 10 write(mass[ i ],'; '); //выводим end; {Вычисление среднего арифметического} for i:=1 to n do Summ:=Summ+mass[ i ]; // высчитываем произведение MNum:=Summ/n;
В ячейку А1 вписываете первое трехзначное число. В ячейку В1 вписываете формулу =СУММПРОИЗВ (ОКРВНИЗ (ОСТАТ (A1/2^(СТРОКА ($1:$10)-1);2);1)*10^(СТРОКА ($1:$10)-1)) В А2 - второе число, в А3 третье число и т. д. Ячейку В1 с формулой копируете по количеству чисел в колонке А. Формула у меня получилась короче программы на встроенном в Excel языке программирования VBA, которая делает тоже самое. Все что выше относится к Excel 2003. Начиная с Excel 2007 среди встроенных функций есть ДЕС. В. ДВ Как ее использовать см Help.
Const
n=7;
Var
ma:array[1..n,1..n] of integer;
countn,countp,i,j:integer;
sr:real;
begin
for i:=1 to n do
for j:=1 to n do
begin
readln(ma[i][j]);
if ma[i][j]>0 then inc(countp) else
if ma[i][j]<0 then inc(countn);
end;
for i:=1 to n do
begin
for j:=1 to n do
write(ma[i][j]:4);
writeln;
end;
writeln('Count of positive=',countp,', count of negative=',countn);
for j:=1 to n do
begin
sr:=0;
for i:=1 to n do
sr+=ma[i][j];
writeln(j,' ',sr/n);
end;
end.