Форум программистов, компьютерный форум CyberForum.ru
CyberForum.ru - форум программистов и сисадминов > > >
Восстановить пароль Регистрация
 
kazantipo
Новичок
0 / 0 / 0
Регистрация: 06.01.2013
Сообщений: 9
11.01.2013, 23:24     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов   #1
Дан двумерный массив размером 5*8, запол¬ненный случайным образом.
1. Заменить все симметричные элементы на нули.
2. Вставить после столбцов с максимальными элементами столбец из единиц.
3. Удалить среднюю строку.
4. Поменять местами средние столбцы.
AdAgent
Объявления
11.01.2013, 23:24     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2013, 23:24     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов
Посмотрите здесь:

Pascal ABC Массив. Удаление, вставка, обмен элементов
Pascal ABC Двумерный массив. Замена элементов, удаление и обмен строк и столбцов
Pascal ABC Матрица: замена элементов, вставка и удаление строк / столбцов
Pascal ABC Дан двумерный массив а,содержащий Н строк и M столбцов. элементы строк, содержащих хотя бы один нулевой элемент, увеличить на значение максимальног
Pascal ABC Двумерный массив А, состоящий из N строк и M столбцов
Pascal ABC Дан двумерный массив А, состоящий из N строк и M столбцов
Pascal ABC Дан двумерный массив А, состоящий из N строк и M столбцов
Pascal ABC Дан двумерный массив А, состоящий из N строк и M столбцов
Puporev
Модератор
43494 / 31845 / 2258
Регистрация: 19.05.2008
Сообщений: 68,267
12.01.2013, 15:10     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов   #2
Цитата Сообщение от kazantipo Посмотреть сообщение
1. Заменить все симметричные элементы на нули.
Что понимается под этим?
kazantipo
Новичок
0 / 0 / 0
Регистрация: 06.01.2013
Сообщений: 9
12.01.2013, 20:59  [ТС]     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов   #3
Цитата Сообщение от Puporev Посмотреть сообщение
Что понимается под этим?
Не знаю. Так сказано в условии.

Добавлено через 2 часа 21 минуту
Может имеется ввиду , например , 5 и (-5) . можно пока что без первого задания.
Puporev
Модератор
43494 / 31845 / 2258
Регистрация: 19.05.2008
Сообщений: 68,267
13.01.2013, 10:59     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов   #4
Код 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
uses crt;
type mtr=array[1..5,1..18] of integer;
procedure vvod(var a:mtr;var m,n:integer);
var i,j:integer;
begin
m:=5;
n:=8;
for i:=1 to m do
for j:=1 to n do
a[i,j]:=random(20);
end;
procedure vyvod(a:mtr;m,n:integer);
var i,j:integer;
begin
writeln('Исходный массив:');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln
 end;
end;
var a,a1:mtr;
    m,m1,n,n1,i,j,k,mx:integer;
    f:boolean;
begin
randomize;
vvod(a,m,n);
vyvod(a,m,n);
//2.вставка столбца
a1:=a;
n1:=n;
mx:=a1[1,1];
for i:=1 to m do
for j:=1 to n do
if a1[i,j]>mx then mx:=a1[i,j];
writeln('Максимальный элемент=',mx);
j:=1;
while j<=n1 do
 begin
  f:=false;
  i:=1;
  while(i<=m)and not f do
  if a1[i,j]=mx then f:=true
  else i:=i+1;
  if f then
   begin
    for i:=1 to m do
    for k:=n1+1 downto j+2 do
    a1[i,k]:=a1[i,k-1];
    for i:=1 to m do
    a1[i,j+1]:=1;
    n1:=n1+1;
    j:=j+2;
   end
  else j:=j+1
 end;
writeln('Вставка столбцов из 1 после столбцов с максимальным элеметом');
for i:=1 to m do
 begin
  for j:=1 to n1 do
  write(a1[i,j]:4);
  writeln
 end;
write('Нажмите Enter для продолжения');
readln;
clrscr;
//3.Удаление средней строки
vyvod(a,m,n);
a1:=a;
m1:=m;
for i:=m1 div 2+1 to m1-1 do
for j:=1 to n do
a1[i,j]:=a1[i+1,j];
m1:=m1-1;
writeln('Удаление средней строки:');
for i:=1 to m1 do
 begin
  for j:=1 to n do
  write(a1[i,j]:4);
  writeln
 end;
write('Нажмите Enter для продолжения');
readln;
clrscr;
//Обмен средних столбцов
vyvod(a,m,n);
for i:=1 to m do
 begin
  k:=a[i,j div 2];
  a[i,j div 2]:=a[i,j div 2+1];
  a[i,j div 2+1]:=k;
 end;
writeln('Обмен средних столбцов:');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln
 end;
writeln('Программа завершена...')
end.
Yandex
Объявления
13.01.2013, 10:59     Двумерный массив: замена, вставка, удаление и обмен строк / столбцов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Опции темы

Текущее время: 16:08. Часовой пояс GMT +4.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Яндекс.Метрика