:- use_module(library(error)).
:- use_module(library(clpfd)).
:- use_module(library(lists)).
main :-
findall([A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15],solve,R).
solve :-
load_file('n.txt', Words),
member([A1, A2, A3, A4, A5], Words),
member([A2, A6, A7, A8, A9], Words),
member([A3, A7, A10, A11, A12], Words),
member([A4, A8, A11, A13, A14], Words),
member([A5, A9, A12, A14, A15], Words),
writef("%s\n", [[A1, A2, A3, A4, A5]]),
writef("%s\n", [[A2, A6, A7, A8, A9]]),
writef("%s\n", [[A3, A7, A10, A11, A12]]),
writef("%s\n", [[A4, A8, A11, A13, A14]]),
writef("%s\n\n", [[A5, A9, A12, A14, A15]]).
load_file(File, Words) :-
open(File, read, Stream, []),
call_cleanup(load_strings(Stream,Words), close(Stream)).
load_strings(Stream, Words) :-
read_line_to_codes(Stream, T0),
load_strings(T0, Stream, Words).
load_strings(end_of_file, _Stream, []) :- !.
load_strings([], _Stream, []) :- !.
load_strings(Line, Stream, [Line|Rest]) :-
read_line_to_codes(Stream, NextLine),
load_strings(NextLine, Stream, Rest).
ildasm /out=out.il /source /linenum /bytes /nobar Tests.exe
.line 57,57 : 13,34 ''
//000057: double a = (double)o;
IL_0001: /* 02 | */ ldarg.0
IL_0002: /* A5 | (01)000030 */ unbox.any [mscorlib]System.Double
// Source File 'C:\Users\m08pvv\Documents\Visual Studio 2010\Projects\CSharpTests\CSharpTests\Test.cs'
пытатьспросить.