ayrıca böyle, verilen listeleri onları tanımlamak amacıyla affix
ve suffix
olarak tanımlayarak iki Prolog ilişkileri oluşturmak için çalışılıyor:İki ilişkiler ve tek Prolog programında bunların tanımları
?- consult(relpro).
% relpro compiled 0.00 sec, 956 bytes
true.
?- affix([a,b,c],[a,b,c,e,f]).
true.
?- affix([a,b,c], [a,b,e,f]).
false.
?- suffix([e,f],[a,b,e,f]).
true .
?- suffix([a,b,c],[a,b,c,e,f]).
false.
Öneri aranıyor!
@Aspersum. İlk başta bunu anlamadım ... Bu 'sonek_of/2' değil, 'affix_of/2' olarak adlandırmak daha iyidir. Suffix_of (Xs, Es) olarak tanımlanabilir: - (_, Xs, Es). – repeat
@Aspersum. Affix_of/2' için cevabımın eski bir versiyonunu görmek ister misiniz? Http://stackoverflow.com/posts/36354206/revisions ... – repeat
@Aspersum adresine gidin. Anlıyorum. 'prefix_of (Önek, Liste): - (Önek, _, Liste) .' ve' suffix_of (Sonek, Liste) 'yi ekleyin: - (_, Sonek, Liste) ekleyiniz.' size uygun olmalıdır ... Örnek sorular ve cevaplar : '? - prefix_of (Xs, [a, b, c, d]).' Xs = [] verir; Xs = [a]; Xs = [a, b]; Xs = [a, b, c]; Xs = [a, b, c, d]; false.' ve '? - suffix_of (Xs, [a, b, c, d]).' Xs = [a, b, c, d] verir; Xs = [b, c, d]; Xs = [c, d]; Xs = [d]; Xs = []; false.' – repeat