|
Консультант Витте
|
||||||
Нечетная длина элементов списка19.03.2015, 22:54. Показов 2962. Ответов 4
Метки нет (Все метки)
Что не так,я не пойму?
%1)Определить предикаты "чет" и "нечет" определяющие чётность и нечётность длины списка (предикат "длина" не использовать).
0
|
||||||
| 19.03.2015, 22:54 | |
|
Ответы с готовыми решениями:
4
Prolog - четная-нечетная длинна списка Если длина списка нечетна, построить список, поменяв местами левую и правую часть списка Добавление элемента в список и длина списка. |
|
Фрилансер
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|||||||||||||||||||||||||||||||||||||||||
| 20.03.2015, 01:24 | |||||||||||||||||||||||||||||||||||||||||
Сообщение было отмечено DmitryM5 как решение
Решение
Прежде всего, Вы смешиваете два разных подхода к обработке списков.
Стандартный способ: от хвоста к голове. Обработка непустого списка начинается с рекурсивной обработки хвоста, затем голова как-то примешивается к полученному результату. Выход из рекурсии, как правило, на пустом списке, результат для которого задается напрямую, отдельным правилом.
Ваш предикат работает с непустыми списками по первой схеме: он вначале вычисляет значение для хвоста, а потом прибавляет к нему единицу. Это значит, что на пустом списке никакого значение еще не будет. На пустом списке только-только должно возникнуть самое первое значение, которое затем, по мере выхода из предикатов будет дополняться обработкой каждой очередной головы. Вместо этого Вы пытаетесь что-то сделать с этим значением, как будто оно уже существует. Такое возможно только при работе по второй схеме - с накоплением. Если задаться целью довести до ума Вашу идею, нужно переписать одно из правил по другой схеме. Кроме того, обёртка понадобится в любом случае. Схема 1:
Но на самом деле нужный предикат можно написать гораздо проще, если отделять сразу по два элемента:
Для чётных списков в обеих схемах нужно поставить
Примечание. Схему 2 можно написать в кратком варианте:
4
|
|||||||||||||||||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 23.09.2018
Сообщений: 1
|
|
| 23.09.2018, 01:02 | |
|
Ой, спасибо большое! После С++ на Prolog не догоняю.
0
|
|
|
798 / 601 / 158
Регистрация: 07.10.2013
Сообщений: 1,330
|
||||||
| 28.09.2018, 18:13 | ||||||
0
|
||||||
| 28.09.2018, 18:13 | |
|
Помогаю со студенческими работами здесь
5
задан текст. удалить из нее все слова, длина которых четная (создать новый массив, оставив все слова, длина которых нечетная)
Ввести строку символов, если ее длина нечетная, удалить символ, стоящий посередине строки.
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|