Автор работы: Пользователь скрыл имя, 24 Апреля 2013 в 15:13, курсовая работа
Цель исследования – реализация программы на BorlandDelphi для чтения информации из файла и последующей ее обработки по заданным критериям
Для достижения названной цели в исследовании необходимо решить следующие задачи:
- осуществить постановку задач;
- создать блок-схемы алгоритмов;
- осуществить описание объектов, свойств, методов;
- разработать формы и представить текст программ;
- привести результаты тестирования программного продукта.
Введение…………………………………………………………………….6
1. Теоретическая часть……………………………………………………..8
1.1 Постановка задачи…………………………………………………..8
1.2 Алгоритм решения задачи………………………………………….8
1.3 Блок-схема алгоритма………………………………………………9
2. Практическая часть…………………………………………………….10
2.1 Описание объектов, свойств и методов……………………….....10
2.2 Формы и основные модули текста программы в среде Delphi...13
2.3 Результат тестирования программного продукта……………….17
2.4 Графическое представление результатов………………………..18
2.5 Анализ полученных результатов……………………………….. 21
Заключение………………………………………………………………..22
Список использованных источников……
for a:= #224 to #255 do begin
c[i]:=a; i:=i+1;end; // сортировка
for v:= 1 to 31 do begin
for x:= 1 to 31 do begin
for i:= 1 to n do begin
if (gruppa[i].fam[1]=b[v]) and (gruppa[i].fam[2]=c[x]) then
memo1.Lines.Add(gruppa[i].fam+
end; end; end;
end;
Кнопке «Игроки с данными критериями» сопоставим следующий программный код:
procedure TForm1.Button1Click(Sender: TObject);
begin
// добавление в список студентов
gruppa[i].fam:=Edit1.text;
gruppa[i].im:=Edit2.text;
gruppa[i].otch:=Edit3.text;
gruppa[i].adr:=Edit4.text;
gruppa[i].mark1:=strtoint(
gruppa[i].mark2:=strtoint(
gruppa[i].mark3:=strtoint(
if (gruppa[i].mark3>10) or (gruppa[i].mark2>10) or (gruppa[i].mark1>10) then
MessageDlg('
gruppa[i].marksr:=(gruppa[i].
memo1.Lines.Add(inttostr(i)+')
;edit1.clear; edit2.clear; edit3.clear; edit4.clear;
edit5.clear; edit6.clear; edit7.clear; end;
i:=i+1;n:=n+1;
end;
После создания приложения приступим к его тестированию.
Для решения задачи нами были введены следующие данные, представленные на рисунке 2.6
Рисунок 2.6 – Введенные данные
Запустим сортировку введенных данных.
Рисунок 2.7 – Вид программы после сортировки абитуриентов по фамилии
Найдем абитуриента проживающего в городе Брест.
Рисунок 2.8 – Информация об абитуриентахнайденных по критериям
Результаты отбора отображают информацию,
соответствующую выбранным
Результаты работы выводятся в информационное окно в правой части формы. Выводимая информация зависит от пользовательского запроса. Приведем примеры запросов и их обработка на рисунках 2.9 – 2.13.
Рисунок 2.9 – Начальное окно программы
Рисунок 2.10 – Заполненная программа
Рисунок 2.11 – Отсортированные данные
Рисунок 2.12 – Найденные данные
Рисунок 2.13 – Сохранение файла с информацией об абитуриентах
Анализируя полученные при выполнении
программы результаты, приходим к
выводу, что они точно и полностью
соответствуют указанным
В результате выполнения данной курсовой работы была изучена работа с формами и окнами в приложении Delphi.
Созданы формы для ввода данных и вывода полученных результатов для поставленного задания.
При выполнении
заданий данной курсовой работы были
получены представления о возможностях
интегрированной среды
Для работы с программами созданы формы, на которых размещены поля для ввода и вывода информации, кнопки для расчета выходных данных программы.
При выполнении курсовой работы:
Полученная нами программа способна сортировать данные о игроках, выводить их по указанным параметрам и сохранять в файл.
Знания, полученные в результате работы над курсовым проектом, позволят в дальнейшем использовать Delphi для решения технических задач.
Листингпрограммы
unitUnit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Dialogs, StdCtrls,
Controls, Classes;
type
students=record
fam:string[20];
im:string[20];
otch:string[20];
adr:string[25];
mark1:1..10;
mark2:1..10;
mark3:1..10;
marksr:real;
end;
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
Button4: TButton;
Button3: TButton;
SaveDialog1: TSaveDialog;
Button5: TButton;
Edit8: TEdit;
procedure Button4Click(Sender: TObject);
procedureFormCreate(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1; gruppa:array [1..1000] of students; n,i,k:integer; b:boolean;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
// добавление в список студентов
gruppa[i].fam:=Edit1.text;
gruppa[i].im:=Edit2.text;
gruppa[i].otch:=Edit3.text;
gruppa[i].adr:=Edit4.text;
gruppa[i].mark1:=strtoint(
gruppa[i].mark2:=strtoint(
gruppa[i].mark3:=strtoint(
if (gruppa[i].mark3>10) or (gruppa[i].mark2>10) or (gruppa[i].mark1>10) then
MessageDlg('
gruppa[i].marksr:=(gruppa[i].
memo1.Lines.Add(inttostr(i)+')
;edit1.clear; edit2.clear; edit3.clear; edit4.clear;
edit5.clear; edit6.clear; edit7.clear; end;
i:=i+1;n:=n+1;
end;
procedure TForm1.Button2Click(Sender: TObject);
var a:char; b:array [1..31] of string; c:array[1..31] of string; d:array [1..100000] of string;
v,x:integer;
begin
memo1.Lines.Add('результат сортировки по фамилии таковы :');
i:=1; //b - большие буквы , с- маленькие
for a:= #192 to #223 do begin
b[i]:=a; i:=i+1;end; i:=1;
for a:= #224 to #255 do begin
c[i]:=a; i:=i+1;end; // сортировка
for v:= 1 to 31 do begin
for x:= 1 to 31 do begin
for i:= 1 to n do begin
if (gruppa[i].fam[1]=b[v]) and (gruppa[i].fam[2]=c[x]) then
memo1.Lines.Add(gruppa[i].fam+
end; end; end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
// сохранение
if SaveDialog1.Execute then
memo1.Lines.SaveToFile(
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
form1.Close;
end;
procedure TForm1.Button5Click(Sender: TObject);
var x:string;
begin
// в городе X
x:=edit8.Text;
fori := 1 to n do
ifgruppa[i].adr=x then
memo1.Lines.Add(gruppa[i].fam+
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
// создание формы
memo1.Clear;
memo1.Lines.Add('список студентов таков :');
i:=1; n:=0;
end;
end.