Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Демкин курсовая.doc
Скачиваний:
12
Добавлен:
15.03.2016
Размер:
436.74 Кб
Скачать

Заключение

В результате выполнения курсовой работы по дисциплине «Объектно-ориентированный анализ и программирование», я освоила язык программирования Delphi, в виде составления и написания программ. Приобрела навыки решения прикладных задач, а так же навыки разработки и отладки программ в современных системах программирования. Пользуясь литературой, я углубленно изучила материал по программированию. Я узнала такие объекты как: «Edit»- объект ввода и вывода данных, «Button» - объект для реализации в программе команд, «StringGrid»-объект для отображения различных данных в табличной форме, «Label»-объект для отображения надписей и меток на форме, которые не меняются в течение всего времени работы программы и «Memo»-текстовый редактор. В итоге всего мной изученного, я могу сказать что дисциплина «Объектно-ориентированный анализ и программирование» не легка, но очень интересна и пригодиться, для дальнейшей работы по направлению «Бизнес-инфоматика».

Список используемой литературы

  1. http://www.tadviser.ru/index.php/- TAdviser – портал выбора технологий и поставщиков

  2. http://nad-vasiluk.narod.ru/met_prog.htm- Методы и технологии программирования

  3. http://pas1.ru/-Язык Pascal. Программирование для начинающих

  4. В.В.Фаронов «Турбо Паскаль Начальный курс Учебное пособие»// Издательство «ОМД Групп» 2003, 579 стр.

  5. Брантд З. «Анализ данных. Статистические и вычислительные методы для научных работников и инженеров» // АСТ МИР, 2008, 688стр.

  6. Кулаичев А.П. «Методы и средства комплексного анализа данных» // Инфра-М, 2011. 512стр.

  7. Владимир Попов. «Паскаль и Дельфи. Самоучитель.» // Питер, 2003 г., 544 с.

  8. Потопахин В.В. «TurboPascal: решение сложных задач.» // Издательство "БХВ-Петербург", 2006, 208 с.

  9. Шпак Ю.А. «Turbo Pascal 7.0 на примерах» // Издательство "Юниор", 2003, 498 с.

  10. Рапаков Г.Г., Ржеуцкая С.Ю. «Turbo Pascal для студентов и школьников.» // СПб.: БХВ-Петербург, 2004.

  11. Каплан В.Е. и др. «Статистическая обработка и анализ экономических данных» // Феникс, 2007. 336стр.

  12. Тюрин Ю.Н. «Анализ данных на компьютере» // Форум, 2010. 368стр.

  13. Гмурман В.Е. «Теория вероятностей и математическая статистика» // М.: Высшая школа, 2009. 479стр.

  14. Павловская Т.А. «Паскаль. Программирование на языке высо­кого уровня: Учебник для вузов.» // СПб.: Питер, 2007. – 293 с.

  15. Бугров Я.С., Никольский С.М. Высшая математика: В 3-х т.М: Дрофа,2005.

  16. Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Free Pascal и Lazarus. Учебник по программированию. – М.: ALT Linux: Издательский дом ДМК-пресс, 2010. – 440 с.

  17. Мельников С.В. Delphi и Turbo Pascal на занимательных примерах. – СПб.: БХВ-Петербург, 2006. – 448 с.

  18. Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Самоучитель по программированию на Free Pascal и Lazarus. – М.: ALT Linux: Издательский дом ДМК-пресс, 2011. – 503 с.

  19. Рубанцев В. Большой самоучитель Delphi XE3. – 2013.

Приложение 1 Текстпрограммы

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run;

end.

unit Unit1;

interface

uses

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

Dialogs, Grids, StdCtrls, ComCtrls;

type

TForm1 = class(TForm)

PageControl1: TPageControl;

Zadanie1: TTabSheet;

LabelX1: TLabel;

LabelRez1: TLabel;

EditX1: TEdit;

EditRez1: TEdit;

ButtonRez1: TButton;

Zadanie2: TTabSheet;

LabelX2: TLabel;

LabelRez2: TLabel;

EditX2: TEdit;

EditRez2: TEdit;

ButtonRez2: TButton;

Zadanie3: TTabSheet;

LabelN: TLabel;

LabelRez3: TLabel;

LabelEps: TLabel;

EditN: TEdit;

EditRez3: TEdit;

ButtonRez3: TButton;

EditEps: TEdit;

Zadanie4: TTabSheet;

ButtonRez4: TButton;

Memo1: TMemo;

Zadanie5: TTabSheet;

LabelStrok: TLabel;

LabelStolb: TLabel;

EditM: TEdit;

EditW: TEdit;

StringGrid1: TStringGrid;

ButtonRez5: TButton;

Memo3: TMemo;

StringGrid2: TStringGrid;

procedure ButtonRez1Click(Sender: TObject);

