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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.03.2009, 17:53   #1
Mollerat
Пользователь
 
Аватар для Mollerat
 
Регистрация: 11.03.2009
Сообщений: 25
По умолчанию Задача с матрицами в Delphi

Народ помогите решить вот такую задачу:

Будем называть соседями элемента с индексами i j некоторой матрицы такие ее элементы, соответствующие индексы которых отличаются от i j не более чем на одну единицу. Для целочисленной матрицы А(аij) размерности m х m найти матрицу В, состоящую из нулей и единиц, элемент bij которой равен единице, если среди соседей aij есть не менее двух совпадающих с аij.
Mollerat вне форума Ответить с цитированием
Старый 11.03.2009, 19:23   #2
NeshSoft
Максим Николаев
Форумчанин
 
Аватар для NeshSoft
 
Регистрация: 15.02.2009
Сообщений: 170
По умолчанию

А Вы пробовали сами решить? В каком месте не получается?
NeshSoft. Программирование на заказ для студентов. Delphi/Pascal. Подробнее на сайте neshsoft.narod.ru
NeshSoft вне форума Ответить с цитированием
Старый 11.03.2009, 20:11   #3
Mollerat
Пользователь
 
Аватар для Mollerat
 
Регистрация: 11.03.2009
Сообщений: 25
По умолчанию

Я не могу понять: как найти среди соседей aij не менее двух совпадающих с аij.
Mollerat вне форума Ответить с цитированием
Старый 12.03.2009, 16:36   #4
NeshSoft
Максим Николаев
Форумчанин
 
Аватар для NeshSoft
 
Регистрация: 15.02.2009
Сообщений: 170
По умолчанию

Цитата:
Сообщение от Mollerat Посмотреть сообщение
Я не могу понять: как найти среди соседей aij не менее двух совпадающих с аij.
Код:
for i:=1 to m do
   for j:=1 to m do
      begin
      kolichestvososedej:=0;
      if i>1 then //если не первая строка то сравним текущий элемент с элементом выше текущего
         if a[i,j]=a[i-1,j] then inc(kolichestvososedej);
      if i<m then //если не последняя строка то сравним текущий элемент с элементом ниже текущего
         if a[i,j]=a[i+1,j] then inc(kolichestvososedej);
      if j>1 then //если не первый столбец то сравним текущий элемент с элементом левее текущего
         if a[i,j]=a[i,j-1] then inc(kolichestvososedej);
      if j<m then //если не последний столбец то сравним текущий элемент с элементом правее текущего
         if a[i,j]=a[i,j-1] then inc(kolichestvososedej);
      if kolichestvososedej >=2 then B[i,j]:=1 else B[i,j]:=0;
      end;
Предполагается, что размерности матрицы [1..m]
NeshSoft. Программирование на заказ для студентов. Delphi/Pascal. Подробнее на сайте neshsoft.narod.ru
NeshSoft вне форума Ответить с цитированием
Старый 12.03.2009, 17:21   #5
Mollerat
Пользователь
 
Аватар для Mollerat
 
Регистрация: 11.03.2009
Сообщений: 25
По умолчанию

БОЛЬШОЕ СПАСИБО!!! ПРОГРАММА РАБОТАЕТ ОТЛИЧНО!!!
Mollerat вне форума Ответить с цитированием
Старый 12.03.2009, 17:55   #6
NeshSoft
Максим Николаев
Форумчанин
 
Аватар для NeshSoft
 
Регистрация: 15.02.2009
Сообщений: 170
По умолчанию

Цитата:
Сообщение от Mollerat Посмотреть сообщение
БОЛЬШОЕ СПАСИБО!!! ПРОГРАММА РАБОТАЕТ ОТЛИЧНО!!!
Можно выразить благодарность отзывом (значёк весов)
NeshSoft. Программирование на заказ для студентов. Delphi/Pascal. Подробнее на сайте neshsoft.narod.ru
NeshSoft вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal задача с матрицами. Impario Помощь студентам 6 05.01.2009 16:20
Работа с матрицами и строками в Delphi Deniz Помощь студентам 2 03.12.2008 21:27
Задачка с матрицами на С urgu_st Помощь студентам 4 02.11.2007 17:44
help!!! работа с матрицами Zagran Паскаль, Turbo Pascal, PascalABC.NET 4 08.01.2007 15:54