С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 15.10.2014
Сообщений: 3
1

Преобразовать матрицу, чтобы строка с исходным номером k следовала за строкой с исходным номером m

16.10.2010, 17:59. Показов 1778. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите плиз!
Даны: целочисленная матрица размера n x 3, целые числа k, m (1 <= k <= n, 1 <= m <=n, k не равно m). Преобразовать матрицу так, чтобы строка с исходным номером k непосредственно следовала за строкой с исходным номером m, сохранив порядок следования осталь-ных строк.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2010, 17:59
Ответы с готовыми решениями:

Преобразовать матрицу так, чтобы строка с номером k следовала за строкой с номером l
Даны целочисленная матрица nx3, целые числа k, l (1&lt;=k&lt;=n, 1&lt;=l&lt;=n, k&lt;&gt;l).Преобразовать...

Преобразовать матрицу так, чтобы за строкой с номером K следовала строка с номером L.
Pascal: Дана матрица размерностью Nx3 и целые числа K и L. (0&lt;K, L&lt;=N). Значение этих чисел...

Преобразовать матрицу так, чтобы строка с номером К непосредственно следовала за строкой с номером L
Помогите пожалуйста решить задачу на двумерный массив(желательно до вечера этого дня)!!! Дана...

Преобразовать матрицу по правилу: строку с номером n сделать столбцом с номером n, а столбец с номером n сделать строкой с номером n
Дана действительная квадратная матрица порядка n. Преобразовать матрицу по правилу: строку с...

1
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
16.10.2010, 19:29 2
Лучший ответ Сообщение было отмечено как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
uses crt;
const nmax=20;
      p=3;
var a:array[1..nmax,1..p] of integer;
    n,m,k,i,j,q,x:byte;
begin
clrscr;
randomize;
repeat
write('Количество строк до ',nmax,' n=');
readln(n);
until n in [1..nmax];
repeat
writeln('Введите номера строк для перестановки, от 1 до ',n,' k<>m');
readln(k,m);
until(k in [1..n])and(m in [1..n])and(k<>m);
writeln('Исходная матрица:');
for i:=1 to n do
 begin
   for j:=1 to p do
    begin
     a[i,j]:=random(20);
     if i=m then textcolor(12){выделим цветами строки для перестановок}
     else if i=k then textcolor(13)
     else textcolor(15);
     write(a[i,j]:4);
    end;
   writeln;
 end;
writeln;
textcolor(15);{восстановим белый(по умолчанию)}
if k=m+1 then write('Строки стоят на месте'){если уже нормально}
else
 begin
  if m>k then x:=k else x:=k+1;{если m ниже k, то убирать будем к, иначе к+1}
  n:=n+1;{добавим строку}
  for j:=1 to p do
  for i:=n downto m+2 do{раздвинем матрицу после строки m}
  a[i,j]:=a[i-1,j];
  for j:=1 to p do{вставим за ней строку к}
  a[m+1,j]:=a[x,j];
  for j:=1 to p do{обратно сдвинем, но уже к строке к}
  for i:=x to n-1 do
  a[i,j]:=a[i+1,j];
  n:=n-1;{уберем лишнюю строку}
 end;
writeln('Перестановка строки ',k,' после строки ',m);
for i:=1 to n do
 begin
  for j:=1 to p do
   begin
    if k>m then{если m ниже}
     begin
      if i=m then textcolor(12){она останется на месте}
      else if i=m+1 then textcolor(13){строка к под ней}
      else textcolor(15);
     end
    else{если выше}
     begin
      if i=m-1 then textcolor(12){поднимется на 1}
      else if i=m then textcolor(13){на ее место строка к}
      else textcolor(15);
     end;
    write(a[i,j]:4);
   end;
  writeln;
 end;
readln;
textcolor(15);
end.
0
16.10.2010, 19:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2010, 19:29
Помогаю со студенческими работами здесь

Преобразовать матрицу так, чтобы строка с исходным номером k следовала за строкой с исходным номером k1
Даны целочисленная матрица размера n*m, целые числа k,k1 (1 &lt;=k &lt;=n, 1 &lt;= k1 &lt;=n, k k1)....

Преобразовать матрицу так, чтобы строка с номером l непосредственно располагалась за строкой с номером k
Дана матрица {aij}, i =1...m, j = 1...n и целые значения k и l. Преобразовать матрицу так, чтобы...

Дана квадратная матрица порядка m. Преобразовать матрицу по правилу: строку с номером сделать столбцом с номером n, а столбец с номером n - строкой с
Дана квадратная матрица порядка m. Преобразовать матрицу по правилу: строку с номером сделать...

Преобразуйте матрицу по правилу: строку с номером P сделайте столбцом с номером P, а столбец с номером P сделайте строкой с номером P
Дана матрица А(N, N) и целое P. Преобразуйте матрицу по правилу: строку с номером P сделайте...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru