
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.3] |
![]() |
|
Сообщ.
#1
,
|
|
|
Задание:
1. Составьте программу копирования файла. При вводе имени файла осуществлять проверку на его существование. 2. Составьте программу, в которой вводится с терминала путь и имя файла, а затем грамматическим разбором с помощью предиката fronttoken формируется файл с тем же именем, но с другим типом. т. е. существует файл Old.txt нужно получить 2 файла с новым именем New.txt и New.db8 При чем, если я введу полный путь - программа тоже бы работала. Пример C:\OLD\Old.txt получить допустим D:\New.txt D:\New.db8 Вот код программы, написал НЕ через fronttoken, но надо реализовать именно с помощью этого предиката. Помогите плиз. ![]() ![]() domains file= starf; novf predicates any_key file_copy(string, string) read_write clauses read_write:- readchar(C),!, write(C), read_write. read_write. any_key:- write(" press any key"),nl, readchar(_). file_copy(Old, New):- existfile(Old), not(existfile(New)), not(concat(Old,"",New)), openread(starf, Old), openwrite(novf, New), filemode(starf, 0), filemode(novf, 0), readdevice(starf), writedevice(novf), read_write, readdevice(keyboard), writedevice(screen), closefile(starf), closefile(novf). file_copy(Old, New):-write("Ne kopiruem ", Old, " as ", New),nl. goal makewindow(1,15,30,"SOZDANIE I KOPIROVANIE FILE",0,0,25,80), write("Vvod starogo imeni file"),nl, readln(Old), write("Vvod novogo imeni file"),nl, readln(New), file_copy(Old, New), str_len(New, L), L1=L-3, frontstr(L1, New, S, _), concat(S, "db8", New1), file_copy(Old, New1), any_key, removewindow. |
Сообщ.
#2
,
|
|
|
Попробуйте задать свой вопрос здесь
http://www.progz.ru/f10/ |