- •Оглавление
- •Введение
- •1 Теоретическая часть
- •2 Практическая часть
- •2.1 Описание объектов, свойств, методов
- •2.2 Формы и основные модули текста программы в среде Delphi
- •2.3 Результаты тестирования программного продукта
- •2.4 Графическое представление результатов
- •2.5 Анализ результатов
- •Заключение
- •Список использованных источников
Список использованных источников
1. Архангельский, А.Я. Программирование в Delphi 7 / А.Я.Архангельский. - М.: ЗАО «Издательство БИНОМ», 2003.-412с.
2. Бронштейн, И.Н. Справочник по высшей математике для инженеров и учащихся втузов / И.Н. Бронштейн. – М.: Наука , 1981г.- 850с.
3. Волосевич, А.А. Язык Object Pascal и Система программирования в Delphi: учебное пособие / А.А. Волосевич. - Мн.: БГУИР, 2003. – 60 с.
4. Культин, Н.Б. Основы программирования в среде Delphi 7: учебное пособие / Н.Б. Культин. – БХВ-Петербург, 2003.- 608 с.
5. Немнюгин, С.А. Turbo Pascal. 2–е изание / С.А.Немнюгин. – Минск, 2004г.-877с.
6. Фаронов, В.В. Delphi. Программирование на языке высокого уровня: Учебник для вузов / В.В. Фаронов. - Питер, 2006. – 640 с.
7. Эбнер, М.М. Delphi 5. Руководство разработчика: Пер. с нем / М.М.Эбнер.-К.: Издательская группа BHV, 2003. – 480 с., ил.
ПРИЛОЖЕНИЕ А
Исходный код программы представлен ниже:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
Memo2: TMemo;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
Button2: TButton;
Button4: TButton;
Label5: TLabel;
Button3: TButton;
Label1: TLabel;
N2: TMenuItem;
procedure N3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.N3Click(Sender: TObject);
begin
if MessageDlg('Вы точно хотите выйти ?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then Application.Terminate;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if MessageDlg('Открыть файл ?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
if OpenDialog1.Execute then Memo1.Lines.LoadFromFile(OpenDialog1.FileName+opendialog1.Filter);
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
memo1.Clear;
memo2.Clear;
end;
procedure TForm1.Button4Click(Sender: TObject);
var
text:string;
arr_word:array[0..1000] of integer;
arr_punkt:array[0..1000] of integer;
arr_slog:array[0..1000] of double;
arr_max:array[0..1000] of char;
start:array[0..1000] of integer;
result,k,col_w,col_p:integer;
str:string;
n,j,predl,nomer,finish,nom:integer;
buf:double;
i : LongWord;
begin
n:=0;
predl:=-1;
col_w:=-1;
col_p:=-1;
Text:=memo1.Text;
for i:=1 to length(Text) do
if (Text[i]='/')
then
n:=i;
result:=0;
memo2.Text:=memo1.Text;
for i:=1 to n do
begin
if (Text[i]=' ') then
begin
inc(result);
if ((text[i-1]='.') or (text[i-1]='?') or (text[i-1]='!') or (text[i-1]=';')) then
begin
inc(col_w);
arr_word[col_w]:=result;
start[col_w]:=i+1;
result:=0;
inc(predl);
end;
end;
end;
result:=0;
for i:=0 to n do
begin
if ((Text[i]=',') or (Text[i]=':') or(Text[i]='-') or (Text[i]='"')) then
inc(result);
if ((text[i]='.') or (text[i]='?') or (text[i]='!') or (text[i]=';')) then
begin
inc(col_p);
arr_punkt[col_p]:=result;
result:=0;
end;
end;
for i:=0 to predl do
begin
arr_slog[i]:=arr_punkt[i]+arr_word[i];
memo2.Lines.Add('¹'+inttostr(i+1)+': кол-во слов: '+inttostr(arr_word[i])+', кол-во знаков: '+inttostr(arr_punkt[i])+', сложность: '+floattostr(arr_slog[i]));
end;
buf:=0;
for i:=0 to predl do
buf:=buf+arr_slog[i];
buf:=buf/(predl+1);
memo2.Lines.Add('Средняя сложность по предложениям: '+floattostr(buf));
buf:=0;
for i:=0 to predl do
begin
if (buf<arr_slog[i]) then
begin
buf:=arr_slog[i];
nomer:=i;
end;
end;
nom:=0;
for j:=0 to predl do
begin
if(j=nomer-1) then
begin
for i:=start[j] to n do
if (text[i]<>'.') then
begin
arr_max[nom]:=text[i];
inc(nom);
end else if (text[i]='.') then break;
end;
end;
for i:=0 to nom do
str:=str+arr_max[i];
memo2.Lines.Add('Максимальная сложность предложения: '+floattostr(buf)+' = '+str);
if MessageDlg('Сохранить результаты ?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then
if savedialog1.Execute then memo2.Lines.SaveToFile(savedialog1.Filename+savedialog1.Filter);
end;
procedure TForm1.N2Click(Sender: TObject);
begin
form2.show;
end;
end.