IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Простые задчки на файлы, просьба помочь
Retabol
сообщение 28.05.2004 5:39
Сообщение #21





Группа: Пользователи
Сообщений: 9

Репутация: -  0  +


Окей, ребят, всем большое спасибо за помощь.
С первой задачей перебьюсь, покажу только вторую...
Не перевелись же еще добрые люди на земле smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 28.05.2004 10:53
Сообщение #22


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

Репутация: -  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 - 28.05.2004 10:55


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 28.05.2004 10:56
Сообщение #23


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Цитата
Окей, ребят, всем большое спасибо за помощь.
С первой задачей перебьюсь, покажу только вторую...

Нет, стой.
Скажи что надо упростить и мы упростим. Эта не та задача, в которой нельзя ничего упростить.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Retabol
сообщение 28.05.2004 13:35
Сообщение #24





Группа: Пользователи
Сообщений: 9

Репутация: -  0  +


такое понятие как "inc" мы вообще не используем.
и еще, если не сложно, подпиши комментарии в программе, а то я не очень разобрался в смысле...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 28.05.2004 17:37
Сообщение #25


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

Репутация: -  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.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 28.05.2004 17:39
Сообщение #26


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Ой, а ничего, что я комент написал в кодировке win, а прога в кодировке дос?
Кодировка дос у проги, чтобы ты из турбо Паскаля открыл сохраненный файл, и он нормально читался.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ксанка
сообщение 29.05.2004 14:48
Сообщение #27


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


kile смешно тебе...посоветовал бы что-нибудь по этому поводу... <_<
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ксанка
сообщение 29.05.2004 14:58
Сообщение #28


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Ой, Олег, спасибо тебе, чмоооокиsmile.gif) Как хорошо, когда есть такие хорошие отзывчивые люди, спасибоспасибоспасибо! [IMG]http://smilies.jeeptalk.org/otn/love/kotc.gif[/IMG]
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ксанка
сообщение 29.05.2004 15:04
Сообщение #29


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Олег, да, забыла сказать, что кодовую таблицу нужно сделать именно так, как ты написал, спасииибо тебе за всеsmile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Retabol
сообщение 29.05.2004 22:02
Сообщение #30





Группа: Пользователи
Сообщений: 9

Репутация: -  0  +


Присоединяюсь к Ксанке!
Спасибо всем за помощь. Задачи я показал, все ок!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 31.05.2004 9:35
Сообщение #31


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

Репутация: -  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.



Цитата
Ой, Олег, спасибо тебе, чмооооки

wub.gif
Да, я что, я ничего ... rolleyes.gif

Сообщение отредактировано: Oleg_Z - 31.05.2004 9:36


Прикрепленные файлы
Прикрепленный файл  KODTABL.DAT ( 256 байт ) Кол-во скачиваний: 7


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 9.09.2025 15:17
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"