Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 51
1

Напишите комментарий к кодам

05.04.2011, 03:06. Показов 1273. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет, всем знатокам программирования!

Хочу задать простой вопрос. Напишите пожалуйста комментарий каждой строчке, которые выделены жирными, чтобы было понятно, выкладываю весь листинг программы. И еще когда компилирую с помощью дельфи 2010 программа работает не корректно, а если с дельфи 7 все замечательно. От чего это?
p.s.: я еще начинающий, надо защитить преподу, а некоторые объяснения к кодам к сожалению не знаю.

Код:


var
Form1: TForm1;
F,F2, F3: File;
F1: TextFile;
Buf, Buf1, Buf3: array[1..2048] of Char;
NumRead, NumRead2,NumWritten,i, k1, k2, X, X1,m: Integer;
s: string;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if (Form1.CheckBox1.Checked = true) and (Form1.Edit1.Text = '') then
--begin
--Form1.Edit1.Text;
--Application.MessageBox('Введите пароль!', 'Шифратор', mb_ok + mb_iconwarning);
--Exit;
--end
--else
----begin
----For m:=1 to Length(Form1.Edit1.Text) do Buf1[m]:=char(Form1.Edit1.Text[m]);
----if OpenDialog1.Execute=true then
------begin
------SaveDialog1.DefaultExt:=copy(ExtractFileExt(OpenDialog1.FileName),2,length(OpenD ialog1.FileName));
------SaveDialog1.FileName:='1 '+ExtractFileName(OpenDialog1.FileName);
------if SaveDialog1.Execute=true then
--------begin
--------FileSetAttr(OpenDialog1.FileName,0);
--------AssignFile(F, OpenDialog1.FileName);
--------AssignFile(F3, SaveDialog1.FileName);
--------Reset(F,1);
--------Rewrite(F3,1);
--------X:=0;
--------X1:=0;
--------repeat
--------Form1.Update;
--------BlockRead(F, Buf, SizeOf(Buf), NumRead);
--------X1:=X1+2048;
--------ProgressBar1.Max:=FileSize(f);
--------ProgressBar1.Position:=x1;
--------for i:=0 to NumRead do
----------begin
----------k1:=Ord(Buf[i]);
----------k2:=Ord(Buf1[x]);
----------if X = Length(Form1.Edit1.Text) then x:=0;
----------Buf3[i]:= Chr(k1 xor k2);
----------X:= X + 1;
----------end;
--------BlockWrite(F3, Buf3, NumRead, NumWritten);
--------until (NumRead = 0) or (NumWritten <> NumRead);
--------ProgressBar1.Position:=0;
--------CloseFile(F);
--------CloseFile(F3);

--------OpenDialog1.FileName:='';
--------end;
------end;
----Form1.Edit2.Visible:=false;
----Form1.Edit1.Clear;
--end;
end;
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.04.2011, 03:06
Ответы с готовыми решениями:

