0
我想實現在序言遞歸程序。我對如何用C這樣的過程語言實現它有一個想法,但不知道如何在序言中做到這一點。遞歸程序C至Prolog的
我怎麼會做它在C:
int function_1(int m){
int i, a;
if(check_solution(m))
return 1;
for(i=0; i<10; i++){
a=function_2(i);
if (function_1(a))
return 1;
}
return 0;
}
function_2和check_solution都是非遞歸函數。
我有一個很難進入解決問題的序言的方式,所以任何幫助將不勝感激。
什麼是您的函數返回時循環到達終點? 'function_2'看起來如何? check_solution呢? C中的工作實現將有所幫助。 – dasblinkenlight
@dasblinkenlight我意識到剛纔我已經失蹤function_1的返回值,我已經添加它。關於函數2和check_solution,它們都是非遞歸的。 –
我會建議從簡單的事情開始。像1)如何將一個函數轉換成一個Prolog謂詞。 2)如何在Prolog中編寫*簡單的*遞歸(無循環),3)如何模擬一個循環。那麼你可以將這些結合在一起 –