2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Пролог.Одинаковые файлы
Сообщение05.05.2008, 07:03 


05/05/08
1
Помогите. У меня такая задача: 1.На диске С есть каталоги А1, А2, А3. В каждом каталоге 2-3 подкаталога. Есть 20 файлов. Они распределены частично в корне С, частично в каталогах, частично в подкаталогах. Необходимо для заданного имени файла определить есть ли он на диске и путь к нему.
2.Определить – есть ли в различных каталогах одинаковые файлы.
Вот с 1 задачей я справился (нашел), а вот с 2 нет. Я выложу листинг:
katalog
poisk(string)
vibor(integer)
wih(char)
spisok
put
kat(string,string)
file(string,string,string)
def(string,string,string)
nach
vih

goal
nach,
katalog.

clauses
nach if makewindow(1,113,116, " ",0,0,25,80),
makewindow(2,113,116," ",0,0,25,60),
gotowindow(2), cursor(0,0),
write("ПРОГРАММА ПОИСКА ФАЙЛА В КАТАЛОГЕ"),cursor(2,0),
write("Варианты вопросов:"), nl,
write("1.Вывести список всех файлов"),nl,
write("2.Вывести путь к заданному файлу").

katalog if gotowindow(2),cursor(7,0),
write("Выберите номер вопроса "), readint(N), vibor(N), nl.

vibor(N) if N=1, spisok, vih or N=2, put,vih.

put if gotowindow(2), nl, write("Введите имя файла "),
readln(R), nl, write("Путь к файлу:"), nl,poisk(R) or nl,
write("Больше нет файла с таким именем").

vih if gotowindow(2), nl,
write("Выход - нажмите 0, повторить - 1 "),
readchar(M), wih(M).

spisok if makewindow(3, 113,116, "Список файлов",0,60,25,20),
gotowindow(3), cursor(0,0), file(X,Y,Z),
write(Y,".",Z), nl, Y="выборы", write("Конец списка").

poisk(X) if file(K,X,P), def(K,X,P), 2>3.

def(K,X,P) if K="C",nl,write("C - ",X,"(",P,")"), nl
or K<>"C", write("C - ",K," - ",X,"(",P,")"), nl.

wih('0').
wih(T) if T='1', nach, spisok, katalog.

kat("C","A1").
kat("C","A2").
kat("C","A3").

file("C","sm","com").
file("C","работа","bat").
file("A1","student","doc").
file("A1","uchet","txt").
file("A1","выбор","xls").
file("A2","program","exe").
file("A2","program","dpr").
file("A2","program","pas").
file("A3","student","txt").
file("A3","выборы","doc").
Как сюда присобачить 2 часть. Зарание благодарю!

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group