У меня есть список чисел, мне нужно рассчитать сумму четных чисел списка и произведение нечетных чисел того же списка. Я новичок в Prolog, и мои поиски до сих пор не были успешными. Может ли кто-нибудь помочь мне решить эту проблему?Сумма четного, произведения нечетных чисел в Prolog
l_odd_even([]).
l_odd_even([H|T], Odd, [H|Etail]) :-
H rem 2 =:=0,
split(T, Odd, Etail).
l_odd_even([H|T], [H|Otail], Even) :-
H rem 2 =:=1,
split(T, Otail, Even).
Можете ли вы показать, что вы уже пробовали ? –
Во-первых, вам нужно сделать попытку. Я понимаю, что вы новичок в Prolog, но что вы узнали до сих пор о Prolog? Поскольку вы имеете дело с * списком чисел *, вы захотите манипулировать списком. Вы можете «обработать список пролога» Google и получить некоторую полезную информацию о том, как управлять списками. Во-первых, '[]' - пустой список, а '[H | T]' - это список с первым элементом 'H' и * rest * списка (* tail *) -' T'. – lurker
ну это мой код до сих пор «l_odd_even ([]). l_odd_even ([H | T], нечетный, [H | Etail]): - ((H rem 2) =: = 0), split (T, Odd, Etail). l_odd_even ([H | T], [H | Otail], Even): - ((H rem 2) =: = 1), split (T, Otail, Even). " Я просто не знаю, как быстро реализовать сумму и продукт после этого –