Все лабы для ИУ-7 - решения и задания (Подготовка к РК1)

Посмотреть архив целиком

Пример задания на РК1

   Каждая запись типа tz содержит в 1 поле – номер, в поле 2 – название города (string[18]), в поле 3 – телефон (string[7]), в поле 4 – код города (string[3]) и в поле 5 – добавочный номер телефона (string[4]). Составить программу с меню, содержащую 5 обработчиков его пунктов, выполняющих:

  1. Создание типизированного файла ‘Города.tel’ с базовым типом tz (не менее 3 городов и не менее 3-х записей по каждому).

  2. Отображение в таблице типа TStringGrid данных созданного файла.

  3. Создание файла ‘Москва.tel ‘ из записей файла ‘Города.tel’.

  4. Отображение в таблице данных файла ‘Москва.tel ‘.

  5. Упорядочение записей непосредственно в файле ‘Города.tel’ по коду города, использовуя операторы for и while..

Пример последовательности работ при выполнении РК1

  1. Вывести на панель инструментов кнопки для редактирования текста.

ВЫПОЛНЕНИЕ:

View\ToolBars\Customize… вкладка Command в левом списке выбрать Edit, из правого списка по очереди буксировать на панеь инструментов и бросать там кнопки , , , , , .

  1. Объявить типы в части реализации.

tz=record

Gorod:string[18];

Telefon: string[7];

Kod:string[3];

Dob: string[4];

end;

tf=file of tz;

tm=array[1..12] of tz;

- Опробоваь, удалить ошибки.

3. Объявить массив с начальными значениями и другие переменные в разделе var.

m:tm=(

(Gorod:'Москва'; Telefon:'3452123'; Kod:'123'; Dob:'7755'),

(Gorod:'Владивосток'; Telefon:'9789951'; Kod:'345'; Dob:'5655'),

(Gorod:'Москва'; Telefon:'4122123'; Kod:'123'; Dob:'6755'),

(Gorod:'Владивосток'; Telefon:'8459951'; Kod:'345'; Dob:'4123'),

(Gorod:'Петербург'; Telefon:'5643243'; Kod:'666'; Dob:'';),

(Gorod:'Москва'; Telefon:'2253463'; Kod:'123'; Dob:''),

(Gorod:'Самара'; Telefon:'7474284'; Kod:'435'; Dob:'3321'),

(Gorod:'Петербург'; Telefon:'5643243'; Kod:'666'; Dob:'';),

(Gorod:'Москва'; Telefon:'1253463'; Kod:'123'; Dob:''),

(Gorod:'Самара'; Telefon:'7374284'; Kod:'435'; Dob:'3343'),

(Gorod:'Москва'; Telefon:'1813463'; Kod:'123'; Dob:''),

(Gorod:'Самара'; Telefon:'4479284'; Kod:'435'; Dob:'3354')

);

f1,f2:tf;

z:tz;

- Опробоваь, удалить ошибки.


4. Создать структуру меню вида:

- На вкладке Standard щелкнуть на кнопке MainMenu, а затем – на форме.

- Сделать двойной щелчок на значке на форме (откроется редактор меню) и последовательно ввести слова Файл, Создать1, Открыть1, Создать2, Открыть2, Упорядочить 1, нажимая после каждого слова Enter, а затем ввести слово Очистить во второй пункт строки меню и слово Выход – в третий..

5. Поместить на форму таблицу StringGrid1 типа TStringGrid.

- На вкладке Additional щелкнуть на кнопке StringGrid, а затем – на форме. Заполнить таблицей всю клиентскую область формы, выбрав в Object Inspector для свойства Align таблицы StringGrid1 значение alClient.

- Опробоваь, удалить ошибки.


6. Создать обработчик создания формы.

- Щелкнуть на свободном месте формы, в окне Object Inspector активизировать вкладку Events и в правой части строки OnCreate сделать двойной щелчок.

- Заполнить шаблон обработчика так:

procedure TForm1.FormCreate(Sender: TObject);

begin //обработчик создания формы

//задать число строк и столбцов

StringGrid1.RowCount:=13;

StringGrid1.ColCount:=4;

//разрешить редактирование текста в ячейках

StringGrid1.Options:=StringGrid1.Options+[goEditing];

//зафиксировать верхнюю строку таблицы

