Модераторы: Poseidon
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Заполнение матрицы, помогите решить задачу 
:(
    Опции темы
Немфоманка
  Дата 10.2.2005, 17:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Матрицу A(m,n) заполнить следующим образом. Елементу a(k,l) присвоить значение 1; елементам, окружающим его, - значение 2; елементам следующего круга значение 3 и т. д. до заполнение всей матрицы. smile
  Вверх
Fixin
Дата 10.2.2005, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: 5
Всего: 18



Вообщето это в центр помощи. А координаты (k,l) юмеют какие-нить ограничения?
Немфоманка - кажется через "и".
PM MAIL ICQ   Вверх
maxim1000
Дата 10.2.2005, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 24
Всего: 110



вообще-то, это - одна из тех задач, алгоритм которой расписан в условии smile
если дело стоит за реализацией, то желательно указать язык, на котором хотелось бы программу
а кроме того, было бы неплохо задать более конкретные вопросы, что именно не получается...
Цитата
Немфоманка - кажется через "и".

мало ли что имелось в виду smile


--------------------
qqq
PM WWW   Вверх
TwisT_X
Дата 16.2.2005, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


It's works!
**


Профиль
Группа: Участник
Сообщений: 293
Регистрация: 15.2.2005
Где: Earth

Репутация: 1
Всего: 4



А каким языком ты пользуешься? Если Object Pascal , то попробуй этот оператор:
Код

for I := 1 to M do
for J := 1 to M do
begin
X := 0;
for K := 1 to M do
X := X + Mat1[I, K] * Mat2[K, J];
Mat[I, J] := X
end;

Этот оператор содержит три вложеных цикла for, осуществляющих вычесление матрицы Mat, равной произведению двух квадратных матриц Mat1 и Mat2 размером М на М. Все матрицы предсавленны двумерными массивами..

Может быть это тебе поможет... smile

Это сообщение отредактировал(а) Pakshin A. S. - 21.3.2005, 21:02


--------------------
Если ты упадешь я буду рядом. (с) Асфальт
PM MAIL WWW   Вверх
poor_yorik
Дата 20.3.2005, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 148
Регистрация: 12.1.2005
Где: Общаги г. Киева

Репутация: нет
Всего: 8



Есть еще один простой способ решения задачи. Также предоставляю на Pascal, но думаю и так понятно.

Код

for i:=1 to m do
 for j:=1 to n do
  A[i,j]:=min(abs(i-k),abs(j-l));


Это решение правильное, если ты подразумевал, что ячейки [i-1,j-1] и [i,j] - соседние.
Если у тебя элемент (k,l) "окружают" элементы, которые находятся справа, слева, сверху и снизу от него, то подойдет этот код. smile
Код

for i:=1 to m do
 for j:=1 to n do
   A[i,j]:=abs(i-k)+abs(j-l);


Надеюсь это то, что тебе нужно. smile
--------------------
Семь раз отмерь, один раз - откомпиль.... Семь раз отпей, один раз - отлей... Семь раз отъешь, один раз - не жадничай и другим дай...
PM MAIL YIM   Вверх
cardinal
Дата 20.3.2005, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Цитата(TwisT_X @ 16.2.2005, 20:12)
то попробуй этот оператор

А код что теперь оператором называют?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Гость_лох
Дата 3.4.2005, 22:37 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ну да! Вышло ж новое правило! Теперь вместо "код" говорят "оператор", а вместо "оператор" - "код"
З.Ы. Ни один из вариантов кода, ОЙ ПРОСТИТЕ ОПЕРАТОРА, не работает правильно!!!
  Вверх
Гость_лох
Дата 3.4.2005, 22:39 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











И еще: так как НЕмфоманка не отвечает, а есть желающие написать эту прогу, то просьба на С++ 3.1 smile
  Вверх
Гость_лох
Дата 5.4.2005, 20:47 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











ну! нимфоманке помогаете, а мне???
  Вверх
AISIN
Дата 29.4.2005, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 27.1.2005
Где: Пушкино

Репутация: нет
Всего: 1



а элементы которые около ячейки по диагонали расположены тоже соседние или как?
--------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002%
PM MAIL   Вверх
Pakshin A. S.
Дата 30.4.2005, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 5
Всего: 61



М
 
Один топик - один вопрос... Тема закрыта


P. S.
Если хотите получить решение, то создайте отдельную тему....

Это сообщение отредактировал(а) Pakshin A. S. - 30.4.2005, 17:14
PM   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.