我有一个谓词,它生成52个长度的卡片列表: ?- cards(CARDs) .
CARDs = [2♣,2♦,2♠,2♥,3♣,3♦,3♠,3♥,4♣,4♦,4♠,4♥,5♣,5♦,5♠,5♥,6♣,6♦,6♠,6♥,7♣,7♦,7♠,7♥,8♣,8♦,8♠,8♥,9♣,9♦,9♠,9♥,10♣,10♦,10♠,10♥,J♣,J♦,J♠,J♥,Q♣,Q♦,Q♠,Q♥,K♣,K♦,K♠,K♥,A♣,A♦,A♠,A♥] . ..。现在我想随机地对它们进行洗牌。 如何在Prolog中混洗列表?我习惯于以一种强制的方式来做这件事,在这种方式下我可以交换内存地址的内容。 生产卡片的代码如下。 %! r