Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Prolog
Перезагрузить страницу Visual Prolog 7.3 - Ликбез
Ответ
 
Опции темы Опции просмотра
  (#46 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 06.02.2012, 18:50

Цитата:
Сообщение от Alison Посмотреть сообщение
Пожалуйста, не пиши больше ничего о том, когда я издам. Не вводи людей в заблуждение.
Ok.
Ответить с цитированием
  (#47 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 21.02.2012, 09:00

как я заметил вы показывали примеры со списками, когда данные в них заносились статично, а можно ложить по одному элементу? если не сложно покажить как)
Ответить с цитированием
  (#48 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 21.02.2012, 11:32

как очистить список и копировать один список в другой
Ответить с цитированием
Ads
  (#49 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 21.02.2012, 12:01

Цитата:
Сообщение от milyan Посмотреть сообщение
а можно ложить по одному элементу? если не сложно покажить как)
Можно как угодно:
Visual Prolog Код:
...
V1=readline(),
List = [V1],
V2=readline(),
List1 = [V2|List],
V3=readline(),
List2 = [V3|List1],
write(List2),
...
Можно и рекурсивно.
Цитата:
Сообщение от milyan Посмотреть сообщение
как очистить список и копировать один список в другой
Очистить список какой-либо специальной операцией нельзя. Только бэктрекинг освобождает переменные от их значений. Если Вам нужен пустой список, то введите в программу новую свободную переменную и унифицируйте её с пустым списком: G=[].
Понимаете, идеология Пролога не допускает разрушающего присваивания, к которому привыкают программисты императивных языков и им постоянно хочется переменные разрушать, присваивая им новые значения, а потом ещё и ещё раз и так до бесконечности. В прологе так: если Вам нужна новая сущность, то вводите в текст программы новую переменную.
Копировать один список в другой нефиг делать:
Visual Prolog Код:
D=[1,2,3],
W=D,
Свободная переменная W сейчас ссылается на тот же адрес в памяти, что и переменная D.

p.s. Вообще-то эта тема ориентирована на людей, знающих Пролог, но не владеющих фичами именно Visual Prolog-а. Но я буду стараться отвечать на все вопросы.
Ответить с цитированием
Пользователь сказал cпасибо:
milyan (21.02.2012)
  (#50 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 03.03.2012, 14:05

file::writeString - перезаписывает строку в файл, а есть функция которая дозаписывает строку в конец?
Ответить с цитированием
Ads.
  (#51 (permalink)) Старый
aag aag вне форума
А.А.Г.
 
Аватар для aag
 
Сообщений: 3,374
Сказал(а) спасибо: 0
Поблагодарили 82 раз(а) в 82 сообщениях
Регистрация: 29.11.2008
Адрес: Адмиралтейская)))
По умолчанию 03.03.2012, 14:21

Цитата:
Сообщение от milyan Посмотреть сообщение
file::writeString - перезаписывает строку в файл, а есть функция которая дозаписывает строку в конец?
appendString/3 - самый первый, кстати, в классе)))


импортирован с progz.ru
Ответить с цитированием
  (#52 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 03.03.2012, 16:31

Цитата:
Сообщение от aag Посмотреть сообщение
appendString/3 - самый первый, кстати, в классе)))
а как сделать так чтобы новый текст записался с новой строки?)
Ответить с цитированием
  (#53 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 03.03.2012, 17:30

Ну, например, так:
Visual Prolog Код:
appendString(FileName,"\n",true()),
appendString(FileName,String ,true()),
Можно и одним предикатом, предварительно конкатенировав "\n" и String.
Ответить с цитированием
  (#54 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 05.03.2012, 01:50

у меня снова проблема)) теперь с string::search компилятор выдает ошибку:
main.pro(77,20) error c503: Expression is used where a formula is expected

вот часть кода
if string::search("int float","int") then
console::write("Yes")
end if,
Ответить с цитированием
  (#55 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 05.03.2012, 10:43

Вы хотя бы в хэлп заглянули. Там ясно указано, что это функция, которая возвращает Позицию, с которой начинается подстрока в строке:
Visual Prolog Код:
if Position=string::search("int float","int") then
console::write("Yes ",Position)
end if,
Если Позиция Вам не нужна, то можно использовать анонимную переменную:
_=string::search("int float","int")
Если подстрока не найдена, то string::search будет неуспешен, что вызовет откат назад.
Ответить с цитированием
  (#56 (permalink)) Старый
milyan milyan вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.02.2012
По умолчанию 05.03.2012, 11:59

спасибо) я только гуглил)
Ответить с цитированием
  (#57 (permalink)) Старый
r1ch42 r1ch42 вне форума
Новичок
 
Сообщений: 5
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 12.05.2013
По умолчанию 14.05.2013, 18:22

Добрый вечер, можно попросить пример программы с рекурсией. (кроме факториала)
Ответить с цитированием
  (#58 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 14.05.2013, 19:18

Цитата:
Сообщение от r1ch42 Посмотреть сообщение
Добрый вечер, можно попросить пример программы с рекурсией. (кроме факториала)
В этой теме, например: Visual Prolog 7.3 - Ликбез
Ответить с цитированием
  (#59 (permalink)) Старый
r1ch42 r1ch42 вне форума
Новичок
 
Сообщений: 5
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 12.05.2013
По умолчанию 14.05.2013, 19:54

Я дико извиняюсь, новичок в этом деле, рекурсию в упор не вижу=(
Ответить с цитированием
  (#60 (permalink)) Старый
Винитарх Винитарх на форуме
Специалист
 
Аватар для Винитарх
 
Сообщений: 7,884
Сказал(а) спасибо: 2
Поблагодарили 293 раз(а) в 293 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 14.05.2013, 20:53

Visual Prolog Код:
scan(S,[T|L]) :- string::frontToken(S,T,R), !,scan(R,L).
scan(_,[]).
Ответить с цитированием
Ads
Ответ

Метки
education free , visual prolog , бесплатное обучение , курсы по prolog , ликбез

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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос программ из {TurboProlog.....Visual Prolog 5.2} в Visual Prolog 7 imported_Jenny_ Prolog 30 25.03.2013 19:15
visual prolog 5.2 kamikadze0 Prolog 0 08.09.2011 15:11
код из turbo prolog в visual prolog posleg Prolog 4 13.06.2011 00:33
Экспертная система на pdc prolog или visual prolog Anton7 Prolog 8 12.05.2011 13:39
ликбез для следователя tvshow Любые вопросы от новичков 13 19.04.2011 18:11
Помогите переделать задачу из Turbo Prolog в Visual Prolog 5 imported_Anneta Prolog 3 23.12.2010 22:59
Visual Prolog MarGo! Prolog 0 03.05.2010 14:54
Visual Prolog <--> ISO-Prolog z556 Prolog 33 25.12.2009 09:55
Кто возьмется переписать маленькую программу с Turbo Prolog на Visual Prolog 5.0 (за плату) olik567 Prolog 4 07.10.2009 17:46
Кто возьмется переписать маленькую программу с Turbo Prolog на Visual Prolog 5.0 (за плату) Игоревна Задания за деньги 16 04.01.2008 17:20
Нет PIE в Visual Prolog 7.1 PE! Alison Prolog 4 23.08.2007 22:20
Visual Prolog 7.0 help! sherlock2003 Prolog 31 05.01.2007 22:25



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