Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Удаление макс. элемента списка 
V
    Опции темы
virbuk
Дата 15.12.2008, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 15.12.2008

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



Есть список, нужно удалить максимальный элемент.

Макс. элементы вроде нашел:
Код
find_max([],0).
find_max([H|Ls],Max):- max_list(Ls,X), Max is max(H,X).

А как их удалять непосредственно из списка?
PM MAIL WWW   Вверх
virbuk
Дата 16.12.2008, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 15.12.2008

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



Получилось так:
Код
% Поиск максимального элемента
find_max([],0).
find_max([H|Ls],Max):- max_list(Ls,X), Max is max(H,X).

% Удаление элемента
delete_element( H, [H | Ls], Ls).
delete_element( H, [Y | Ls], [ Y | Ls1]  ) :- del_l( H, Ls, Ls1).

% Непосредственно удаление максимального элемента
delete_max([],[]).
delete_max([H],[]).
delete_max([H|Ls],L) :- delete_element(X,[H|Ls],L),find_max([H|Ls],X).

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

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

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


 




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


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

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