1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.7 Упр.7 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Автор
Семакин, Хеннер, Шеина

Работа 3.7 Упр.7 ГДЗ Семакин 10 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 7. Квадратная матрица, симметричная относительно главной диагонали, задана верхним треугольником в виде одномерного массива. Восстановить исходную матрицу и напечатать по строкам. *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-7/7 98

Подробный ответ

Квадратная матрица симметрична относительно главной диагонали, значит достаточно знать элементы верхнего треугольника. При восстановлении матрицы каждый элемент ниже диагонали равен соответствующему элементу выше диагонали:

$$a_{ij}=a_{ji}$$

В программе верхний треугольник хранится в одномерном массиве mas. Сначала в него заносятся значения, затем по ним заполняется двумерный массив matr так, чтобы выполнялась симметрия относительно главной диагонали. После этого матрица выводится по строкам.

const N=15;
var
  mas: array[1..N] of integer;
  matr: array[1..10,1..10] of integer;
  i,j,k,a: integer;
begin
  for i:=1 to n do
  begin
    mas[i] := i;
    write(mas[i]:3);
  end;
  writeln;
  writeln(‘——‘);
  k:=1;
  j:=0;
  for i:=1 to n do
  begin
    if j = k then
    begin
      j := 0;
      inc(k);
    end;
    inc(j);
  end;
  a := 1;
  for i:=1 to k do
  for j:=i to k do
  begin
    matr[i,j] := mas[a];
    matr[j,i] := mas[a];
    inc(a);
  end;
  for i:=1 to k do
  begin
    for j:=1 to k do
      write(matr[i,j]:4);
    writeln;
  end;
end.

Идея решения: элементы верхнего треугольника последовательно читаются из массива mas, а затем каждый из них записывается сразу в две симметричные позиции матрицы: $$matr[i,j]$$ и $$matr[j,i]$$.

Ответ

Матрица восстанавливается по правилу $$a_{ij}=a_{ji}$$, после чего печатается по строкам.



Общая оценка
4.1 / 5
Другие учебники
Другие предметы