Напишите комментарий к программе
var x,n,a,b:integer; begin writeln('vvedite n'); readln(n); for x:=1 to n do begin if (x mod...

Напишите комментарий к уже готовой программе
program bilet3; {$APPTYPE CONSOLE} uses SysUtils; var a:array of real;

напишите комментарий плз
помогите написать комментарии что какая строчка делает!пожалуйста!не откажите девушке &lt;?php...

напишите пожалуйста комментарий к каждой строке
&lt;html&gt; &lt;head&gt; &lt;style&gt; .head{background-color:green} &lt;/style&gt; &lt;/head&gt; &lt;body&gt; &lt;script...

2
3218 / 2361 / 540
Регистрация: 11.09.2009
Сообщений: 8,604
05.04.2011, 03:28 2
Цитата Сообщение от Kara1989 Посмотреть сообщение
Напишите пожалуйста комментарий каждой строчке
Пока будете ждать, откройте этот код в Delphi, ставьте курсор на каждое непонятное вам слово и нажимайте F1. К каждой из непонятных вам функций в Хелпе есть подробное описание.
0
58 / 57 / 28
Регистрация: 17.01.2011
Сообщений: 181
05.04.2011, 15:50 3
Лучший ответ Сообщение было отмечено Kara1989 как решение

Решение

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
var//Объявляем переменные
Form1: TForm1;//переменная форма
F,F2, F3: File;//файловые переменные
F1: TextFile;//переменная текстового файла
Buf, Buf1, Buf3: array[1..2048] of Char;//символьные переменные
NumRead, NumRead2,NumWritten,i, k1, k2, X, X1,m: Integer;//целочисленные переменные
s: string;//строковая переменная
implementation//блок описания процедур
 
{$R *.dfm}//подключение файла описания формы
 
procedure TForm1.Button1Click(Sender: TObject);//По клику на кнопку 1
begin//начало
if (Form1.CheckBox1.Checked = true) and (Form1.Edit1.Text = '') then //если отмечен чекбокс и поле ввода пустое, то
--begin//начали
--Form1.Edit1.Text;//строка содержит ошибку. Здесь мне непонятно, что вы имели в виду, поэтому не могу исправить
--Application.MessageBox('Введите пароль!', 'Шифратор', mb_ok + mb_iconwarning);//Вывод сообщения
--Exit;//выход из процедуры, на мой взгляд эта строка здесь лишняя
--end//закончили если
--else//иначе
----begin//начали
----For m:=1 to Length(Form1.Edit1.Text) do Buf1[m]:=char(Form1.Edit1.Text[m]);//переносим содержимое эдита в переменную buf1
----if OpenDialog1.Execute=true then//если открыт диалог, то
------begin// начали
------SaveDialog1.DefaultExt:=copy(ExtractFileExt(OpenDialog1.FileName),2,length(OpenD ialog1.FileName));//в диалог сохранения записываем расширение по умолчанию из диалога открытия
------SaveDialog1.FileName:='1 '+ExtractFileName(OpenDialog1.FileName);Устанавливаем имя файла для диалога сохранения
------if SaveDialog1.Execute=true then//если диалог сохранения открыт, то
--------begin//начали
--------FileSetAttr(OpenDialog1.FileName,0);Устанавливаем атрибуты
--------AssignFile(F, OpenDialog1.FileName);//устанавливаем f на файл, который нужно открыть
--------AssignFile(F3, SaveDialog1.FileName);//устанавливаем f3 на файл, который нужно сохранить
--------Reset(F,1);//Открыть файл f  для чтения
--------Rewrite(F3,1);// Открыть фай f3 для записи
--------X:=0;//эти две переменные похожи на позицию, устанавливаем 0
--------X1:=0;
--------repeat//повторять
--------Form1.Update;//обновление формы
--------BlockRead(F, Buf, SizeOf(Buf), NumRead);//начинаем читать файл f, первый блок записывам в переменную buf, NumRead  - текущий считанный номер
--------X1:=X1+2048;//увеличиваем переменную
--------ProgressBar1.Max:=FileSize(f);//устанавливаем максимальное значение прогрессбара как размер файла f
--------ProgressBar1.Position:=x1;//Устанавливаем позицию прогрессбара
--------for i:=0 to NumRead do//цикл от 0 до считанного номера
----------begin
----------k1:=Ord(Buf[i]);
----------k2:=Ord(Buf1[x]);
----------if X = Length(Form1.Edit1.Text) then x:=0;
----------Buf3[i]:= Chr(k1 xor k2);
----------X:= X + 1;
----------end;//в этом цикле формируется значение переменной buf3 с использованием шифрования по xor
--------BlockWrite(F3, Buf3, NumRead, NumWritten);//Записываем полученное значение в файл f3
--------until (NumRead = 0) or (NumWritten <> NumRead);//вся процедура заканчивается, если исходный файл пуст или дошли до конца
--------ProgressBar1.Position:=0;//сброс прогруссбара
--------CloseFile(F);//закрываем файл
--------CloseFile(F3);//закрываем файл
--------OpenDialog1.FileName:='';//сброс имени файла в диалеге
--------end;//конец
------end;//конец
----Form1.Edit2.Visible:=false;//прячем эдит2
----Form1.Edit1.Clear;//очищаем эдит1
--end;
end;
1
05.04.2011, 15:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.04.2011, 15:50
Помогаю со студенческими работами здесь

2 вопрос по кодам
for i := 1 to 10 do begin Form1.Color := clYellow; Sleep(2000); Form1.Color := clBlue; ...

Дописать коментарии к кодам
3 #include &lt;stdio.h&gt; #include &lt;math.h&gt; double x; double f; double fx (double x) { return...

Идентификация ошибок по их кодам в Qt
Всем привет. Собственно вопрос. В &quot;классичеком&quot; C++ под линукс есть заголовоный файл errno.h,...

Упорядочить по кодам города
Есть таблица с данными, и в ней мне необходимо упорядочить по кодам города, чтоб упорядочились все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru