edvlwork15
?>

Информатика 7 класс задание ​

Информатика

Ответы

kseniay2006548

учи учи учи учи учи учи учи учи

opscosmiclatte7868
1. Создаем файл MatInt.pas следующего содержания:

// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
unit MatInt;

interface

type
  Matrix=array[,] of integer;

function MatCreate(m,n:integer):Matrix;
procedure MatPrint(a:Matrix;w:integer);
procedure MatMax(a:Matrix;var x,imax,jmax:integer);

implementation

function MatCreate(m,n:integer):Matrix;
// создает матрицу и инициализирует её нулями
begin
  SetLength(Result,m,n);
end;

procedure MatPrint(a:Matrix;w:integer);
// выводит матрицу, отводя w позиций под элемент
begin
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do begin
    for var j:=0 to n do Write(a[i,j]:w);
    Writeln
    end
end;

procedure MatMax(a:Matrix;var x,imax,jmax:integer);
// возвращает значение максимального элемента и его координаты
begin
  imax:=0; jmax:=0;
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do
    for var j:=0 to n do
      if a[i,j]>a[imax,jmax] then (imax,jmax):=(i,j);
  Inc(imax); Inc(jmax); x:=a[imax-1,jmax-1]
end;

end.

2. Компилируем файл, получая библиотеку MatInt.pcu

3. Пишем основную программу:

// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
uses
  MatInt;
begin
  var a:=MatCreate(5,8);
  var n:=Length(a,1)-1;
  for var i:=0 to Length(a,0)-1 do
  for var j:=0 to n do a[i,j]:=Random(-50,50);
  MatPrint(a,4);
  var irow,jcol,max:integer;
  MatMax(a,max,irow,jcol);
  Writeln('Максимальный А[',irow,',',jcol,']=',max)
end.

Тестовое решение
  11 -16  11  16  23  -4 -17 -34
 -12  -5  20   9  16  47  43  17
 -46 -26  47 -40  12 -31 -25  13
  -7  39 -20  26  11 -19  32 -15
  45 -10 -28  31 -46 -29 -29 -22
Максимальный А[2,6]=47
Zhanna417
uses crt,graph; type mas=array[1..500] of Pointtype; var gd,gm,i,j,k,n:integer;     a:mas; begin randomize; gd:=0; initgraph(gd,gm,''); for i:=1 to 500 do  begin   a[i].x:=random(getmaxX);   a[i].y:=random(getmaxY);   circle(a[i].x,a[i].y,2);  end; k:=0;n:=0; repeat k:=k+1; delay(200); setcolor(0); for i:=1 to 500 do circle(a[i].x,a[i].y,2); for i:=1 to 500 do  begin   if a[i].y>getmaxY-n-10 then a[i].y:=1   else a[i].y:=a[i].y+3;   if a[i].x<0 then a[i].x:=getmaxX   else a[i].x:=a[i].x-1;  end; setcolor(15); for i:=1 to 500 do circle(a[i].x,a[i].y,2); if k mod 20=0 then  begin   n:=n+1;   line(0,getmaxY-n,getmaxX,getmaxY-n);  end; until keypressed; readln end.

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

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

Информатика 7 класс задание ​
Ваше имя (никнейм)*
Email*
Комментарий*

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

akakne86
vera-spicina
Калмыкова-Петрунина
chizhenkovd9
Mukhlaev-Olga
albina6580
НиколаевнаФ
dkedrin74038
vakhitov100961
kulibabad566
fedoseevalyubov
mileva84
ilkindadashov935232
scorpion21c
tboychenko