Я написал программу, которая читает входные данные из текстового файла:
read_input(File, N, K, C) :-
open(File, read, Stream),
read_line(Stream, [N, K]),
read_line(Stream, C).
read_line(Stream, L) :-
read_line_to_codes(Stream, Line),
atom_codes(Atom, Line),
atomic_list_concat(Atoms, ' ', Atom),
maplist(atom_number, Atoms, L).
Это то, что написано в текстовом файле с именем test, который находится в том же каталоге, что и моя программа:
10 3
1 3 1 3 1 3 3 2 2 1
Итак, используя этот запрос:
read_input('c1.txt', N, K, C).
Я ожидаю, что результат будет:
N = 10,
K = 3,
C = [1, 3, 1, 3, 1, 3, 3, 2, 2|...].
Однако результатом этого является false
. Я также попытался указать весь путь вместо 'test.txt'
, и он все еще false
. Если я указал неправильный путь или неверное имя txt, выдается сообщение об ошибке он не может найти файл, поэтому предположим, что он правильно обращается к файлу txt
. До сих пор он не работает и выдает false.
Что я делаю не так?