Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа- Изучение работы с файлами на языке Delphi.html

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

Министерство образования и науки Российской Федерации

Курский государственный технический университет

Кафедра ПО ВТ

Изучение работы с файлами на языке Delphi

Выполнил: студент гр. ПО 62                                         Шиляков И.А.

Проверил: ст. преподаватель                                          Петрик Е.А.   

Курск

2006


Цель:
 

Изучение принципов работы с файлами на языке Delphi, получение навыков программирования с использованием файлов.

Задание:

Создать каталог продуктов.

Окно программы:

Используемые компоненты:

Имя компонента

Страница палитры компонентов

Настраиваемые компоненты

Значения

1

2

3

4

5

1

Form1

-

Сaption

Лабораторная работа №10

Color

clMoneyGreen

2

Bitbtn1

Additional

Caption

Удалить по наименованию

3

Label1

Standard

Caption

Введите продукты и их стоимость

Color

clMoneyGreen

Color (Font)

clNavy

Size (Font)

12

Charset (Font)

DEFAULT_CHARSET

Height (Font)

-16


Продолжение таблицы

1

2

3

4

5

4

Label2

Standard

Caption

Общая сумма

Color

clMoneyGreen

Color (Font)

clNavy

Size (Font)

10

Charset (Font)

DEFAULT_CHARSET

Height (Font)

-13

5

Button1

Standard

Caption

Открыть

Charset

BALTIC_CHARSET

Height

-11

Size

8

6

Button2

Standard

Caption

Сохранить

Charset

BALTIC_CHARSET

Height

-11

Size

8

7

Button3

Standard

Caption

Расчет

Charset

DEFAULT_CHARSET

Height

-11

Size

8

Name

MS Sans Serif

8

Button4

Standard

Caption

Добавить строку

Charset

DEFAULT_CHARSET

Height

-11

Size

8

Name

MS Sans Serif

9

Button5

Standard

Caption

Поиск

Charset

DEFAULT_CHARSET

Height

-11

Size

8

Name

MS Sans Serif

10

Edit1

Standard

Text

tt.text

11

Edit2

Standard

Text

12

Edit3

Standard

Text

13

Edit4

Standard

Text

14

StringGrid1

Additional

FixesCols

0

FixesRows

1

RowCount

11

ColCount

16

Options

[goEditing, goTab]

FixedColor

clSkyBlue

Текст программы:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, Buttons;

type

s30=string[30];

P = record

tovar: string[30];

money: integer;

kol: integer;

itogo: integer;

end;

TForm1 = class(TForm)

StringGrid1: TStringGrid;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Label1: TLabel;

Button3: TButton;

Edit2: TEdit;

Label2: TLabel;

BitBtn1: TBitBtn;

Edit3: TEdit;

Button4: TButton;

Button5: TButton;

Edit4: TEdit;

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

function poisk(istochnik,chto:s30):boolean;

var i,k:integer;

procedure poisk2(B,M:s30);

var k:integer; b1:boolean;

begin

i:=0;

while length(b)>=length(m)+i do

begin

b1:=true;

for k:=1 to length(m) do begin

if m[k]=b[k+i] then else b1:=false;

end;

if b1=true then begin poisk:=b1; exit; end; i:=i+1;

end;

end;

begin

if length(istochnik)>=length(chto) then

poisk2(istochnik,chto)

else

poisk2(chto,istochnik);

end;

procedure TForm1.Button2Click(Sender: TObject);

var i:integer; s:string; z:p;

f: file of p;

begin

s:=edit1.Text;

system.Assign(f,s);  // íàçíà÷àåòñÿ èìÿ ôàéëîâîé ïåðåìåííîé

rewrite(f);          // ñîäàíèå ïóñòîãî ôàéëà, óêàçàòåëü óñòàí. íà íóëåâîé ýë-ò

for i:=1 to stringgrid1.RowCount do if (stringgrid1.Cells[0,i]<>'') then

begin

z.tovar:=stringgrid1.cells[0,i];

z.money:=strtoint(stringgrid1.cells[1,i]);

z.kol:=strtoint(stringgrid1.cells[2,i]);

write(f,z);           // çàïèñü â ôàéë f çàïèñè z

end;

system.close(f);

end;

procedure TForm1.Button1Click(Sender: TObject);

var i:integer; z:p;

f: file of p;

begin

i:=1;

system.Assign(f,edit1.Text);

reset(f);               // îòêðûòü ôàéë

while not eof(f) do

begin

read(f,z);

stringgrid1.cells[0,i]:=z.tovar;

