Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 25th, 2012  |  syntax: None  |  size: 1.46 KB  |  hits: 7  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Program L7_12;
  2. { Лабораторная работа №7, вариант№12.
  3.  Условие задачи: Дана квадратная матрица А порядка n. Найдите среднее арифметическое положительных элементов каждого столбца матрицы. Разработал: Мурашко Сергей Васильевич, гр.03491
  4.  Дата последней корректировки:01.11.2011}
  5. uses crt;
  6. var
  7.     x:array[0..100, 0..100] of integer;
  8.     f1:text;
  9.     size:integer;
  10.     i, j, max: integer;
  11. procedure rd(z1:text; var towhat: integer);
  12. var i,j: integer;
  13. begin
  14.      i:=0;
  15.      j:=0;
  16.      reset(z1);
  17.      while not eof(z1) do
  18.      begin
  19.           j:=1;
  20.           while not eoln(z1) do
  21.                begin
  22.                    read(z1,x[i,j]);
  23.                    inc(j);
  24.                end;
  25.          inc(i);
  26.          readln(z1);
  27.      end;
  28.      close(z1);
  29.      towhat:=i;
  30. end;
  31. procedure arfmst(z1,z2,z3,z4: integer);
  32. var arm: real; max, counter: integer;
  33. begin
  34. arm:=0;
  35. max:=0;
  36.  for j:=z1 to z3 do
  37.     begin
  38.     max:=0;
  39.     counter:=0;
  40.         for i:=z2 to z4 do
  41.         begin
  42.         if x[i,j]>0 then
  43.         begin
  44.             max:=max+x[i,j];
  45.             inc(counter);
  46.         end;
  47.         end;
  48.     if not(max=0) then
  49.     begin
  50.     arm:=max/counter;
  51.     writeln(arm);
  52.     end
  53.     else
  54.     writeln('0');
  55.     end;
  56. end;
  57. begin
  58.     assign(f1,'in.txt');
  59.     rd(f1, size);
  60.     arfmst(1,1,size,size);
  61. end.