Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2007, 17:02   #1
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Сообщений: 173
Вопрос Паскаль. Матрица

Появилась такая задача, как её решить пока не знаю подскажите.
Есть таблица 4*4 заполнена (1,0) в произвольном порядке нужно меняя в каждый шаг один столбец и одну строку. Придти к таблице заполненой только единицами.
Пример:
1000
1011
1000
0011

2 шаг
1100
1111
1100
1100

3 шаг
1101
0010
1101
1101

4 шаг
1111
1111
1111
1111

Вот так как это реализовать на Паскале или хотябы закономерность, алгоритм подскажите.
delphin100 вне форума Ответить с цитированием
Старый 19.11.2007, 17:16   #2
kommunist
C# developer
Форумчанин
 
Аватар для kommunist
 
Регистрация: 03.10.2007
Сообщений: 393
По умолчанию

Код:
program matrica;
uses crt;
const n =4;
type matr = array [ 1..n,1..n] of integer;
var i:integer;
    j:integer;
    a:matr;
begin
    clrscr;
    randomize;
    for i:= 1 to n do
begin
    for j:= 1 to n do
begin
    a[i,j]:=random(2);
    write(a[i,j], ' ');
end;
writeln;
end;
   writeln;
   for i:= 1 to n do
begin
   for j:= 1 to n do
begin
   if a[1,j] = 0 then
   a[i,j]:= 1;
   if a[i,1] = 0 then
   a[i,j]:=1;
   write(a[i,j], ' ');
   end;
writeln;
end;
    writeln;
   for i:= 1 to n do
begin
   for j:= 1 to n do
begin
   if a[2,j] = 0 then
   a[i,j]:=1;
   if a[i,2] = 0 then
   a[i,j]:=1;
   write(a[i,j],' ' );
end;
   writeln;
end;
   writeln;
 for i:= 1 to n do
begin
   for j:= 1 to n do
begin
   if a[3,j] = 0 then
   a[i,j]:=1;
   if a[i,3] = 0 then
   a[i,j]:=1;
   write(a[i,j],' ' );
end;
writeln;
      for i:= 1 to n do
begin
   for j:= 1 to n do
begin
   if a[4,j] = 0 then
   a[i,j]:=1;
   if a[i,4] = 0 then
   a[i,j]:=1;
   write(a[i,j],' ' );
end;
writeln;
end;
readln;
end;
end.
I like WPF
kommunist вне форума Ответить с цитированием
Старый 19.11.2007, 21:31   #3
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Сообщений: 173
По умолчанию

Спасибо сейчас посмотрю.
delphin100 вне форума Ответить с цитированием
Старый 19.11.2007, 21:43   #4
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Сообщений: 173
Восклицание Немного не то

Надо в строке и столбце 1 на 0 тоже менять на пересечении только один раз.
delphin100 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. Квадратная матрица Deimossy Помощь студентам 2 20.11.2007 13:23
Паскаль. Матрица и Вектор. ByteMan Помощь студентам 8 03.11.2007 14:49
матрица евгения, Помощь студентам 3 04.06.2007 20:31
матрица m4tr1x2222 Общие вопросы C/C++ 3 16.05.2007 08:07