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

Заключение

В результате выполнения курсовой работы по дисциплине «Объектно-ориентированный анализ и программирование», я освоила язык программирования 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. Шпак Ю.А. «TurboPascal 7.0 на примерах» // Издательство "Юниор", 2003, 498 с.

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

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

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

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

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

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

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

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

  18. Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Самоучитель по программированию на FreePascal и 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;

EditN: TEdit;

EditRez3: TEdit;

ButtonRez3: TButton;

Zadanie4: TTabSheet;

ButtonRez4: TButton;

Memo1: TMemo;

Zadanie5: TTabSheet;

LabelStrok: TLabel;

LabelStolb: TLabel;

LabelX5: TLabel;

EditM: TEdit;

EditW: TEdit;

StringGrid1: TStringGrid;

StringGrid2: TStringGrid;

ButtonRez5: TButton;

EditX5: TEdit;

Memo2: TMemo;

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)>1')

else

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

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

else

EditRez1.Text:=FloatToStr((Sin(StrToFloat(EditX1.Text)+1)/

Cos(strtofloat(EditX1.Text)+1))+Exp(strtofloat(EditX1.Text)+1)

+Ln(Sqr(strtofloat(EditX1.Text))+2))

end;

procedure TForm1.ButtonRez2Click(Sender: TObject);

const y=10;

begin

if EditX2.Text=' '

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

else

if (StrToFloat(EditX2.Text))<0

then ShowMessage ('Логарифмическая ошибка')

else

EditRez2.Text:=FloatToStr(Ln(Sqrt((y-sqrt(StrToFloat(EditX2.Text)))*

(StrToFloat(EditX2.Text)-(y/(y+sqr(StrToFloat(EditX2.Text))))))))

end;

procedure TForm1.ButtonRez3Click(Sender: TObject);

var S,y:Real;

i:Integer;

begin

S:=0;

y:=0;

if EditN.Text=' '

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

else

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

begin

y:=(((i+1)+i)/(i+1));

S:=(S)+(y);

end;

EditRez3.Text:=FloatToStr(S)

end;

procedure TForm1.ButtonRez4Click(Sender: TObject);

var i,j:Integer;

begin

if Memo1.Lines.Count=0

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

else

Memo2.Lines.Clear;

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

begin

Memo2.Lines.Add('0');

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

begin

Memo2.Lines.Strings[i]:=FloatToStr((StrToFloat(Memo2.Lines.Strings[i])

+StrToFloat(Memo1.Lines.Strings[i+j]))/4)

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 i,j,z:Integer;

begin

if EditM.Text=' '

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

else

if EditW.Text=' '

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

else

if EditX5.Text=' '

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

else

if StringGrid1.RowCount<>StringGrid1.ColCount

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

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

begin

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

begin

if StringGrid1.Cells[i,j]>EditX5.Text

then

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

else

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

end;

end;

end;

end.