Простые задчки на файлы, просьба помочь |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Простые задчки на файлы, просьба помочь |
Retabol |
Сообщение
#21
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
Окей, ребят, всем большое спасибо за помощь.
С первой задачей перебьюсь, покажу только вторую... Не перевелись же еще добрые люди на земле |
Altair |
Сообщение
#22
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Цитата Олег, я вижу ты тут самый разумный из всех Далеко не самый. Здесь есть настоящие профи! ------------------ Вот что я тут написал: Код var f,f1:file of byte; i:longint; fn:string; b:byte; begin Write('‚ўҐ¤ЁвҐ Ё¬п иЁда㥬®Ј® д ©« '); readln(fn); Assign(f,fn); {бўп§лў Ґ¬ д ©®ўго ЇҐаҐ¬Ґго б Ё¬ҐҐ¬ д ©« } Reset(f); Writeln('ўўҐ¤ЁвҐ Ё¬п д ©« , Є®в®ал© ¤® ᮧ¤ вм (нв® Ўг¤Ґв § иЁда®ў л© д ©«)'); readln(fn); Assign(f1,fn); rewrite(f1); For i:=0 to filesize(f)-1 do begin seek(f,i); {ЇҐаҐ¬Ґй Ґ¬ гЄ § ⥫м д ©« i-л© н«Ґ¬Ґв} read(f,b);{бзЁвлў Ґ¬ § 票Ґ} {§¤Ґбм п Ґ ЇЁб «. §¤Ґбм ¤®«¦ Ўлвм ўлЎ®аЄ Ё§ Є®¤®ў®© в Ў«Ёжл} write(f1,b); end; close(f); close(f1); end. Эта программа читает побитно EXE файл и записывает в другой (который окажется зашифрованным) Я только не сдалал само шифрование. Вот почему: Цитата 3.1. создать свою кодовую таблицу Я-то еще только школу закончил, а вы наверно это проходили в универе. Так вот, если я правитльно понял, то кодовая таблица имее следующий вид: "код" - "на что его заменить" .... Если так, то я доделаю, если не так, то скажите как надо делать кодовую таблицу. Блок схему я на листочке нарисую, отсканирую и присоединю к сообщению. kile сказал: Цитата ксанка, какой же это шифр ... А что это по вашему? Если вы насчет того, что ксанка написала, то она сказала: "Совсем запуталась". Сообщение отредактировано: Oleg_Z - -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Altair |
Сообщение
#23
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Цитата Окей, ребят, всем большое спасибо за помощь. С первой задачей перебьюсь, покажу только вторую... Нет, стой. Скажи что надо упростить и мы упростим. Эта не та задача, в которой нельзя ничего упростить. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Retabol |
Сообщение
#24
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
такое понятие как "inc" мы вообще не используем.
и еще, если не сложно, подпиши комментарии в программе, а то я не очень разобрался в смысле... |
Altair |
Сообщение
#25
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Цитата такое понятие как "inc" мы вообще не используем. Да inc это просто увеличение значения переменной. Код var f,t:text; i:longint; fn,s:string; begin write('‚ўҐ¤ЁвҐ Ё¬п д ©« :'); readln(fn); Assign(f,fn); {связываем переменую f с введенным именем} reset(f); {отркрываем файл} write('ўўҐ¤ЁвҐ Ё¬п ЌЋ‚ЋѓЋ д ©« :'); readln(fn); Assign(t,fn); rewrite(f); {тоже связываем переменную и открываем файл} while not EOF(F) do {пока нет конца файла повторять:} begin inc(i); {увеличить i на единицу} readln(f,fn); {прочитать строку из файла} s:=''; {"обнулить строку"} str(i,s);{переводим i (длинное целое) в строку, используя процедуру str} s:=s+' '+fn; {добавляем к строке, строку с номером} end; Close(f); Close(t); {close all file} Writeln('ўбҐ ᤥ« ®!'); end. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Altair |
Сообщение
#26
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Ой, а ничего, что я комент написал в кодировке win, а прога в кодировке дос?
Кодировка дос у проги, чтобы ты из турбо Паскаля открыл сохраненный файл, и он нормально читался. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Ксанка |
Сообщение
#27
|
Новичок Группа: Пользователи Сообщений: 13 Пол: Женский Репутация: 0 |
kile смешно тебе...посоветовал бы что-нибудь по этому поводу... <_<
|
Ксанка |
Сообщение
#28
|
Новичок Группа: Пользователи Сообщений: 13 Пол: Женский Репутация: 0 |
Ой, Олег, спасибо тебе, чмооооки) Как хорошо, когда есть такие хорошие отзывчивые люди, спасибоспасибоспасибо! [IMG]http://smilies.jeeptalk.org/otn/love/kotc.gif[/IMG]
|
Ксанка |
Сообщение
#29
|
Новичок Группа: Пользователи Сообщений: 13 Пол: Женский Репутация: 0 |
Олег, да, забыла сказать, что кодовую таблицу нужно сделать именно так, как ты написал, спасииибо тебе за все
|
Retabol |
Сообщение
#30
|
Группа: Пользователи Сообщений: 9 Репутация: 0 |
Присоединяюсь к Ксанке!
Спасибо всем за помощь. Задачи я показал, все ок! |
Altair |
Сообщение
#31
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
Вот первая реализация кодовой таблицы - просто смещаем код.
Код { Є®¤®ўго в Ў«Ёжг ¬®¦® ॠ«Ё§®ў вм ҐбЄ®«мЄЁ¬Ё бЇ®б®Ў ¬Ё. ¬л ў®§м¬Ґ¬ Їа®б⥩訩 бЇ®б®Ў - § ¬ҐпҐ¬ бзЁв л© Є®¤ Ї® д®а¬г«Ґ ¤«п Є®¤®ў ®в 0 ¤® 250 - new_kod=kod+5 ¤«п ®бв «мле, ®бв ў«пҐ¬ Є Є Ґбвм. в.Ґ. Їа®б⮠ᬥ饨Ґ. Њ®¦® ॠ«Ё§®ў вм Є®¤®ўго в Ў«ЁжҐ ў ўЁ¤Ґ д ©« -Є«оз . } var f,f1:file of byte; i:longint; fn:string; b:byte; begin Write('‚ўҐ¤ЁвҐ Ё¬п иЁда㥬®Ј® д ©« '); readln(fn); Assign(f,fn); {бўп§лў Ґ¬ д ©®ўго ЇҐаҐ¬Ґго б Ё¬ҐҐ¬ д ©« } Reset(f); Writeln('ўўҐ¤ЁвҐ Ё¬п д ©« , Є®в®ал© ¤® ᮧ¤ вм (нв® Ўг¤Ґв § иЁда®ў л© д ©«)'); readln(fn); Assign(f1,fn); rewrite(f1); For i:=0 to filesize(f)-1 do begin seek(f,i); {ЇҐаҐ¬Ґй Ґ¬ гЄ § ⥫м д ©« i-л© н«Ґ¬Ґв} read(f,b);{бзЁвлў Ґ¬ § 票Ґ} {§¤Ґбм п Ґ ЇЁб «. §¤Ґбм ¤®«¦ Ўлвм ўлЎ®аЄ Ё§ Є®¤®ў®© в Ў«Ёжл} If b<250 then b:=b+5; write(f1,b); end; close(f); close(f1); end. Вот покруче, эта прога использует файл-ключ. Для примера, я присоединил файл-ключ к этому сообщению. Код { н⮠ॠ«Ё§ жЁп д ©« -Є«оз , Є®в®ал© гбв஥ б«Ґ¤. ®Ўа §®¬: ®¬Ґа_Ї®§ЁжЁЁ_ў_д ©«Ґ_Є«озҐ - § 票Ґ_§ ¬ҐпҐ¬®Ј® бЁ¬ў®« . } var CodeFile:file of byte; f,f1:file of byte; i:longint; fn:string; b:byte; begin Assign(CodeFile,'KODTABL.DAT'); {$F-} reset(CodeFile); {$F+} If IoResult<>0 then HALT; {Ґб«Ё Ґ ©¤Ґ Є«оз-д ©«, в® § ўҐаиЁвм а Ў®вг} Write('‚ўҐ¤ЁвҐ Ё¬п иЁда㥬®Ј® д ©« '); readln(fn); Assign(f,fn); {бўп§лў Ґ¬ д ©®ўго ЇҐаҐ¬Ґго б Ё¬ҐҐ¬ д ©« } Reset(f); Writeln('ўўҐ¤ЁвҐ Ё¬п д ©« , Є®в®ал© ¤® ᮧ¤ вм (нв® Ўг¤Ґв § иЁда®ў л© д ©«)'); readln(fn); Assign(f1,fn); rewrite(f1); For i:=0 to filesize(f)-1 do begin seek(f,i); {ЇҐаҐ¬Ґй Ґ¬ гЄ § ⥫м д ©« i-л© н«Ґ¬Ґв} read(f,b);{бзЁвлў Ґ¬ § 票Ґ} Seek(CodeFile,b); Read(f,b); write(f1,b); end; close(f); close(f1); end. Цитата Ой, Олег, спасибо тебе, чмооооки Да, я что, я ничего ... Сообщение отредактировано: Oleg_Z - Прикрепленные файлы KODTABL.DAT ( 256 байт ) Кол-во скачиваний: 7 -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Текстовая версия | 19.04.2024 4:25 |