Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Prolog
Перезагрузить страницу массив
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
iosin iosin вне форума
Новичок
 
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 09.10.2005
По умолчанию массив - 09.10.2005, 20:24

Доброго дня!

Подскажите пожалуйста, как можно в SWI прологе, или каком-нибудь другом заводить массивы, скажем чисел (2х мерные). Или нужно создавать список списков, и писать отдельную процедуру доступа к нужному элементу.

Заранее благодарен
Ответить с цитированием
  (#2 (permalink)) Старый
iosin iosin вне форума
Новичок
 
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 09.10.2005
По умолчанию Re: массив - 09.10.2005, 21:35

Собственно мне нужен массив для хранения в нем инофрмации о даске с шашками. Программа должна поменять местами черные и белые шашки, как в игре "уголки". Может можно представить ситуацию без массива?
Ответить с цитированием
  (#3 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,862
Сказал(а) спасибо: 2
Поблагодарили 287 раз(а) в 287 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 12.10.2005, 22:10

Шахматное поле можно хранить разными способами:
1) Упорядоченный список из 64-х элементов (в общем случае из N элементов). Первые 8 элементов - это первая строка, вторые 8 элементов - вторая строка... последние 8 элементов - последняя строка.
2) Упорядоченный список упорядоченных списков.
3) Неупорядоченный список клеток: клетка(Строка,Столбец).
4) База данных: клетка(Строка,Столбец)
Выбор того или иного способа представления поля зависит от способа решения задачи. В Вашем случае, думаю, лучше подойдёт списковое представление, а не в виде БД.
Ответить с цитированием
  (#4 (permalink)) Старый
iosin iosin вне форума
Новичок
 
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 09.10.2005
По умолчанию 12.10.2005, 22:35

Благодарю за помощь. Только вот мне непонятно, почему в прологе нельзя было ввести массивы. Нужно писать специальные подпрограммы, и каждый кому понадабятся массивы будет их заново писать... Очевидно на то есть причины, но я этого не понимаю.
Ответить с цитированием
  (#5 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,862
Сказал(а) спасибо: 2
Поблагодарили 287 раз(а) в 287 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 13.10.2005, 23:01

iosin пишет:
Цитата:
Только вот мне непонятно, почему в прологе нельзя было ввести массивы.
Можно, а зачем? Почему Вы считаете, что массивы являются универсальным инструментом программиста? Просто лично Вы привыкли решать задачи в терминах массивов, потому что изначально учили языки, ориентированные на фон-Неймановский вычислитель. Ваша задачка на Прологе легко решается без массивов.

iosin пишет:
Цитата:
Нужно писать специальные подпрограммы, и каждый кому понадабятся массивы будет их заново писать... Очевидно на то есть причины, но я этого не понимаю.
Зачем писать массивы? Вы просто привыкли думать и решать задачи с помощью массивов. А вот попробуйте абстрагироваться от массивов и решить задачу через списки или через базу фактов Пролога.
Ответить с цитированием
Ads.
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
c#массив Kate23 Задания за деньги 5 19.05.2012 19:09
Массив brokit Visual Basic 2 13.12.2011 22:16
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 С/С++ 2 21.06.2011 23:03
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 Программирование графики 0 21.06.2011 14:46
массив Nika2610 PHP 1 10.04.2011 19:24
Ввести массив символов. Сформировать по его содержимому массив символов SSt Assembler 0 08.04.2011 20:42
Задан массив А,состоящий из 20 элементов. Получить из него массив В Наташок Visual Basic 0 22.12.2010 22:35
МАССИВ Наташок Pascal 1 03.12.2010 10:39
массив FoXy Pascal 0 21.10.2010 23:07
Преобразовать массив исходов в массив серий этих исходов jack1978 Visual Basic 3 09.02.2009 18:01
Как перенести массив Pascal vs массив С++ MaMaV Вопросы начинающих программистов 1 04.11.2005 11:41
Как реализовать массив на указатель на массив Anonymous Алгоритмы 1 05.12.2002 15:10



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов