0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 25
1

Дан двумерный массив, из него сделать одномерный. В одномерный массив сначала вписат четные строки потом нечетные

12.06.2012, 12:58. Показов 2414. Ответов 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
71
72
73
74
75
76
77
78
79
Program Lab1_15;
 
uses crt;
 
type mas=array[1..100,1..100] of integer;
     mas1=array[1..100] of integer;
 
var b:mas;
    c:mas1;
    n,m:integer;
 
Procedure Input(var b:mas);
var i,j:integer;
begin
clrscr;
randomize;
write('Vvedite naturalnoe 4islo N: ');
read(n);
write('Vvedite naturalnoe 4islo M: ');
readln(m);
for i:=1 to n do
 for j:=1 to m do
 b[i,j]:=random(100);
end;
 
Procedure Output(var b:mas);
var i,j: integer;
begin
writeln('Vivod');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(b[i,j]:5);
  writeln;
  end;
end;
 
Procedure Korr(var b:mas);
Var i,j,k:integer;
    a:mas1;
    c:mas1;
    d:mas1;
Begin
writeln('Massiv iz 4etnix strok');
for i:=1 to n do
for j:=1 to m do
if (i mod 2) = 0 then
 begin
  k:=k+1;
  a[k]:=b[i,j];
  write(a[k]:4);
 end;
writeln;
writeln('Massiv iz ne4etnix strok');
for i:=1 to n do
for j:=1 to m do
if (i mod 2) <> 0 then
 begin
  k:=k+1;
  c[k]:=b[i,j];
  write(c[k]:4);
 end;
 
 for i:=n+1 to 2*n do
 
 a[k]:=c[k-1];
 
 
 writeln('Odnomernii massiv:');
 for i:=1 to 2*n do
 write(d[i]);
end;
 
begin
input(b);
Output(b);
korr(b);
readkey;
end.
спасибо за внимание!
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2012, 12:58
Ответы с готовыми решениями:

Дан одномерный массив А, состоящий из N целых чисел. Переписать из него в одномерный массив В все нечетные числа
У меня есть задание: Дан одномерный массив А, состоящий из N целых чисел. Переписать из него в...

Дан двумерный массив, сделать из него одномерный массив по спирали
дан двумерный массив, сделать из него одномерный массив по спирали. должно работать для любой...

Дан двумерный массив. Просмотреть четные строки и создать одномерный массив из отрицательных элементов этих строк
Дан двумерный массив. Просмотреть четные строки и создать одномерный массив из отрицательных...

Дан двумерный массив. Сделать из него 2 одномерных: в одном – четные элементы двумерного массива, в другом – нечетные
Не могу разобраться. Помощь нужна! Заранее спасибо.

2
Лучи добра
173 / 171 / 191
Регистрация: 08.06.2012
Сообщений: 292
12.06.2012, 15:49 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
program z;
uses crt;
var i,j,n,l:integer;
a:array [1..10,1..10] of integer;
b:array [1..100] of integer;
begin
     writeln('Введите размерность матрицы');
     readln(n);
     writeln('Ввод элементов матрицы');
     for i:=1 to n do
         for j:=1 to n do
             begin
                  write('a[',i,',',j,']=');
                  readln(a[i,j]);
             end;
     clrscr;
     writeln('Вывод элементов матрицы');
     for i:=1 to n do
         begin
              for j:=1 to n do
                  write(a[i,j],' ');
         end;
     l:=0;
     for i:=1 to n do
         begin
              if odd(i)=false
                 then
                     begin
                          for j:=1 to n do
                              begin
                                   l:=l+1;
                                   b[l]:=a[i,j];
                              end;
                     end;
         end;
     for i:=1 to n do
         begin
              if odd(i)=true
                 then
                     begin
                          for j:=1 to n do
                              begin
                                   l:=l+1;
                                   b[l]:=a[i,j];
                              end;
                     end;
         end;
     writeln('Составленный массив');
          for i:=1 to n*n do
              write(b[i],' ');
          writeln;
     readln;
end.
0
0 / 0 / 0
Регистрация: 11.11.2010
Сообщений: 25
12.06.2012, 18:29  [ТС] 3
спасибо!!!!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.06.2012, 18:29

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Дан двумерный массив, сделать из него одномерный из среднего значения строк исходного массива
дан двумерный массив, сделать из него одномерный из среднего значения строк исходного массива....

Дан одномерный массив из 40 элементов. Сформировать второй массив, в котором сначала идут все четные эле-менты
Дан одномерный массив из 40 элементов. Сформировать второй массив, в котором сначала идут все...

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

Дан массив целых чисел. Располжить его элементы в следующем порядке: сначала чётные, потом нечётные
Дана таблица а из целых чисел, поставить сначала чётные, а потом нечётные элементы. У меня есть...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.