82952

Эмуляция структуры объекта остовой кран

Курсовая

Информатика, кибернетика и программирование

Программирование одна из самых сложных наук, и объем информации, усваиваемой программистом очень сложно запомнить. Для помощи программистам создаются и разрабатываться приложения, ориентированные на задачи программистов.

Русский

2015-03-05

126.32 KB

2 чел.

Содержание

Введение………………………………………………………………………………...3

Структура………………………………………………………………………...4

Создание формы…………………………………………………………………5

Листинг кода……………………………………………………………………..6

Демонстрация работы программы…………………………………………….13

Заключение…………………………………………………………………………….15

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


Введение

В настоящее время проблема создания приложений и внедрение их в повседневную жизнь очень актуальна. Так, например, создание программ внесения оплаты за различные услуги через терминалы. В каждом офисе есть ПК со специальными приложениями для работы. С помощью приложений ведется производство сложной техники на предприятиях, автоматизация производств. Приложения используются в электро–технических приборах домашнего пользования: калькуляторы, стиральные машины, видеокамеры, фотоаппараты и др. Следовательно, для движения прогресса и внедрения, разработки новых технологий нужны программисты.

Программирование одна из самых сложных наук, и объем информации, усваиваемой программистом очень сложно запомнить. Для помощи программистам создаются и разрабатываться приложения, ориентированные на задачи программистов. Они помогают облегчить жизнь начинающему программисту и сэкономить время более опытному программисту; исключают поиск нужной справочной информации в интернете и библиотеках, обеспечивая нужными данными прямо на рабочем месте. Время - главный фактор в работе программиста, от которого зависит заработная плата. Иногда сроки на написание программы очень сжаты, и это не позволяет тратить много времени на поиск информации в книгах и справочниках. Можно использовать поиск в интернете, но еще более упрощает работу программиста справочное приложение. Так же, как и при помощи интернета, программист может найти информацию, не отходя от рабочего места. Преимущество приложения перед интернетом в том, что оно исключает «копание» по сайтам, попадание спама и вирусов в ПК. А попадания вирусов в компьютер может привести к самым нежелательным последствиям.

Тема моей курсовой работы: разработать структуру объекта “мостовой кран”. Она должна показывать работу мостового крана и принцип его работы.


Структура

Свойства

Методы

Платформа

Смещение

Крюк

Положение крюка

Захват

Сжатие расжатие

Свойство

Имя

Тип данных

Геттер

Сеттер

Платформа

Move

Integer

getmove

setmove

Крюк

Position

Integer

getposition

ssetposition

Захват

Capt

String

getcapt

setcapt

Метод

Имя

Параметры

Смещение

setmove

Newmove

Положение крюка

Setposition

Newposition

Сжатие расжатие

Setcapt

newcapt


Создание формы

На форму я поместил картинку с координатами для простоты ориентации в пространстве. Также поместил кнопки: поднять, опустить, влево, вправо, схватить, включить. И с помощью компонента image добавил картинки, которые по нажатию на кнопку “схватить” меняются между собой на форме (Рис.1).

Рис.1 Создание формы


Листинг кода

Код класса:

unit most;

interface

Type

TP=Procedure of object;

 TMost=class

Protected

m_move:Integer;    {смещение платформы}

m_position:integer;   {положение крюка}

m_Capt:string[10];      {захват}

 m_p:TP;

               function getMove:integer;

                 procedure setMove(newMove:integer);

               function getPosition:integer;

                 procedure setPosition(newPosition:integer);

               function getCapt:string;

                 procedure setCapt(newCapt:string);

 public

   constructor create(pp:TP);

     property move:integer Read getMove write setMove;

     property position:integer Read getPosition write setPosition;

     property capt:string read getCapt write setCapt;

 end;

implementation

uses classes;

 constructor TMost.create(pp:TP);

begin

m_move:=0;

m_position:=0;

m_capt:='отпущено';

m_p:=pp;

end;

function TMost.getMove:integer;

 begin

 result:=m_move;

 end;

procedure TMost.setMove(newMove:integer);

 begin

 if newMove<-10000 then

 m_move:=-10000

   else

     begin

     m_move:=newMove;

     m_p;

     end;

 if newMove>10000 then

 m_move:=10000

   else

     begin

     m_move:=newMove;

     m_p;

     end;

end;

function TMost.getPosition:integer;

   begin

   result:=m_position;

   end;

procedure TMost.setPosition(newPosition:integer);

 begin

 if newPosition>=0 then

 m_position:=0

   else begin

     m_position:=newPosition;

     m_p;

    end;

     if newPosition<-1000 then

     m_position:=-1000

       else begin

         m_position:=newPosition;

         m_p; end;

     end;

function TMost.getCapt:string;

 begin

 result:=m_capt;

 end;

procedure TMost.setCapt(newCapt:string);

 begin

m_capt:=newCapt;

m_p;

end;

 end.

Код программы:

unit Unit1;

interface

uses

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

 Dialogs, most, StdCtrls, jpeg, ExtCtrls;

type

 TForm1 = class(TForm)

   Image1: TImage;

   Label1: TLabel;

   Button1: TButton;

   Edit1: TEdit;

   Button2: TButton;

   Button3: TButton;

   Edit3: TEdit;

   Button4: TButton;

   Button5: TButton;

   Edit5: TEdit;

   Image2: TImage;

   Button6: TButton;

   procedure Button1Click(Sender: TObject);

   procedure Button2Click(Sender: TObject);

   procedure Button3Click(Sender: TObject);

   procedure Button4Click(Sender: TObject);

   procedure Button5Click(Sender: TObject);

   procedure Show;

   procedure FormCreate(Sender: TObject);

   procedure Button6Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

 Kran:TMost;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

kran:=tmost.create(show);

end;

procedure TForm1.Show;

begin

edit1.text:=IntToStr(Kran.move);

edit3.text:=IntToStr(Kran.position);

edit5.text:=Kran.Capt;

Application.ProcessMessages

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

kran.move:=kran.move-1;

image2.Left:=image2.Left-3;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Kran.move:=Kran.move+1;

image2.Left:=image2.left+3;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

Kran.position:=Kran.Position+1;

image2.top:=image2.top-3;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

Kran.Position:=Kran.Position-1;

image2.Top:=image2.Top+3;

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

if image2.Tag = 0 then

 begin

  image2.Picture.LoadFromFile('отпущено.bmp');

  image2.Tag:=1;

     Button5.Caption:='схватить';

      Kran.capt:='отпущено'

 end

else

 begin

  image2.Picture.LoadFromFile('схвачено.bmp');

  image2.Tag:=0;

   Button5.Caption:='отпустить';

   Kran.capt:='схвачено'

 end;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

edit5.text:='отпущено';

edit1.text:='0';

edit3.Text:='0' ;

end ;

end.


Демонстрация работы программы

При запуске программы у нас пустая форма (рис.2)

Рис.2 Работа программы

При нажатии на кнопку включить программа начинает работать. При нажатии на остальные кнопки меняем положение крюка и хватаем (отпускаем) деталь (рис.3).

Рис.3 Программа в действии


Заключение

Исторически сложилось так, что программирование возникло и развивалось как процедурное программирование, которое предполагает, что основой программы является алгоритм, процедура обработки данных. Объектно-ориентированное программирование ООП - это методика разработки программ, в основе которой лежит понятие объекта, как некоторой структуры, описывающей объект реального мира, его поведение.

Задача, решаемая с использованием методики ООП, описывается в терминах объектов и операций над ними, а программа при таком подходе представляет собой набор объектов и связей между ними. 


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

  1.  Чиртик А.А. : Программирование в Delphi. - СПб: Питер, 2010
  2.  Избачков Ю.С.: Информационные системы. - СПб.: Питер, 2008
  3.  Фаронов В.В.: Delphi. Программирование на языке высокого уровня. - СПб.: Питер, 2008
  4.  Архангельский А.Я.: Программирование в Delphi для Windows. - М.: Бином-Пресс, 2007
  5.  Микрюков В.Ю.: Алгоритмизация и программирование. - Ростов на/Д: Феникс, 2007


 

А также другие работы, которые могут Вас заинтересовать

17076. Знаходження значення інтеграла по формулам Ньютона-Котеса 29.5 KB
  Лабораторна робота №78 Тема. Знаходження значення інтеграла по формулам НьютонаКотеса. Мета. Навчитися знаходити значення інтеграла по формулам НьютонаКотеса. Скласти програму. Устаткування: папір формату А4 ПК С. Хід роботи Правила техніки безпеки Т
17077. Знаходження інтеграла за формулами прямокутників 53 KB
  Лабораторна робота №9 Тема: Знаходження інтеграла за формулами прямокутників. Мета: Навчитися знаходити значення інтегралу за формулами прямокутників. Скласти програму. Устаткування: папір формату А4 ПК С Хід роботи Правила техніки безпеки Теоретичні...
17078. Обчислення інтегралу по формулі Сімпсона. Складання алгоритму 44 KB
  Лабораторна робота №11 Тема. Обчислення інтегралу по формулі Сімпсона. Складання алгоритму. Мета. Навчитися обчислювати інтеграл по формулі Сімпсона; склаcти алгоритм. Устаткування: папір формату А4 ПК С Хід роботи Правила техніки безпеки Теоретичні да
17079. Побудова багаточлена Лагранжа. Складання алгоритму 216 KB
  Лабороторна робота №3 Тема. Побудова багаточлена Лагранжа. Складання алгоритму. Мета. Навчитися будувати багаточлен Лагранжа скласти алгоритм. Обладнання. Лист формату А4 ручка ПК програмне забезпечення С. Хід роботи Правила ТБ Теоретичні відомо
17080. Інтерполяційні формули через розділені різниці 54.5 KB
  Лабороторна робота №5 Тема. Інтерполяційні формули через розділені різниці Мета.Навчитися знаходити значення функції при даному значенні аргумента використовуючи інтерполяційні формули Н’ютона через розділені різниці Обладнання. Лист формату А4 ручка про
17081. Формули Н’ютона через кінцеві різниці 50 KB
  Лабороторна робота №6 Тема. Формули Н’ютона через кінцеві різниці Мета. Навчитися обчислити значення функції при даному значенні аргумента використовуючи формули Н’ютона через кінцеві різниці. Обладнання. Лист формату А4 ручка олівець програмне забезпечення С...
17082. Знаходження інтегралу за формулами трапецій 64 KB
  Лабораторна робота № 10 Тема. Знаходження інтегралу за формулами трапецій. Мета. навчитися знаходити значення інтегралу за формулами трапецій. Скласти програму. Устаткування: папір А4 ручка ПК програмне забезпечення С. Хід роботи 1. Правили техніки безпеки. ...
17083. Метод Крилова побудови власного багаточлена матриці 66 KB
  Лабораторна робота №18 Тема. Метод Крилова побудови власного багаточлена матриці. Мета. Навчитися знаходити власний багаточлен матриці методом Крилова. Устаткування: лист формату А4 ручка програмне забезпечення Borland C Хід роботи Правила техніки безпеки ...
17084. Знаходження власних чисел і векторів матриці по методу Крилова 57.5 KB
  Лабораторна робота №19 Тема. Знаходження власних чисел і векторів матриці по методу Крилова. Мета: навчитися знаходити власні числа і вектори матриці по методу Крилова. Устаткування: лист формату А4 ручка С . Хід роботи Правила техніки безпеки Теоретичн