cost 108 ms
在不使用內置 findall 的情況下實現 Prolog findall 的簡單版本

[英]Implementing a simple version of Prolog findall without using the built-in findall

我正在嘗試在 Prolog 中實現一個簡單版本的 findall,而不使用內置的 findall 或類似的內置謂詞——就像一個學習練習。 例如,假設我的數據庫中有一個關系 a/1, 我想要一個像 find_the_as(List) 這樣的關系給我 List = [1,11,13]。 我可以使 ...

Prolog 限時找到所有解決方案

[英]Prolog findall solutions within time limit

我想在一定時間內找到目標的所有解決方案。 我的意思是我想最多搜索時限的解決方案,並返回所有找到的解決方案,無論是否達到了時限,這與解決方案列表是否完整無關。 我嘗試了以下方法: 但是,如果達到時間限制,它不會返回找到的部分解決方案列表,並且“false”不能是依賴於 Sol 的表達式。 這個問題與P ...

PROLOG,是否可以在不使用內置謂詞(例如 bagof 或 findall)的情況下將謂詞中的所有結果收集到列表中

[英]PROLOG, Is it possible to collect all result from a predicate to a list, without using built in predicates, such as bagof or findall

例如,如果我有一個 Prolog 謂詞,例如 a(A, B)。 在給定 A 的值的情況下,是否可以在不使用諸如bagof/3或findall/3之類的內置謂詞的情況下將 B 的所有在謂詞 a 之后的值收集到一個列表中。 ...

findall 的異常行為

[英]Unusual behaviour of findall

以下看起來很不尋常: 痕跡更是如此 考慮到findall的語義,這沒什么意義。 到底是怎么回事? ...

如何在 Prolog 代碼中編寫“findall”?

[英]How do I write 'findall' in a Prolog code itself?

所以,我對 Prolog 很陌生,我必須寫一個關於時間表的簡短代碼。 如何將 findall 函數添加到代碼本身? 現在我想寫一個命令來顯示我一周有多少次化學反應。 ...

如何正確制定 findall/3 的異常?

[英]How to formulate an exception for findall/3 correctly?

我已經開始學習 Prolog 並且我想獲得 findall/3 玩家的對手列表。 在概括中,我只想將實際上是玩家的對手添加到列表中,除了我自己要求的玩家。 我該如何制定這個例外? 我知道否定是失敗的概念,但我不確定我是否以及如何在這里需要它。 我實際上預計,該決議將按如下方式工作: 我錯過了什么? ...

在序言中查找所有內容

[英]Find all in prolog

我有一些員工: 我想打印所有這些。 我現在這樣做: 它可以工作,但看起來不太好,我的意思是,'_' 太多了,我必須寫出“Id、PosId、FN、LN、Birth”字符串。 如何在 findall() 中直接找到員工? ...

在 findall 中過濾

[英]Fitltering in findall

我有規則: 其中分數定義為: 我只想找到 H 不在 Enemies 或 Team 中的 (H,E)。 我后來嘗試exclude ,但結果是元組,使它工作有點復雜。 有沒有辦法在findall方法中過濾掉它? 我該如何處理? ...

findall的Prolog問題,如何構造成對的列表(element,list_of_elements)

[英]Prolog problem with findall how to construct a solution of a list which is a pair (element, list_of_elements)

我正在嘗試解決問題,但我不知道如何正確處理謂詞findall。 這個想法是下一個。 我們有一張桌子,有一些桌子堆放在桌子上。 這可能是給定情況的一個示例:Table-> a,b,c,d 因此,塊a,恰好在表上,塊b在塊a上,依此類推。 我們還有一些謂詞,例如下 ...

將一個變量的多個統一化

[英]Prolog multiple unifications to one variable

我需要將數據庫中的所有術語統一為一個變量。 對於給定的代碼: 我得到輸出: 我需要得到類似的東西: 可能嗎? 我知道retract / 1,它從數據庫中刪除了該術語,我可以遍歷所有這些事實,然后逐個從數據庫中撤回它們,但這似乎就像在開槍。 任何給定的建議都是不折 ...

在Prolog中合並列表中的元組元素

[英]Merging elements of tuples in a list in Prolog

我需要從知識庫中創建一個列表,看起來像這樣: 該列表需要包含元組,每個元組包含 fact2 的第二個和第三個值,以及 fact2 的相加數字,只要 fact1 和 fact2 的第一個值匹配。 也許當我展示我目前擁有的東西時,它會變得更清楚。 這是我使用 findall 語句的謂詞,對我來說, ...

如何使用findall / 3(僅使用一個謂詞)內聯目標?

[英]How to inline a goal with findall/3, (use just one predicate)?

我有一個看起來像這樣的知識庫 對於每個fact1和fact2 (在此示例中)數字匹配,我希望有一個對應的字母列表作為元組。 我想為此使用findall/3和一個謂詞。 我之前在這里問過一個問題 ,該問題是如何使用兩個謂詞來解決相似的問題。 該解決方案如下所示: 給定事實 ...

如何在Prolog中返回推薦列表?

[英]How to return a list of recommendations in Prolog?

對於我的任務,我應該列出20個潛在的寵物,然后定義每個寵物的事實。 然后我需要問潛在的寵物主人五個問題,這將有助於確定哪些寵物是好的建議。 我試圖根據用戶輸入返回寵物列表但它每次都返回true並且實際上沒有列出推薦的寵物。 不知道我哪里錯了。 我只會在我的代碼示例中包含一些寵物,所以它不 ...

避免findall溢出和n分數問題

[英]Avoid findall overflow with n-fractions problem

我正在嘗試打印n = 4的所有n分數問題的解決方案: 當我運行查詢時: 我得到以下異常: 我在想是否有辦法在程序內部循環並每次打印一個解決方案,還是我不能這樣做,因為問題有太多解決方案? ...

Prolog-獲取朋友的朋友列表

[英]Prolog - getting a list of friends of friends

我正在努力取得不錯的成績, 我有一些朋友 使用findall(X,friend(a,X),List)我得到了a所有直接朋友 例如,我想要得到的3個好友列表a ,例如,我想直接的朋友a的朋友的朋友a (指的朋友b , b2 , b3 )和朋友c 。 獲取列表: 我正 ...

Prolog 謂詞無法解析

[英]Prolog predicate doesn't resolve

這可能是一個菜鳥錯誤,但我正在嘗試解決這個問題: 使用 findall 謂詞查找查詢以獲取以下答案:獲取在其居住城市以外的城市工作的人員列表: 這是數據庫: 這是我試圖用來解決它的謂詞: 但它只返回false 。 有誰知道如何修理它? ...

高效的findall()處理?

[英]Efficient findall() processing?

我具有以下“事實”結構。 然后,我希望有成千上萬的人。 “條件”是在處理事實時將要評估的條件。 對於每個正確的事實,我將分數和索引存儲在列表中以進行進一步處理。 一般的想法是找到全部findall/3事實,然后遍歷它們... 我擔心的是, findall/3每次運行都會吞噬 ...

計算由於findall無法在Prolog中使用而導致的列表大小

[英]Counting list size resulting from a findall not working in Prolog

我使用findall獲得了一個特定列表,然后想要計算其中的元素數量。 即 這會從我的數據庫[beagle,basset]中返回獵狗的需求列表。 但是現在,如果我嘗試使用新的謂詞來計算它: 與我的查詢?-list_length(huntingbreeds(List),C ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM