Вопрос задан 20.07.2023 в 08:59. Предмет Информатика. Спрашивает Дюков Антон.

Информатика. В Паскале!!! «Составить программу, которая формирует двумерную матрицу случайных

чисел, имеющих N строк и N столбцов, а затем формирует два одномерных массива. Причём в один записываются элементы матрицы, расположенные на главной диагонали и выше, а в другой - элементы матрицы, лежащие ниже главной диагонали и выводит все массивы на экран.» Хоть кто-нибудь помогите, ну всё запущено :(
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Лаптев Владимир.

Ответ:

Объяснение:

program matic1;

const z=100;

type mas=array[1..z] of integer;

type mas2=array[1..z,1..z] of integer;

var

u :mas2;

u1, u2: mas;

n,k,m:integer;

procedure ch1(n:integer);

var i,j:integer;

begin

j:=0;k:=0;m:=0;

randomize;

for i:=1 to n do

for j:=1 to n do

   u[i,j]:= random(20+j)+20;

for i:=1 to n do

for j:=1 to n do

  begin

  if j>=i then begin k:=k+1;u1[k]:=u[i,j] end

  else begin m:=m+1;u2[m]:=u[i,j] end;

  end;

  end;

// Вывод 2 мерного массива на экран

// a -массив n-размер,text - что хотим написать

procedure showmas2(b:mas2;n:integer;text:string);

var

i,j:integer;

begin

writeln(text);

for i:=1 to n  do

for j:=1 to n do

if j<>n then write(b[i,j],' ') else writeln(b[i,j],' ');

readln;

end;

// Вывод 1 мерного массива на экран

// a -массив nn-размер,text - что хотим написать

procedure showmas(b:mas;nn:integer;text:string);

var

i:integer;

begin

writeln(text);

for i:=1 to nn  do

write(b[i],' ');

readln;

end;

begin

Write('Введите размер массива N= ');

readln(n);

ch1(n);

showmas2(u,n,'Исходная матрица NxN u');

showmas(u1,k,'Элементы главной диагонали и выше u1');

showmas(u2,m,'Элементы ниже главной диагонали  u2');

readln;

end.

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я помогу! Вот пример программы на языке Паскаль, которая решает данную задачу:

pascal
program RandomMatrix; const N = 5; // Задайте значение N здесь, можно изменить на нужное число type Matrix = array[1..N, 1..N] of Integer; DiagonalArray = array[1..N] of Integer; procedure GenerateRandomMatrix(var mat: Matrix); var i, j: Integer; begin Randomize; for i := 1 to N do for j := 1 to N do mat[i, j] := Random(100); // Генерируем случайное число от 0 до 99 end; procedure SplitMatrix(var mat: Matrix; var aboveDiagonal, belowDiagonal: DiagonalArray); var i, j, aboveIndex, belowIndex: Integer; begin aboveIndex := 1; belowIndex := 1; for i := 1 to N do for j := 1 to N do begin if i <= j then begin aboveDiagonal[aboveIndex] := mat[i, j]; Inc(aboveIndex); end else begin belowDiagonal[belowIndex] := mat[i, j]; Inc(belowIndex); end; end; end; procedure DisplayArray(arr: DiagonalArray); var i: Integer; begin for i := 1 to N do Write(arr[i], ' '); Writeln; end; var matrix: Matrix; aboveDiagonalArray, belowDiagonalArray: DiagonalArray; begin GenerateRandomMatrix(matrix); Writeln('Сгенерированная матрица:'); for i := 1 to N do begin for j := 1 to N do Write(matrix[i, j]:4); Writeln; end; SplitMatrix(matrix, aboveDiagonalArray, belowDiagonalArray); Writeln('Массив элементов выше и на главной диагонали:'); DisplayArray(aboveDiagonalArray); Writeln('Массив элементов ниже главной диагонали:'); DisplayArray(belowDiagonalArray); end.

Здесь N задает размер матрицы NxN, которая заполняется случайными числами от 0 до 99. Затем матрица разбивается на два одномерных массива: aboveDiagonalArray для элементов на главной диагонали и выше нее, и belowDiagonalArray для элементов ниже главной диагонали. Оба массива выводятся на экран после заполнения.

Программа должна работать для любого значения N, которое вы установите. Просто замените значение N в коде на то, которое вам необходимо, и запустите программу на выполнение.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос