Заключение
В результате выполнения курсовой работы по дисциплине «Объектно-ориентированный анализ и программирование», я освоила язык программирования Delphi, в виде составления и написания программ. Приобрела навыки решения прикладных задач, а так же навыки разработки и отладки программ в современных системах программирования. Пользуясь литературой, я углубленно изучила материал по программированию. Я узнала такие объекты как: «Edit» - объект ввода и вывода данных, «Button» - объект для реализации в программе команд, «StringGrid» - объект для отображения различных данных в табличной форме, «Label» - объект для отображения надписей и меток на форме, которые не меняются в течение всего времени работы программы и «Memo» - текстовый редактор. В итоге всего мной изученного, я могу сказать что дисциплина «Объектно-ориентированный анализ и программирование» не легка, но очень интересна и пригодиться, для дальнейшей работы по направлению «Бизнес-инфоматика».
Список используемой литературы
http://www.tadviser.ru/index.php/- TAdviser – портал выбора технологий и поставщиков
http://nad-vasiluk.narod.ru/met_prog.htm- Методы и технологии программирования
http://pas1.ru/-Язык Pascal. Программирование для начинающих
В.В.Фаронов «Турбо Паскаль Начальный курс Учебное пособие»// Издательство «ОМД Групп» 2003, 579 стр.
Брантд З. «Анализ данных. Статистические и вычислительные методы для научных работников и инженеров» // АСТ МИР, 2008, 688стр.
Кулаичев А.П. «Методы и средства комплексного анализа данных» // Инфра-М, 2011. 512стр.
Владимир Попов. «Паскаль и Дельфи. Самоучитель.» // Питер, 2003 г., 544 с.
Потопахин В.В. «TurboPascal: решение сложных задач.» // Издательство "БХВ-Петербург", 2006, 208 с.
Шпак Ю.А. «TurboPascal 7.0 на примерах» // Издательство "Юниор", 2003, 498 с.
Рапаков Г.Г., Ржеуцкая С.Ю. «TurboPascal для студентов и школьников.» // СПб.: БХВ-Петербург, 2004.
Каплан В.Е. и др. «Статистическая обработка и анализ экономических данных» // Феникс, 2007. 336стр.
Тюрин Ю.Н. «Анализ данных на компьютере» // Форум, 2010. 368стр.
Гмурман В.Е. «Теория вероятностей и математическая статистика» // М.: Высшая школа, 2009. 479стр.
Павловская Т.А. «Паскаль. Программирование на языке высокого уровня: Учебник для вузов.» // СПб.: Питер, 2007. – 293 с.
Бугров Я.С., Никольский С.М. Высшая математика: В 3-х т.М: Дрофа,2005.
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. FreePascal и Lazarus. Учебник по программированию. – М.: ALT Linux: Издательский дом ДМК-пресс, 2010. – 440 с.
Мельников С.В. Delphi и TurboPascal на занимательных примерах. – СПб.: БХВ-Петербург, 2006. – 448 с.
Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Самоучитель по программированию на FreePascal и Lazarus. – М.: ALT Linux: Издательский дом ДМК-пресс, 2011. – 503 с.
Рубанцев В. Большой самоучитель 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.