Prolog exercise

Magic square

Sign in to hand in your solution and get feedback.

:- use_module(library(clpfd)). main(Dim) :- magic_square(Square,Dim), maplist(portray_clause,Square), Square=[Row|_], lists:sum_list(Row,Sum), write(Sum). magic_square(Square,Dim) :- magic_square_constraints(Square, Dim), maplist(label, Square). magic_square_constraints(Square, Dim) :- ...