stringgrid1.cells[1,i]:=inttostr(z.money);

stringgrid1.cells[2,i]:=inttostr(z.kol);

stringgrid1.RowCount:=i+1;

i:=i+1;

end;

system.close(f);

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

stringgrid1.Cells[0,0]:='Òîâàð';

stringgrid1.Cells[1,0]:='Ñòîèìîñü';

stringgrid1.Cells[2,0]:='Êîë-âî';

stringgrid1.Cells[3,0]:='Èòîãî';

end;

procedure TForm1.Button3Click(Sender: TObject);

Var i:integer;

begin

edit2.Text:='0';

for i:=1 to stringgrid1.RowCount-1 do

begin

stringgrid1.cells[3,i]:=Floattostr(strtoint(stringgrid1.Cells[1,i])*(strtoint(stringgrid1.Cells[2,i])));

edit2.Text:=floattostr(strtofloat(stringgrid1.cells[3,i])+strtofloat(edit2.text));

end;

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

var i,k:integer;

begin

i:=1;

repeat

if stringgrid1.Cells[0,i]=edit3.text then

begin

k:=i;

while k<stringgrid1.RowCount-1 do

begin

stringgrid1.Cells[0,k]:=stringgrid1.Cells[0,k+1];

stringgrid1.Cells[1,k]:=stringgrid1.Cells[1,k+1];

stringgrid1.Cells[2,k]:=stringgrid1.Cells[2,k+1];

stringgrid1.Cells[3,k]:=stringgrid1.Cells[3,k+1];

k:=k+1;

end;

stringgrid1.RowCount:=stringgrid1.RowCount-1;

end;

i:=i+1;

until stringgrid1.RowCount-1<i;

end;

procedure TForm1.Button4Click(Sender: TObject);

var i:integer;

begin

stringgrid1.RowCount:=stringgrid1.RowCount+1;

for i:=0 to 4 do

stringgrid1.cells[i,stringgrid1.RowCount-1]:='';

end;

procedure TForm1.Button5Click(Sender: TObject);

var i:integer; z:p;

f: file of p;

begin

system.Assign(f,edit1.Text);

reset(f);                         // îòêðûòü ôàéë

stringgrid1.RowCount:=2;

stringgrid1.Cells[0,1]:='Íå íàéäåíî';

for i:=1 to 3 do

stringgrid1.Cells[i,1]:='';

i:=1;

while (not eof(f)) and (edit4.text<>'') do

begin

read(f,z);

if poisk(AnsiUpperCase(z.tovar),AnsiUpperCase(edit4.text)) then

begin

stringgrid1.cells[0,i]:=z.tovar;

stringgrid1.cells[1,i]:=inttostr(z.money);

stringgrid1.cells[2,i]:=inttostr(z.kol);

stringgrid1.RowCount:=i+1;

i:=i+1;

end;

end;

system.close(f);

end;

end.

Тестирование:




1. Психологическая характеристика детских страхов
2. ru Все книги автора Эта же книга в других форматах Приятного чтения Crlos Fuentes Din O L Czdor Solitri
3. я- противопожарные разрывы
4. А каким собственно образом многообещающий геолог по институтскому образованию резко поменял поле деяте
5. Лекция 1 Введение- основы археологии и история первобытнообщинного общества
6. Введение 3 Место и роль основных показателей национальной экономики
7. Жалпы медицина курс 2 кафедраны~ атауы Жалпы ж~не биологиялы~ химия 1
8. Финансы и кредит ФИНАНСЫ ОРГАНИЗАЦИЙ ПРЕДПРИЯТИЙ Методические указания для
9. Тема- Методы защиты информации от несанкционированного доступа Выполнил- студент груп
10. измерительный материал 1 Понятие и характеристика правовой нормы
11. плексы географические ландшафты
12. Металлургиялы~ процестерді~ теориясы п~ні бойынша тест с~ра~тары 5В070900 Металлургия маманды~ы студе
13. Роль внешней торговли в международной экономике Международная внешняя торговля древняя и традиционная
14. Тема занятия Цели Профилактика дислексии и дисграфии Сентябрь
15. Оптические приборы
16. 1Госпрозрахунок- метод господарювання основними принципами якого є поєднання централізованого планового к
17. Пояснительная записка Курс банковское дело является основным входит в цикл дисциплин для специальност
18. Благодаря гражданскому обществу выражаются и реализуются частные интересы и потребности в то же время как
19. Изменение климата- перестройка или катастрофа
20. Введение; Аналитическая часть Описание и постановка задачи Назначение и цель создания.html