pingvinyatko
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Прощу помощи в решении задачи. Тема "Множества", но реализовать надо с использованием файлов (к сожалению, с файлами умею работать только со строками и записями). Также в задаче используется перечисляемый тип. В озере водится несколько видов рыб. Три рыбака поймали рыб, представляющих некоторые из имеющихся видов. Определить: какие виды рыб есть у каждого рыбака, какие рыбы есть в озере, но их не выловил ни один из рыбаков (использовать перечисляемый тип). Если не использовать файлы, то все очень просто. Если бы не перечисляемый тип, то было бы еще проще. Поскольку это прототип, то вывод не настроен. program zadacha31; {$APPTYPE CONSOLE} uses SysUtils; type fish=(ersh, okun, chebak, karas, karp, schuka, lesch); //виды рыб people=set of fish; var r1,r2,r3,ro,ru:people; i:fish; begin r1:=[okun, schuka]; //улов 1-ого рыбака r2:=[okun, schuka, chebak]; //улов 2-ого рыбака r3:=[okun, schuka, lesch, ersh]; //улов 3-его рыбака for i:=ersh to lesch do begin if (i in r1) and (i in r2) and (i in r3) then //одинаковые рыбы в улове ro:=ro+[i]; if (not (i in r1)) and (not (i in r2)) and (not (i in r3)) then //никто не поймал таких рыб ru:=ru+[i]; end; readln; end. В файл необходимо записать или начиная с начальных условий (уловы трех рыбаков), или начиная с получения двух множеств в результате. Затем нужно из файла прочитать содержимое и в первом случае выполнить проверку, записать новые множества, а потом прочитать новые множества и вывести их на экран; во втором случае только ограничиться чтением новых множеств и их выводом. Заранее благодарен за помощь  |