Я проковылял в течение 3 часов в настоящее время по этой проблеме, мне нужно найти индекс (A,B,C)
где A
является позицией индексных B
в списке C
(или -1
, если нет в списке) , Это то, что я до сих пор,Prolog- обратного индексу элемента
indexof(A,0,[A|_]).
indexof(A,B,[_|C]):- Y is B-1, indexof(A,Y,C).
это дает элемент на указательном месте B
, который не то, что я хочу.
indexof(A,1,[1]).
должен вернуть A=0;A=-1.
Я ужасно на Прологе, я сделал Java всю свою жизнь, поэтому, пожалуйста, также давать объяснения.
Можете ли вы привести пример вызова со значениями для '' b' и C', и ожидаемое значение 'A'? (Правильно ли я понял ваш вопрос?) – sarnold
Прошу прощения, мне трудно сформулировать свой вопрос, мой мозг жарится. В основном, индекс (A, 1, [1]). должен возвращать A = 0; A = -1. Как вы можете сказать из моего очень продвинутого кода * sarcasm *, я совершенно не понимаю, как это сделать на этом языке. – MellowFellow
Не шутите, Пролог занимает некоторое время, чтобы привыкнуть. (Я, конечно, еще не получил его.) – sarnold