StringGrid1.FixedRows:=1;

//не фиксировать столбцы таблицы

StringGrid1.FixedCols:=0;

//озаглавить столбцы таблицы

StringGrid1.Cells[0,0]:='Город';

StringGrid1.Cells[1,0]:='Телефон';

StringGrid1.Cells[2,0]:='Код города';

StringGrid1.Cells[3,0]:='Добавочный';

end;

- Опробоваь, удалить ошибки.

7. Создать обработчик пункта меню «Очистить».

- Щелкнуть дважды на узле Очистить в окне Structure.

- Заполнить шаблон обработчика так:

procedure TForm1.N2Click(Sender: TObject);

var i,j:integer;

begin //обработчик пункта меню «Очистить»

for i:=1 to 12 do

for j:=0 to 4 do

StringGrid1.Cells[j,i]:='';

end;

- Опробоваь, удалить ошибки.

8. Создать обработчик пункта меню «Выход».

- Щелкнуть дважды на узле «Выход» в окне Structure.

- Поместить в шаблон обработчика оператор Close.

- Опробоваь, удалить ошибки.

9. Создать обработчик пункта меню «Создать1».

- Щелкнуть дважды на узле Создать1 в окне Structure.

- Заполнить шаблон обработчика так:

procedure TForm1.N11Click(Sender: TObject);

var i:integer;

begin //обработчик пункта меню «Создать1»

AssignFile(f1,'D:\temp\Группа Фамилия\Города.tel');

Rewrite(f1);

for i:=1 to 12 do

Write(f1,M[i]);

CloseFile(f1);

end;

- Опробоваь, удалить ошибки.

10. Создать обработчик пункта меню «Открыть1».

- Щелкнуть дважды на узле Открыть1 в окне Structure.

- Заполнить шаблон обработчика так:

procedure TForm1.N12Click(Sender: TObject);

var i:integer;

begin //обработчик пункта меню «Открыть1»

Form1.N2Click(self);//очистить таблицу

AssignFile(f1,'D:\temp\Группа Фамилия\Города.tel');

Reset(f1);

for i:=1 to 12 do

begin

Read(f1,z);

StringGrid1.Cells[0,i]:=z.Gorod;

StringGrid1.Cells[1,i]:=z.Telefon;

StringGrid1.Cells[2,i]:=z.Kod;

StringGrid1.Cells[3,i]:=z.Dob;

end;

CloseFile(f1);

end;

- Опробоваь, удалить ошибки.

11. Создать обработчик пункта меню «Создать 2».

- Щелкнуть дважды на узле Создать2 в окне Structure.

- Заполнить шаблон обработчика так:

procedure TForm1.N21Click(Sender: TObject);

var i:integer;

begin //обработчик пункта меню «Создать 2»

Form1.N2Click(self);//очистить таблицу

AssignFile(f1,'D:\temp\Группа Фамилия\Города.tel');

Reset(f1);

AssignFile(f2,'D:\temp\Группа Фамилия\Москва.tel');

Rewrite(f2);

i:=0;

While not Eof(f1) do

begin

Read(f1,z);

if z.Gorod = 'Москва' then

Write(f2,z);

end;

CloseFile(f1);

CloseFile(f2);

end;

- Опробоваь, удалить ошибки.

12. Создать обработчик пункта меню «Открыть 2».

- Выполнить подобно обработчику пункта меню «Открыть 1».

- Опробоваь, удалить ошибки.

13. Создать обработчик пункта меню «Упорядочить 1».

- Щелкнуть дважды на узле «Упорядочить 1» в окне Structure.

- Заполнить шаблон обработчика так:

procedure TForm1.N13Click(Sender: TObject);

var i,k:integer; p:tz;

begin //обработчик пункта меню «Упорядочить 1»

AssignFile(f1,'D:\temp\Группа Фамилия\Города.tel');

Reset(f1);

for i:=1 to FileSize(f1)-1 do

begin

k:=0;

while k

begin

Seek(f1,k);

Read(f1,z,p);

if p.Kod

begin

Seek(f1,k);

Write(f1,p);

Write(f1,z);

end;//if

k:=k+1;

end;//while

end;//for

CloseFile(f1);

end;


Случайные файлы

Файл
141445.rtf
240-1981.DOC
165967.rtf
TDP.DOC
referat.DOC




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.