10. Модули
Модуль – повторное использование функций и процедур.
Создание модуля:
Командой File => Unit (Файл => Модуль) в редактор кода проекта добавляется страничка с заготовкой модуля, которая затем заполняется кодом:
Шаблон модуля:
unit MayUnit; // имя модуля изменяется после его сохранения
interface //описательная часть
implementation // реализация
. . . // код модуля
end.
Использование модуля MayUnit :
Добавить этот модуль по имени к проекту в список модулей.
program Blank;
…
uses
SysUtils, MayUnit;
var . . .
begin
. . . //код проекта
end.
Работа с модулем:
1. Создать консольное приложение командой Файл => Создать => Applicayion => Custom Program.
2. Cохранить проект в папке KR командой Файл => Сохранить проект как..=> Blank.
3. Создать модуль для преобразования кодов символов из одной кодировки в другую. Для этого выполнить команду Файл => Модуль. В редакторе кода проекта возникает дополнительная страничка с заготовкой модуля. Заполнить ее кодом:
unit Unit1; //Заголовок модуля, после сохранения имя меняется на другое
interface // Раздел описания
uses
SysUtils; // Ссылка на подключаемые модули
function Rus(mes:string):string; // Заголовок функции Rus с переменной mes
implementation // Раздел реализации
function Rus(mes:string):string; //Преобразует строку Windows под строку MSDOS
var i:integer; //Номер обрабатываемого символа
begin // Тело функции
for i:=1 to length(mes) do
case mes[i] of // Оператор выбора
'А'..'п': mes[i] := chr(ord(mes[i])-64); //преобразование символов в коды
'р'..'я' : mes[i] := chr(ord(mes[i])-16); //преобразование символов в коды
end;
result:=mes; //возвращаемый результат в переменную result
end;
end.
4. Сохранить код модуля командой Файл => Сохранить как…в папке KR под именем RusTrans.pas. В разделе uses появится заголовок модуля Unit1, изменить его вручную на RusTrans.
5. Выполнить компиляцию модуля RusTrans.pas с помощью команды Компиляция => Быстрая Компиляция. В папке проекта KR появится файл компилированного модуля RusTrans.compiled
program Blank;
…
uses
SysUtils, RusTrans;
begin
. . . . .
writeln(Rus('Я студент ПГАТИ'));
readln;
end.
6. В разделе исполнения проекта Blank между операторными скобками begin… end для проверки работы модуля RusTrans внести строку кода с любым текстом, например writeln(Rus('Я студент')).
7. Запустить проект на исполнение, и убедиться, что при подключении модуля, проблема с отображением букв кириллицы решена.
8. Удалить введенную для проверки работоспособности строку. Сохранить изменения в проекте, щелкнув по кнопке Сохранить на панели Инструментов.
9. В соответствующие разделы проекта в вести переменные, процедуры и код для решения поставленных задач.
Базовая таблица кодировки ASCII
0 - |
16 - ► |
32 - |
48 - 0 |
64 - @ |
80 - P |
96 - ` |
112 - p |
1 - ☺ |
17 - ◄ |
33 - ! |
49 - 1 |
65 - A |
81 - Q |
97 - a |
113 - q |
2 - ☻ |
18 - ↕ |
34 - " |
50 - 2 |
66 - B |
82 - R |
98 - b |
114 - r |
3 - ♥ |
19 - ‼ |
35 - # |
51 - 3 |
67 - C |
83 - S |
99 - c |
115 - s |
4 - ♦ |
20 - ¶ |
36 - $ |
52 - 4 |
68 - D |
84 - T |
100 - d |
116 - t |
5 - ♣ |
21 - § |
37 - % |
53 - 5 |
69 - E |
85 - U |
101 - e |
117 - u |
6 - ♠ |
22 - ▬ |
38 - & |
54 - 6 |
70 - F |
86 - V |
102 - f |
118 - v |
7 - |
23 - ↨ |
39 - ' |
55 - 7 |
71 - G |
87 - W |
103 - g |
119 - w |
8 - |
24 - ↑ |
40 - ( |
56 - 8 |
72 - H |
88 - X |
104 - h |
120 - x |
9 - Tab |
25 - ↓ |
41 - ) |
57 - 9 |
73 - I |
89 - Y |
105 - i |
121 - y |
10 - |
26 - → |
42 - * |
58 - : |
74 - J |
90 - Z |
106 - j |
122 - z |
11 - ♂ |
27 - ← |
43 - + |
59 - ; |
75 - K |
91 - [ |
107 - k |
123 - { |
12 - ♀ |
28 -∟ |
44 - , |
60 - < |
76 - L |
92 - \ |
108 - l |
124 - | |
13 - |
29 - ↔ |
45 - - |
61 - = |
77 - M |
93 - ] |
109 - m |
125 - } |
14 - ♫ |
30 -▲ |
46 - . |
62 - > |
78 - N |
94 - ^ |
110 - n |
126 - ~ |
15 - ☼ |
31 - ▼ |
47 - / |
63 - ? |
79 - O |
95 - _ |
111 - o |
127 - ⌂ |
ГОСТ - альтернативная кодировка MS DOS
128 - А |
144 - Р |
160 - а |
176 - ░ |
192 - └ |
208 - ╨ |
224 - р |
240 - Ё |
129 - Б |
145 - С |
161 - б |
177 - ▒ |
193 - ┴ |
209 - ╤ |
225 - с |
241 - ё |
130 - В |
146 - Т |
162 - в |
178 - ▓ |
194 - ┬ |
210 - ╥ |
226 - т |
242 - Є |
131 - Г |
147 - У |
163 - г |
179 - │ |
195 - ├ |
211 - ╙ |
227 - у |
243 - є |
132 - Д |
148 - Ф |
164 - д |
180 - ┤ |
196 - ─ |
212 - ╘ |
228 - ф |
244 - Ї |
133 - Е |
149 - Х |
165 - е |
181 - ╡ |
197 - ┼ |
213 - ╒ |
229 - х |
245 - ї |
134 - Ж |
150 - Ц |
166 - ж |
182 - ╢ |
198 - ╞ |
214 - ╓ |
230 - ц |
246 - Ў |
135 - З |
151 - Ч |
167 - з |
183 - ╖ |
199 - ╟ |
215 - ╫ |
231 - ч |
247 - ў |
136 - И |
152 - Ш |
168 - и |
184 - ╕ |
200 - ╚ |
216 - ╪ |
232 - ш |
248 - ° |
137 - Й |
153 - Щ |
169 - й |
185 - ╣ |
201 - ╔ |
217 - ┘ |
233 - щ |
249 - ∙ |
138 - К |
154 - Ъ |
170 - к |
186 - ║ |
202 - ╩ |
218 - ┌ |
234 - ъ |
250 - · |
139 - Л |
155 - Ы |
171 - л |
187 - ╗ |
203 - ╦ |
219 - █ |
235 - ы |
251 - √ |
140 - М |
156 - Ь |
172 - м |
188 - ╝ |
204 - ╠ |
220 - ▄ |
236 - ь |
252 - № |
141 - Н |
157 - Э |
173 - н |
189 - ╜ |
205 - ═ |
221 - ▌ |
237 - э |
253 - ¤ |
142 - О |
158 - Ю |
174 - о |
190 - ╛ |
206 - ╬ |
222 - ▐ |
238 - ю |
254 - ■ |
143 - П |
159 - Я |
175 - п |
191 - ┐ |
207 - ╧ |
223 - ▀ |
239 - я |
255 - |
Кодировка Windows 1251
128 - Ђ |
144 - ђ |
160 - |
176 - ° |
192 - А |
208 - Р |
224 - а |
240 - р |
129 - Ѓ |
145 - ‘ |
161 - Ў |
177 - ± |
193 - Б |
209 - С |
225 - б |
241 - с |
130 - ‚ |
146 - ’ |
162 - ў |
178 - І |
194 - В |
210 - Т |
226 - в |
242 - т |
131 - ѓ |
147 - “ |
163 - Ј |
179 - і |
195 - Г |
211 - У |
227 - г |
243 - у |
132 - „ |
148 - ” |
164 - ¤ |
180 - ґ |
196 - Д |
212 - Ф |
228 - д |
244 - ф |
133 - … |
149 - • |
165 - Ґ |
181 - µ |
197 - Е |
213 - Х |
229 - е |
245 - х |
134 - † |
150 - – |
166 - ¦ |
182 - ¶ |
198 - Ж |
214 - Ц |
230 - ж |
245 - х |
135 - ‡ |
151 - — |
167 - § |
183 - · |
199 - З |
215 - Ч |
231 - з |
247 - ч |
136 - € |
152 - |
168 - Ё |
184 - ё |
200 - И |
216 - Ш |
232 - и |
248 - ш |
137 - ‰ |
153 - ™ |
169 - © |
185 - № |
201 - Й |
217 - Щ |
233 - й |
249 - щ |
138 - Љ |
154 - љ |
170 - Є |
186 - є |
202 - К |
218 - Ъ |
234 - к |
250 - ъ |
139 - ‹ |
155 - › |
171 - « |
187 - » |
203 - Л |
219 - Ы |
235 - л |
251 - ы |
140 -Њ |
156 -њ |
172 -¬ |
188 -ј |
204 - М |
220 - Ь |
236 - м |
252 - ь |
141 -Ќ |
157 -ќ |
173 - |
189 -Ѕ |
205 - Н |
221 - Э |
237 - н |
253 - э |
142 -Ћ |
158 -ћ |
174 -® |
190 -ѕ |
206 - О |
222 - Ю |
238 - о |
254 - ю |
143 –Џ |
159 -џ |
175 -Ї |
191 -ї |
207 - П |
223 - Я |
239 - п |
255 - я |