Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как реализовать полный проход по списку 
:(
    Опции темы
vibor75
Дата 29.2.2016, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Есть код на Amzi-prolog:
Код

price(Arg,[],[]).
price(Arg,[H|T],T1):-
    arg(2,H,Ha),
    Arg \= Ha,!,
    price(Arg,T,T1).
price(Arg,[H|T],[H|T1]):-
    price(Arg,T,T1).
    
suit(Arg,[],[]).
suit(Arg,[H|T],T1):-
    arg(1,H,Ha),
    Arg \= Ha,!,
    suit(Arg,T,T1).
suit(Arg,[H|T],[H|T1]):-
    suit(Arg,T,T1).        

length([], 0).
length([H|T], N):-
    length(T, M),
    N is M+1.
    
append([],L,L).
append([X|L1],L2,[X|L3]):-
    append(L1,L2,L3).
    
reverse([],[]).
reverse([X|L1],L2):-
    reverse(L1,L3),
    append(L3,[X],L2).
    
sort_reverse([],[]).
sort_reverse(L,M):-
    sort(L,L1),
    reverse(L1,M).
    
joker_num([],0).
joker_num([H|T],N):-
    arg(1,H,K),
    K=joker,
    joker_num(T,N1),
    N is N1 + 1;
    arg(1,H,K),
    K \= joker,
    joker_num(T,N).
    
row([H|T],Row):-
    arg(1,H,Arg),
    suit(Arg,[H|T],TRow),
    length(TRow,N),
    N>=3,
    sort_reverse(TRow,Row);
    arg(2,H,Arg),
    price(Arg,[H|T],Row),
    length(Row,N),
    N>=3.


Как реализовать рекурсию в предикате row чтобы строились все возможные комбинации?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

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

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


 




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


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

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