Форум программистов, компьютерный форум, киберфорум
Наши страницы
Prolog
Войти
Регистрация
Восстановить пароль
 
PratG
0 / 0 / 0
Регистрация: 04.11.2013
Сообщений: 2
1

Написать предикат multuplay

04.11.2013, 19:22. Просмотров 260. Ответов 1
Метки нет (Все метки)

multuplay(A,B,N, L ), здесь A,B – целые числа, N – натуральное число, L –список чисел.
Предикат истеннен если: список L содержит N элементов и каждый элемент начиная с третьего равен произведению двух предыдущих.
Пример: multuplay (1,2,6,[1,2,4,8,32] ) – истинна.
Цель – multuplay (1,3,6, L).
Никак не разберусь, что да как.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2013, 19:22
Ответы с готовыми решениями:

Написать предикат (задача)
Помогите пожалуйста решить!!! Написать предикат,который истинен,если первый...

Принадлежность терму, написать предикат
Задание легкое, не знаю как написать в плане синтаксиса, в методичке что...

Написать решение по определению предикат дети
1. Определить предикат дети и найти всех детей и детей конкретного лица

Написать предикат, между элементами списка вставляющий единицы
Написать предикат. который между элементами списка вставляет единицы.

Написать предикат, который для двух произвольных студентов определяет...
Задачка: На контрольной работе некоторые из студентов списали решение каждый у...

1
keidin
97 / 97 / 14
Регистрация: 07.02.2013
Сообщений: 128
05.11.2013, 23:59 2
В примере
Цитата Сообщение от PratG Посмотреть сообщение
multuplay (1,2,6,[1,2,4,8,32] ) – истинна.
опечатка, должно быть: multuplay (1,2,6,[1,2,2,4,8,32]).
Предлагаю следующее решение:
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
domains
ilist=integer*
 
predicates
nondeterm multuplay(integer,integer,integer,ilist)
nondeterm listcreate(integer,integer,integer,integer,ilist)
 
clauses
multuplay(A,B,N,L):-listcreate(A,B,1,N,L).
 
listcreate(A,B,1,N,[A,B|T]):-listcreate(A,B,3,N,T),!.
listcreate(A,B,N1,N,[H|T]):-N1<=N,N2=N1+1,H=A*B,listcreate(B,H,N2,N,T).
listcreate(_,_,_,_,[]).
 
goal
multuplay (1,3,6,L).
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2013, 23:59

Написать предикат, который подсчитывает сумму четных чисел в вершинах не являющихся листьями
Написать предикат, который подсчитывает сумму четных чисел в вершинах не...

Написать предикат, определяющий, являются ли его аргументы взаимно простыми числами - Prolog
Помогите пожалуйста! Надо написать предикат, определяющий, являются ли его...

Написать предикат, который формирует список из наиболее часто встречающихся элементов списка
необходимо реализовать данную задачу, вот как бы нашлось такое : len(,0)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru