Даны файлы f1,f2,f3,f4,f5, компоненты которых являются вещественными числами. организуйте обмен компонентами между файлами в соответствии со следующей схемой: f1 f2 f3 f4 f5 ↓ ↓ ↓ ↓ ↓ f3 f4 f5 f2 f1 т.е. компоненты файла f1 переписываются в файл f3, компоненты файла f2 - в f4 и т.д. разрешается использовать только один файл h.
282
314
Ответы на вопрос:
Type tr = real; tf = file of tr; procedure swapfile(fn1, fn2: string); var r: tr; fin, fout: tf; begin assign(fin, fn1); reset(fin); assign(fout, fn2); rewrite(fout); while (not eof(fin)) do begin read(fin, r); write(fout, r) end; close(fin); close(fout) end; var f1, f2, f3, f4, f5, fh: string; begin f1 : = 'f1.bin'; f2 : = 'f2.bin'; f3 : = 'f3.bin'; f4 : = 'f4.bin'; f5 : = 'f5.bin'; fh : = 'tmp.bin'; { f2 < -> f4 } swapfile(f2, fh); swapfile(f4, f2); swapfile(fh, f4); { f5-> h, f3-> f5, f1-> f3, h-> f1 } swapfile(f5, fh); swapfile(f3, f5); swapfile(f1, f3); swapfile(fh, f1) end. ******************* для тестирования ****************** можно создать тестовые файлы с следующей программы: type tr = real; tf = file of tr; procedure wf(fn: string; m, n: integer); var fout: tf; i: integer; begin assign(fout, fn); rewrite(fout); for i : = m to n do write(fout, i / 2); close(fout) end; var f1, f2, f3, f4, f5: string; begin f1 : = 'f1.bin'; f2 : = 'f2.bin'; f3 : = 'f3.bin'; f4 : = 'f4.bin'; f5 : = 'f5.bin'; wf(f1, 3, 7); wf(f2, 11, 19); wf(f3, -6, 9); wf(f4, 0, 11); wf(f5, 14, 22); end. далее можно просмотреть содержимое созданных файлов с следующей программы: type tr = real; tf = file of tr; procedure wf(fn: string); var fin: tf; r: tr; begin writeln(fn); assign(fin, fn); reset(fin); while (not eof(fin)) do begin read(fin, r); write(r: 0: 1, ' ') end; writeln; close(fin) end; var f1, f2, f3, f4, f5: string; begin f1 : = 'f1.bin'; f2 : = 'f2.bin'; f3 : = 'f3.bin'; f4 : = 'f4.bin'; f5 : = 'f5.bin'; wf(f1); wf(f2); wf(f3); wf(f4); wf(f5) end. затем выполнить основную программу по перезаписи и снова запустить программу для просмотра файлов.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
almira666ozs33631.01.2021 21:14
-
артем115120.01.2022 11:32
-
Winstorm05.10.2021 23:48
-
Taticyan70725.06.2020 09:07
-
dasharau2713.06.2022 05:32
-
latyshevavera207.06.2021 04:45
-
mihailodnowal77713.07.2020 23:30
-
Domikiahela15.11.2021 14:45
-
Summerween10.10.2022 23:30
-
Konopleva1947lina15.06.2023 10:15
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.