даны действительная матрица размера nx(n+1),действительные числа

Даны действительная матрица размера nx(n+1),действительные числа a1....an+1,b1....bn+1,естественные числа p,q(plt;=n,qlt;=n+1)Образовать новейшую матрицу размера (n+1)x(n+2) вставкой после строчки сномером p данной амтрицы новой строчки с элементами a1...an+1 и последующейй вставкой после столбца с номером q нового столбца с элементами b1...bn+1
const n=30;
var i,j,p,q:integer;
c:array[1..n,1..n+1] of integer;
a:array[1..n+1] of integer;
b:array[1..n+1] of integer;

begin
readln(q,p);


For i:=1 to n do
For j:=1 to n+1 do
c[i,j]:=random(28)+1;


begin
for i:=1 to n+1 do
p:=random(28)+1;
end;
for j:=1 to n+1 do begin//
q:=random(28)+1;
end;

for i:=n downto p do//
for j:=1 to n+1 do
c[i+1,j]:=c[i,j];

for j:=1 to n+1 do c[p,j]:=a[i];

for j:=n+1 downto q do
for i:=1 to N+1 do
c[i,j+1]:=c[i,j];
for i:=1 to n+1 do c[i,q]:=b[i];

for i:=1 to n do
begin
for j:=1 to n+1 do
write(c[i,j]:2);
writeln;
end;
end.
помогите исправить оплошности либо сделайте пожалуйста теснее готовую программу(паскаль).Заблаговременно спасибо

Задать свой вопрос
1 ответ
// PascalABC.NET 3.0, сборка 1110
const
  nn=30;
var
  i,j,n,p,q:integer;
  c:array[1..nn+1,1..nn+2] of char;
  a,b:array[1..nn+1] of char;
  t:char;
begin
  Write('Введите n (1-30): '); Read(n);
  if n=1 then p:=1
  else begin Write('Введите p (1-',n,'): '); Read(p) end;
  Write('Введите q (1-',n+1,'): '); Read(q);
  // инициализация и вывод
  Randomize;
  for i:=1 to n do
    for j:=1 to n+1 do
      c[i,j]:=Chr(Ord('А')+Random(32)); // [А..Я]
  Writeln('*** Начальная матрица C ***');
  for i:=1 to n+1 do begin
    for j:=1 to n+2 do begin
      if (j=n+2) or (i=n+1) then c[i,j]:='*';
      Write(c[i,j]:2)
      end;
    Writeln
  end;
  Writeln('*** Вектор А ***');
  for i:=1 to n+1 do begin
    a[i]:=Chr(Ord('A')+Random(26)); // [A..Z]
    Write(a[i]:2)
    end;
  Writeln(1310,'*** Вектор B ***');
  for i:=1 to n+1 do begin
    b[i]:=Chr(Ord('a')+Random(26)); // [a..z]
    Write(b[i]:2)
    end;
  Writeln;
  // вставка строчки ниже p на основе вектора А
  for i:=n+1 downto p+1 do
    for j:=1 to n+1 do
      c[i,j]:=c[i-1,j];
  for j:=1 to n+1 do c[p+1,j]:=a[j];
  Writeln('*** Матрица C после вставки строчки ***');
  for i:=1 to n+1 do begin
    for j:=1 to n+2 do Write(c[i,j]:2);
    Writeln
  end;
  // вставка столбца правее q на базе вектора А
  for j:=n+2 downto q+1 do
    for i:=1 to n+1 do
      c[i,j]:=c[i,j-1];
  for i:=1 to n+1 do c[i,q+1]:=b[i];
  Writeln('*** Результирующая матрица C ***');
  for i:=1 to n+1 do begin
    for j:=1 to n+2 do Write(c[i,j]:2);
    Writeln
  end;
end.

Тестовое решение:
Введите n (1-30): 6
Введите p (1-6): 2
Введите q (1-7): 3
*** Начальная матрица C ***
 Ю М В Щ Я П Э *
 Р Х К Л Х Т Ч *
 Б Б Ф Я С О Ъ *
 Е К Д Ж О Ю Ъ *
 Ь З З Б А К Х *
 У Т Ъ С Ь К Щ *
 * * * * * * * *
*** Вектор А ***
 H A H D U G T
*** Вектор B ***
 r y c e s u u
*** Матрица C после вставки строчки ***
 Ю М В Щ Я П Э *
 Р Х К Л Х Т Ч *
 H A H D U G T *
 Б Б Ф Я С О Ъ *
 Е К Д Ж О Ю Ъ *
 Ь З З Б А К Х *
 У Т Ъ С Ь К Щ *
*** Результирующая матрица C ***
 Ю М В r Щ Я П Э
 Р Х К y Л Х Т Ч
 H A H c D U G T
 Б Б Ф e Я С О Ъ
 Е К Д s Ж О Ю Ъ
 Ь З З u Б А К Х
 У Т Ъ u С Ь К Щ
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
задание экономиоти Рассмотри ситуацию: человек живёт на Крайнем Се-вере. С помощью каких

Экономика.

Человек живет на Крайнем Севере. С помощью каких благ удовлетворяются потребности

Экономика.

там лежат три яйца.у дома рос клен.Это гнездо сойки.на клёне гнездо

Русский язык.

Тыныштық күйіндегі карусель 35 с-та 3,0 рад/с бұрыштық жылдамдықпен үдей қозғалады.

Разные вопросы.

Сочинение на тему "Русский язык не сможет умереть!"

Математика.

Приветствую! Меня зовут Станислав, я представляю компанию under.site. Хотел бы предложить интересное решение

Разные вопросы.

Масса трёх одинаковых пакетов чая 180г чему равна масса

Математика.

Газообразный аммиак объёмом 2.24 л (н.у.) был полностью поглощён 14.68 мл

Химия.

Упражнение 2 Выпишите глаголы и вставьте пропущенные буквы

Русский язык.

Радиус окружности, описанной около равностороннего треугольника, равен 6. Найдите сторону треугольника

Геометрия.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт