
Заключение
В результате выполнения курсовой работы по дисциплине «Объектно-ориентированный анализ и программирование», я освоила язык программирования 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 Текстпрограммы
programProjectZadania;
uses
Forms,
MainUnit in 'MainUnit.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
unitMainUnit;
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;
LabelX3: TLabel;
LabelN: TLabel;
LabelRez3: TLabel;
EditX3: TEdit;
EditN: TEdit;
EditRez3: TEdit;
ButtonRez3: TButton;
Zadanie4: TTabSheet;
ButtonRez4: TButton;
Memo1: TMemo;
Zadanie5: TTabSheet;
LabelStrok: TLabel;
LabelStolb: TLabel;
EditM: TEdit;
EditW: TEdit;
StringGrid1: TStringGrid;
StringGrid2: TStringGrid;
ButtonRez5: TButton;
LabelX5: TLabel;
EditX5: TEdit;
EditRez4: TEdit;
procedure ButtonRez1Click(Sender: TObject);
procedure ButtonRez2Click(Sender: TObject);
procedure ButtonRez3Click(Sender: TObject);
procedure ButtonRez4Click(Sender: TObject);
procedure ButtonRez5Click(Sender: TObject);
procedureEditMChange(Sender: TObject);
procedureEditWChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ButtonRez1Click(Sender: TObject);
begin
if EditX1.Text=''
thenShowMessage ('Укажите X')
else
if (StrToFloat(EditX1.Text))>1
thenShowMessage ('Sin(X)>1')
else
if (StrToFloat(EditX1.Text))<-1
thenShowMessage ('Sin(X)<-1')
else
EditRez1.Text:=FloatToStr(Sqr(Sin(StrToFloat(EditX1.Text)))+
Exp(Exp(5*Ln(Abs(Sqr(StrToFloat(EditX1.Text))+1))))-
Ln(Sqr(StrToFloat(EditX1.Text))+1))
end;
procedure TForm1.ButtonRez2Click(Sender: TObject);
const e=2.7;
begin
if EditX2.Text=''
thenShowMessage ('Укажите X')
else
if (StrToFloat(EditX2.Text))<-1
thenShowMessage ('Sin(X) и Cos(X)<-1')
else
if (StrToFloat(EditX2.Text))<0
thenShowMessage ('Логарифмическаяошибка')
else
EditRez2.Text:=FloatToStr(Ln(Sqrt(Sin(StrToFloat(EditX2.Text))/
5*(StrToFloat(EditX2.Text))+4))-Exp((0.5/(StrToFloat(EditX2.Text)))*
Ln(e))+Sqrt(Sin((StrToFloat(EditX2.Text))/
(Sqr(StrToFloat(EditX2.Text))+1))))
end;
procedure TForm1.ButtonRez3Click(Sender: TObject);
varS,y:Real;
i:Integer;
begin
S:=0;
y:=0;
if EditX3.Text=''
thenShowMessage ('Укажите X')
else
if EditN.Text=''
thenShowMessage ('Укажите N')
else
for i:=0 to StrToInt(EditN.Text)-1 do
begin
y:=(1/Exp(i*Ln(StrToFloat(EditX3.Text))));
S:=(S)+(y);
end;
EditRez3.Text:=FloatToStr(S)
end;
procedure TForm1.ButtonRez4Click(Sender: TObject);
var i:Integer;
k,s:Real;
begin
if Memo1.Lines.Count=0
thenShowMessage ('Укажитемассив')
else
s:=0;
k:=0;
for i:=1 to Memo1.Lines.Count-1 do
ifStrToFloat(Memo1.Lines.Strings[i])>0 then
begin
k:=k+StrToFloat(Memo1.Lines.Strings[i])
end;
i:=i+2;
s:=k/2;
EditRez4.Text:=FloatToStr(s)
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);
vari,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
thenshowmessage('Матрица не квадратная!!!')
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.