procedure ButtonRez2Click(Sender: TObject);

procedure ButtonRez3Click(Sender: TObject);

procedure ButtonRez4Click(Sender: TObject);

procedure EditMChange(Sender: TObject);

procedure EditWChange(Sender: TObject);

procedure ButtonRez5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ButtonRez1Click(Sender: TObject);

begin

if EditX1.Text=''

then ShowMessage ('Укажите X')

else

if (StrToFloat(EditX1.Text))<-1

then ShowMessage ('Sin(X) и Cos(X)<-1')

else

if (StrToFloat(EditX1.Text))>1

then ShowMessage ('Sin(X) и Cos(X)>1')

else

EditRez1.Text:=FloatToStr((Cos(StrToFloat(EditX1.Text))/(Sqr(Sin

(StrToFloat(EditX1.Text)))+5))-exp(Exp(Sqr(StrToFloat(EditX1.Text))))

+4.48*exp((-1)*ln(10)))

end;

procedure TForm1.ButtonRez2Click(Sender: TObject);

const a=10;

begin

if EditX2.Text=''

then ShowMessage ('Укажите X')

else

if (StrToFloat(EditX2.Text))<-1

then ShowMessage ('Sin(X) и Cos(X)<-1')

else

if (StrToFloat(EditX2.Text))>1

then ShowMessage ('Sin(X) и Cos(X)>1')

else

EditRez2.Text:=FloatToStr((Sqrt(a*strtofloat(EditX2.Text))/

Sin(Ln(StrToFloat(EditX2.Text))))-(Sqrt(Cos(Sqr(

StrToFloat(EditX2.Text)))/sqr(StrToFloat(EditX2.Text)))))

end;

procedure TForm1.ButtonRez3Click(Sender: TObject);

var D,S:Real;

i:Integer;

begin

if EditEps.Text=''

then ShowMessage ('Укажите Eps')

else

if EditN.Text=''

then ShowMessage ('Укажите N')

else

if (StrToFloat(EditN.Text))<3

then ShowMessage ('Укажите N>3')

else

s:=0;

D:=0;

begin

for i:=1 to StrToInt(EditN.Text) do

begin

begin

D:=(1/i*(i-1));

S:=(S)+(D);

end;

end;

end;

EditRez3.Text:=FloatToStr(s)

end;

procedure TForm1.ButtonRez4Click(Sender: TObject);

var i,j:Integer;

z,k:Real;

begin

if Memo1.Lines.Count=0

then ShowMessage ('Укажите массив')

else

Memo3.Lines.Clear;

for i:=0 to Memo1.Lines.Count-1 do

begin

Memo3.Lines.Add('0');

for j:=0 to Memo1.Lines.Count-1-i do

begin

Memo3.Lines.Strings[i]:=FloatToStr(StrToFloat(Memo1.Lines.Strings[j]))

end;

end;

end;

procedure TForm1.EditMChange(Sender: TObject);

begin

if EditM.Text<>''

then

begin

StringGrid1.RowCount:=strtoint(EditM.Text);

StringGrid2.RowCount:=strtoint(EditM.Text);

end;

end;

procedure TForm1.EditWChange(Sender: TObject);

begin

if EditW.Text<>''

then

begin

StringGrid1.ColCount:=strtoint(EditW.Text);

StringGrid2.ColCount:=strtoint(EditW.Text);

end;

end;

procedure TForm1.ButtonRez5Click(Sender: TObject);

var z,i,j,imax,jmax:Integer;

m:Real;

begin

if EditM.Text=''

then ShowMessage ('Укажите количество строк')

else

if EditW.Text=''

then ShowMessage ('Укажите количество столбцов')

else

begin

z:=0;

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

begin

for j:=0 to stringgrid1.ColCount-1 do

begin

if StringGrid1.Cells[i,j]=''

then z:=1

end;

end;

end;

if z=1

then ShowMessage ('Введите числа матрицы')

else

begin

imax:=1;

jmax:=1;

m:=1;

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

begin

for j:=0 to stringgrid1.ColCount-1 do

begin

if StrToFloat(StringGrid1.Cells[i,j])>StrToFloat(StringGrid1.Cells[imax,jmax])

then

imax:=i;

jmax:=j;

end;

end;

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

begin

for j:=0 to stringgrid1.ColCount-1 do

begin

m:=StrToFloat(StringGrid1.cells[i,j])*m;

end;

end;

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

begin

for j:=0 to stringgrid1.ColCount-1 do

begin

if StrToFloat(StringGrid1.Cells[i,j])>StrToFloat(

StringGrid1.Cells[imax,jmax])

then

StringGrid2.Cells[i,j]:=FloatToStr(m)

else

StringGrid2.Cells[i,j]:=StringGrid1.Cells[i,j]

end;

end;

end;

end;

end.

29