|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.04.2007, 01:30 | #1 |
Пользователь
Регистрация: 22.02.2007
Сообщений: 14
|
Двумерные массивы
Готовлюсь к экзаменам. Застряла с вроде простой задачкой.
Организовать ручное заполнение массива целыми числами, среди которых встречаются четные и нечетные значения. Из исходной матрицы получить новую путем удаления строк, содержащих четные элементы. Вывести на экран исходную и полученную матрицы. Знаю, что строки просто не должны вписываться в новую матрицу. но никак не получается это сделать. У меня эти в эти строки просто вписываются 0. Да и вообще что-то я там намудрила. Может все можно сделать гораздо проще. Заранее спасибо program zad_6; uses crt; var m: array[1..4,1..5] of integer; m1: array [1..4,1..5] of integer; i,i1,j,j1,k, k1: byte; n: integer; om: array [1..20] of byte; om1: array [1..4] of byte; begin ClrScr; for i:=1 to 4 do for j:=1 to 5 do begin Write('Введите элемент массива '); readln(m[i,j]); end; ClrScr; WriteLn('Исходный массив: '); writeln; for i:=1 to 4 do begin for j:=1 to 5 do Write(m[i,j]: 5); writeln; end; k:=1; for i:=1 to 4 do for j:=1 to 5 do begin n:=m[i,j] mod 2; if n=0 then begin om[k]:=i; k:=k+1; end; end; k:=1; k1:=1; repeat if om[k]<>om[k+1] then begin om1[k1]:=om[k]; k:=k+1; k1:=k1+1; end else k:=k+1; until om[k]=0; k1:=1; i:=1; repeat if i=om1[k1] then begin {for j:=1 to 5 do m1[i,j]:=0;} k1:=k1+1; i:=i+1; end else begin for j:=1 to 5 do m1[i,j]:=m[i,j]; i:=i+1; end; until i=5; writeln; for i:=1 to 4 do begin if m[i,j]<>0 then begin for j:=1 to 5 do write(m1[i,j]:5); writeln; end else i:=i+1; end; writeln; for k:=1 to 20 do write(om[k]:5); writeln; for k1:=1 to 4 do write(om1[k1]:5); readkey; end. |
22.04.2007, 15:16 | #2 |
Студент
Форумчанин
Регистрация: 10.11.2006
Сообщений: 196
|
Код:
составит.
Visita Interiorem Terrae Rectificando Operae Lapidem...
|
22.04.2007, 23:35 | #3 |
Пользователь
Регистрация: 22.02.2007
Сообщений: 14
|
Огромное спасибо. Буду разбираться что к чему.
|
23.04.2007, 22:45 | #4 |
Пользователь
Регистрация: 22.02.2007
Сообщений: 14
|
Немного переделала под то, как нас "учили" Вот что получилось
Код HTML:
program zad_6; uses crt; var m: array[1..4,1..5] of integer; m1: array [1..4,1..5] of integer; i,j,n: byte; begin ClrScr; for i:=1 to 4 do for j:=1 to 5 do begin Write('Введите элемент массива '); readln(m[i,j]); end; ClrScr; WriteLn('Исходный массив: '); writeln; for i:=1 to 4 do begin for j:=1 to 5 do Write(m[i,j]: 5); writeln; end; n:=0; for i:=1 to 4 do begin inc(n); for j:=1 to 5 do begin if (m[i,j] mod 2)=0 then begin n:=n-1; break; end else m1[n,j]:=m[i,j]; end; end; writeln; WriteLn('Измененный массив: '); writeln; for i:=1 to n do begin for j:=1 to 5 do Write(m1[i,j]: 5); writeln; end; readkey; end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Двумерные массивы | Lioness | Помощь студентам | 2 | 06.01.2008 12:39 |
C++ Двумерные массивы | АНЮТКА555 | Помощь студентам | 1 | 10.12.2007 12:42 |
Двумерные массивы | Nata!!!@ | Помощь студентам | 15 | 05.12.2007 16:15 |