basil69
?>

Дана действительная матрица размера m×n. получить одномерный массив, элементы которого равны количеством неотрицательных элементов в столбцах. вывести элементы полученного массива на экран и в типизированный дисковой файл f1. вычислить среднее арифмитическое значение элементов файла f1. вывести в файл f2 те элементы файла f1, которые не превышают найденного среднего. использовать при решении подпрограммы.

Информатика

Ответы

Юрьевич293
// PascalABC.NET 3.3, сборка 1540 от 16.09.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
  var a:=MatrGen(m,n,(i,j)->(Random(9000)-4500)/100);
  Writeln('*** Исходная матрица ***');
  a.Println(7,2); Writeln(7*a.ColCount*'-');
  var b:=a.Cols.Select(c->c.Where(t->t>=0).Count).ToArray;
  if b.Length=0 then begin
    Writeln('В матрице все элементы отрицательные');
    Exit
    end;
  b.Println;
  var f1:file of integer;
  Assign(f1,'f1.bin'); Rewrite(f1);
  foreach var t in b do Write(f1,t);
  Reset(f1);
  var (s,k):=(0,0);
  var v:integer;
  while not Eof(f1) do begin
    Read(f1,v); s+=v; k+=1
    end;
  f1.Close;
  var avg:=s/k;
  var f2:file of real;
  Assign(f2,'f2.bin'); Rewrite(f2);
  var q:=a.ElementsByRow.Where(t->t<=avg);
  q.Println;
  foreach var c in q do Write(f2,c);
  f2.Close
end.

Пример
Количество строк и столбцов в матрице: 4 9
*** Исходная матрица ***
 -27.55  14.63  25.01  35.00  34.53 -24.49 -43.20  35.73  35.05
  -9.96 -40.27   6.45  43.42   4.31  21.48  17.16  40.35  -3.58
 -28.37 -11.17  32.04  26.07 -29.32 -24.20  -7.75  41.32   9.54
  34.89  37.10 -26.09  22.64  16.69 -28.75  19.16  22.66   7.52
---------------------------------------------------------------
1 2 3 4 3 1 2 4 3
-27.55 -24.49 -43.2 -9.96 -40.27 -3.58 -28.37 -11.17 -29.32 -24.2 -7.75 -26.09 -28.75

Дана действительная матрица размера m×n. получить одномерный массив, элементы которого равны количес
asviridova07194

Площадь параллелограмма:

program chet;

var

sq, a , b : integer;

begin

writeln('Введите стороны параллелограмма ');

readln(a,b);

sq := a * b;

writeln('Площадь параллелограмма равна ', sq);

end.

Площадь трапеции:

program chet;

var

sq,h, a , b : real;

begin

writeln('Введите длину оснований ');

readln(a,b);

writeln('Введите высоту трапеции');

read(h);

sq := (a+b)/2 * h;

writeln('Площадь трапеции равна ', sq);

end.

Площадь круга:

program chet;

const

PI = 3.14;

var

sq,r : real;

begin

writeln('Введите радиус круга');

readln(r);

sq := PI * sqr(r);

writeln('Площадь круга равна ', sq);

end.

И площадь ромба:

program chetdsa;

var  

sq,d,g : real;

begin

writeln('Введите чему равны диагонали ромба');

readln(d,g);

sq := (d*g)/ 2;

writeln('Площадь ромба равна ', sq);

end.

anna-leonova
В минуте 60 секунд. 
1) Разделить число на 3600.Получим .целое число означает текущий час.
Если  из задонного числа вычесть  получившееся целое число умноженное на 3600 получим число секунд в текущих  минутах.
2)это число необходимо разделить на 60. Целое число будет означать текущую минуту.
3) вычитаем из оставшегося числа число минут умноженное на 60 получим текущую секунду.

Например
Задано число 66276.

часов.
    18 * 3600 = 64800
    66276 - 64800 = 1476
минуты.
     24 * 60 = 1440
     1476 -1440 = 36

ответ: 18 часов , 24 минуты, 36 секунд.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Дана действительная матрица размера m×n. получить одномерный массив, элементы которого равны количеством неотрицательных элементов в столбцах. вывести элементы полученного массива на экран и в типизированный дисковой файл f1. вычислить среднее арифмитическое значение элементов файла f1. вывести в файл f2 те элементы файла f1, которые не превышают найденного среднего. использовать при решении подпрограммы.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

inj-anastasia8
olyafom1234
ustinovalubov6666
kogakinoa
Larax0819
Ушакова1902
mila-vsv
Tarapovskaya
Анатольевич1707
Pavlushina-Novikova
Rudakova_Yana
pryvalovo48
Ахади
kampina1
AlekseiMardanova