Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 01.10.2014
Сообщений: 1
1

Дан список, упорядочить его по возрастанию и убедиться, что в нем нет повторов

01.10.2014, 13:37. Показов 1532. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
DOMAINS
список=integer*
элемент=integer
 
PREDICATES
%nondeterm начспис(список)
nondeterm вставсорт(список, список)
nondeterm встав(элемент, список, список)
nondeterm повтор(список, список)
 
CLAUSES
 
 
вставсорт([], []).
вставсорт( [X | Хв], УпорСпис) :-
вставсорт( Хв, УпорХв), % Сортировка хвоста
 
встав( X, УпорХв, УпорСпис).
% Вставить X на нужное место
встав( X, [Y | УпорСпис], [Y | УпорСпис1]):-
X>Y, !,
встав( X, УпорСпис, УпорСпис1).
встав( X, УпорСпис, [X | УпорСпис] ).
 
 
повтор([_]).
повтор([X,Y|Хв]):- Y>X, повтор([Y|Хв]).
   
GOAL
вставсорт([7,3,5,8,2,1], УпорСпис),
повтор(УпорСпис).
Есть вот такая вот задачка на VP. Звучит так: дан список, упорядочить по возрастанию и убедится что в нем нет повторов.
Данная программа работает, но необходимо избавится от составного запроса, т.е. в GOAL должен задаваться только исходный список.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2014, 13:37
Ответы с готовыми решениями:

Дан числовой файл, упорядочить его содержимое по возрастанию
на входе количество чисел которые будем записывать в файл(n) и эти числа, после ввода он...

Дан двумерный массив. Упорядочить его по возрастанию элементов первого столбца.
Дан двумерный массив. Упорядочить его по возрастанию элементов первого столбца.

Дан массив чисел. Упорядочить его по возрастанию. Исправить ошибки программы
ПОЯСНЕНИЯ: Введём понятия неправильной пары. Пусть пара рядом стоящих элементов массива называется...

Дан массив чисел. Упорядочить его по возрастанию. Исправить ошибки программы
ПОЯСНЕНИЯ: Введём понятия неправильной пары. Пусть пара рядом стоящих элементов массива называется...

1
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
02.10.2014, 03:48 2
Так сойдет?

Prolog
1
2
3
4
5
6
7
8
nondeterm мойЦенныйПредикат(список)
 
мойЦенныйПредикат(Список):-
    вставсорт(Список, УпорСпис),
    повтор(УпорСпис).
 
goal
    мойЦенныйПредикат([7,3,5,8,2,1]).
0
02.10.2014, 03:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.10.2014, 03:48
Помогаю со студенческими работами здесь

Дан список. Убедиться, что сумма эл-ов (чисел), стоящих на четных местах,равна сумме эл-ов,стоящих на нечетных
Сабж в шапке, очень нужна помощь. В решении необходимо использовать рекурсию хвоста списка.

Если в массиве целых чисел нет повторяющихся элементов, то упорядочить его по возрастанию
Помогите с программой в паскале и блок схемой. Задание к работе Набрать программу, отладить ее,...

Как реализовать задачу (Дан массив A размера N. Упорядочить его по возрастанию методом сортировки простым обм)
Дан массив A размера N. Упорядочить его по возрастанию методом сортировки простым обменом...

Дан список сотрудников массив указателей на символы необходимо отсортировать его по алфавиту (по возрастанию)
Здравствуйте Подскажите пожалуйста по задачке (Дан список сотрудников массив указателей на...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru