TOPREFERAT.COM.KZ - Қазақша рефераттар

войти на сайт

вход на сайт

Логин: :
Пароль :

Забыл пароль Регистрация

Транспорт есебі курстық жұмыс




Транспорт есебі курстық жұмыс
0
Раздел: Соңғы қосылған | Автор: Админ | Дата: 13-03-2015, 12:06
Загрузок: 2037


МАЗМҰНЫ - www.topreferat.com.kz

КІРІСПЕ...................3

1 Қойылған мәселенің қазіргі жағдайы........5

1.1 Жалпы оптималдау есептері............6

1.2 Транспорт есебі...............12

1.2.1 Потенциалдар әдісі..............12

Солтүстік-батыс бұрыш әдісі............14

1.2.3 Минимальды элемент әдісі.........15

2 Delphi объектке бағытталған тілі.............25

3 Программаның баяндалуы..........36

3.1 Жалпы мағлұмат.............36

3.2 Функционалдық тағайындалуы ............36

3.3 Шақыру және жүктеу.............36

3.4 Қажетті техникалық жабдықтар............36

3.5 Кіріс мәліметтер..............36

3.6 Шығыс мәліметтер..........37

ҚОРЫТЫНДЫ...............38

ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ...........39

ҚОСЫМША...................40




Жұмыс түрі: [b]Курстық жұмыс[/b]
Жұмыс көлемі: [b]47 бет[/b]
Пәні: [b]Соңғы қосылған курстық жұмыстар[/b]

[b]-----------------------------------------------------------------------------------[/b]
[b][/b]
[b]КУРСТЫҚ ЖҰМЫСТЫҢ ҚЫСҚАРТЫЛҒАН МӘТІНІ[/b]
МАЗМҰНЫ

КІРІСПЕ...................................................................................................................3

1 Қойылған мәселенің қазіргі жағдайы................................................................5

1.1 Жалпы оптималдау есептері............................................................................6

1.2 Транспорт есебі...............................................................................................12

1.2.1 Потенциалдар әдісі......................................................................................12

Солтүстік-батыс бұрыш әдісі....................................................................14

1.2.3 Минимальды элемент әдісі.........................................................................15

2 Delphi объектке бағытталған тілі.....................................................................25

3 Программаның
3.1 Жалпы мағлұмат.............................................................................................36

3.2 Функционалдық тағайындалуы ....................................................................36

3.3 Шақыру және жүктеу.....................................................................................36

3.4 Қажетті техникалық жабдықтар....................................................................36

3.5 Кіріс мәліметтер..............................................................................................36

3.6 Шығыс мәліметтер..........................................................................................37

ҚОРЫТЫНДЫ.......................................................................................................38

ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ...........................................................39

ҚОСЫМША...........................................................................................................40

КІРІСПЕ

Әлемнің барлық дамыған елдерінде математикалық әдістерді жеке тәжірибелік
Инвестицияларды жоспарлау туралы шешімдер қабылдаған кездері осындай жағдайларды
Математикалық және құралдық әдістер жаңашыл компьютерлік және ақпараттық
Қазіргі транзиттік жүктер үлкен қашықтыққа тасылған жағдайда тасымалдаудың
Транспорт моделінің әдістерін өңдеуде көптеген әлемдік ғалымдар өз
Н.Назарбаев, А.Абалкин, А.Аганбегян, А.Қошанов, С.Сатыбалдин, Н.Есенғарин, Е.Атамқұлов, Қ.Жанғаскин,
Зерттеудің мақсаты мен міндеттері. Диплом жұмысының мақсаты транспорттық
халықаралық практиканы және алдағы кезеңдегі даму бағыттарын есепке
темір жол көлігімен транзиттік жүк тасымалдарын жүргізетін елдерді
жүк тасымалдарының алдағы кезеңдегі болуы мүмкін болжамдық көлемдерін
темір жол көлігіндегі транзиттік тасымалдардың қалыптасу принциптерін анықтау;

транзиттік жүк тасымалдарының жүк ағымдарын жетілдірудің ұйымдастырушылық-экономикалық фактор
Бұл зерттеу еңбегімнің объектісі транспорт нарығының механизмдері болып
Транспорт есебінің негізгі мақсаты мүмкін жоспарлар ішінен

ең оптималдысын табу, яғни жалпы тасымалдау құнын минимальдау.
1 Қойылған мәселенің қазіргі жағдайы

Қазіргі транзиттік жүктер үлкен қашықтыққа тасылған жағдайда тасымалдаудың
Транспорт моделінің әдістерін өңдеуде көптеген әлемдік ғалымдар өз
Н.Назарбаев, А.Абалкин, А.Аганбегян, А.Қошанов, С.Сатыбалдин, Н.Есенғарин, Е.Атамқұлов, Қ.Жанғаскин,
Зерттеудің мақсаты мен міндеттері. Диплом жұмысының мақсаты транспорттық
халықаралық практиканы және алдағы кезеңдегі даму бағыттарын есепке
темір жол көлігімен транзиттік жүк тасымалдарын жүргізетін елдерді
жүк тасымалдарының алдағы кезеңдегі болуы мүмкін болжамдық көлемдерін
темір жол көлігіндегі транзиттік тасымалдардың қалыптасу принциптерін анықтау;

транзиттік жүк тасымалдарының жүк ағымдарын жетілдірудің ұйымдастырушылық-экономикалық фактор
Бұл зерттеу еңбегімнің объектісі транспорт нарығының механизмдері болып
1.1 Жалпы оптималдау есептері

Операцияны (басқарылатын жүйелерді) жүйелеп талдау.

Бұл кезеңдегі жұмыстарды технолог пен операцияны зерттеуші бірігіп
Операцияны басқару есептерін мазмұндау және операцияның қарапайым бөлшектерін
Бұл кезеңдегі жұмыстарды технолог пен операцияны зерттеуші бірігіп
1. Операцияның қозғаушы күшінің тізбегі болу керек. Олар
2. Осы қозғаушы күштердің өзара әрекеттесуінің шамасы (сипаты)
3. Осы операцияның бөлшектерінің бүтін операциядағы орны көрсетілуі
Операцияның қарапайым бөлшектерін бөліп шығару аралық кезең
Операциядағы негізгі қозғаушы күштерді бөліп шығару керек. Бұл
Болжамдар жасау (жорамал құрастыру).

Бұл кезеңдегі жұмыстарды технолог пен операцияны зерттеуші бірігіп
Математикалық модельді құрастыру.

Операцияны зерттеу үшін іс-жүзінде қолданбалы математика маманы мен
Модель дегеніміз ақиқатты нақты белгілеу. Модель көмегімен
Математикалық модель мақсатты функция мен шектеулерден тұрады. Мақсатты
Басқару есептерін шешетін әдісті таңдау және алгоритм жасау.

Бұл кезеңдегі жұмыстарды операцияны зерттеуші мен математика маманы
Айнымалылардың саны бойынша бір мөлшерлі (бір өлшемді) және
Шектеулерге байланысты шартты және шартсыз есептерге бөлінеді.

Тәуелсіз айнымалылардың уақыттан функция болу, болмауына байланысты статикалық
Ескерілетін ақпараттардың дәрежелері бойынша стохастикалық және детерминдік оптималдандыру
Математикалық модельді жасаған соң мақсатты функция мен шектеулер
- сызықтық бағдарламалау;

- бейсызықты бағдарламалау;

- дискретті бағдарламалау;

- динамикалық бағдарламалау;

- ойындар теориясына;

- стохастикалық бағдарламалау, т.б.

Қандай математикалық бағдарламалау есептеріне келісетінін қарастырып, есепті шешетін
Детерминдік - ол есептеу кезеңдерінде берілген шарттар бойынша
Есептеу процесінің дискреттілігі - орындалуы күдік туғызбайтын бөліктелген
Жалпылық - ол әртүрлі берілген шарттар бойынша бір
Алгоритмді жүзеге асыратын программа құрастыру және оны жөнге
Бұл кезеңдегі жұмыстарды операцияны зерттеуші мен программа маманы
есептеу алгоритмінің блок-схемасы бойынша программаның детальды блок-схемасын тұрғызу;

программа тілін таңдау;

программа құру;

шешуі белгілі (тесттік) есептер қолдана отырып, программаны тексеру
берілген шарттардың өлшем функциясы ретінде есептеу алгоритмінің бір
кіріс және шығыс мәліметтерін белгілі бір формада дайындау.

Есепті шешу және шешімдерді талдау.

Бұл кезеңдегі жұмыстарды жоспарлаушы мен операцияны зерттеуші бірігіп
Операцияларды зерттеудің негізгі принциптері:

1 Операцияны зерттейтін топ құрамына әртүрлі мамандар енгізу
2 Математикалық модельдеу принципі. Операцияны басқарғанда шешім қабылдау
3 Оптималдық принцип. Шешім қабылдағанда бізге кез-келген шешім
4 Іс жүзінде қолдану принципі. Кез-келген операцияны зерттеудің
5 Үйлестік (ұқсастық) принципі. Жаңа есепті ұқсасты
6 Декомпозиция (бөлшектеу) принципі. Күрделі операцияларды зерттеуде қолданылады.

7 Жүйелеу тәсілінің принципінің негізгі операцияға әсер ететін
8 Агрегаттау (іріктеу) принципі. Күрделі есеп шығару мен
Математикалық бағдарламалау есептерінің қойылымы, оларды тораптау.

1 есеп. Қоспаның ең жақсы құрамын анықтау (диета
Мал шаруашылығында малға тәулікте берілетін жем құрамы жоспарланады.
Негізгі белгілеулер:

n ( ) - жем түрлері;

m ( ) - қоректі заттар саны;

- j-ші жемнің бірлігіндегі і-ші заттың бірлігі;

- тәуліктегі қоректі заттың қажеттілігі;

- j-ші жем бірлігінің бағасы;

- жем түрлерінің мөлшері.

Қарапайым актілер:

1) Жем түрлерінің жалпы бағасын минималдау.

2) Тәулікте қоректі заттар мөлшерін қанағаттандыру.

Есептің математикалық моделі:

2 есеп. Өнім шығарудың оптималды жоспары.

Кәсіпорын n түрлі өнім шығарады ( ).
Шикізат көлемі бойынша технологиялық іске асыратын, шығарылатын өнімнің
Тәуелсіз айнымалылар:

xj , -шығарылатын өнім көлемі
Қарапайым актілер:

1) Кәсіпорын пайдасын максималдау.

2) Шығарылатын өнім көлемін қанағаттандыру.

3) Шикізат көлемінің шектілігін ескеру.

Есептің математикалық моделі:

3 есеп. Металл өнімдерін тасымалдауды жоспарлау (транспорт есебі).
Өндірістік қуаттары -ге тең бірыңғай металл
Келесі белгілеулер енгізейік:

тасымалдау құны.

Тәуелсіз айнымалылар: -тасымалданатын метал өнімдерінің көлемі.

Қарапайым актілер:

1) Транспорт шығындарын минималдау.

2) Тұтынушылардың сұраныстарын толық қамтамасыз ету.

3) Өндіріс қуаттарының шектілігін ескеру.

Есептің математикалық моделі:

4 есеп. Белгілеу (үлестіру) туралы есеп.

n механизмдерді үлестіру туралы есепте әрбір механизм тек
Белгілеулер:

, , -
- і-ші механизмді j-ші жұмысқа белгілеу.

Қарапайым актілер:

1) Процесс тиімділігін максималдау.

2) Бір механизм бір жұмысты орындайды.

3) Бір жұмыс тек бір механизммен орындалу керек.

Есептің математикалық моделі:

1, егер і механизм j-жұмысқа белгіленген болса,

=

0, егер і механизм j-жұмысқа белгіленбеген болса.

Транспорт есебі

1.2.1 Потенциалдар әдісі

Транспорт есебі келесідей тұжырымдалады:

Берілген пункте
6.1-кесте

...

...
...
... ... ... ... ...

...
матрицасын тасымалдау жоспары, ал матрицасын
Транспорт есебінің негізгі мақсаты мүмкін жоспарлар ішінен ең
Тіке есебі
(6.1)

(6.2)
(6.3)

(6.4)
(6.5)

(6.6)

(6.7)

(6.8)

Тіке есепті қарастырайық, мұнда мақсатты функция (6.1) транспорт
1) Егер , онда (6.1)-(6.4) есеп
Ашық транспорт есебін жабық транспорт есебіне келтіруге болады:
2) Егер , онда келесі
3) Егер , онда келесі
Транспорт есебін потенциалдар әдісімен, венгр әдісімен шығаруға болады.
Потенциалдар әдісінің алгоритмі:

І. Алғашқы қадам:

1. Басты жоспарды құру.

2. Жоспары бар торлар үшін:
3. Жоспары жоқ торлардың потенциалдығын зерттеу:
ІІ. Жалпы қадам:

1. Жоспарды одан да жақсарту.

2. Жүйені түзету.

3. Түзетілген жүйенің потенциалдығын зерттеу.

Алғашқы жоспар не солтүстік-батыс бұрыш әдісімен, не минимальды
Жоспары бар торларға жүйесі жасалады.

Жоспары жоқ торларға келесі теңсіздіктер жүйесі құрылады:
Егер бұл шарттар орындалмаса, онда
Жаңа жоспар келесідей құрылады:

, егер цикл бұрылған жерде плюс тұрса,

= , егер
,
Содан соң жоспары бар торларға жаңа теңдеулер жүйесі
Жоспары жоқ торлардың потенциалдығы зерттеледі: .

1.2.2 Солтүстік-батыс бұрыш әдісі

Солтүстік-батыс бұрыш әдісімен құрылатын алғашқы жоспардың әрбір қадамында
Жоспарды құру алгоритмі бірнеше қадамдардан тұрады, олардың әрқайсында
1-қадам. жоспары таңдалады.

2-қадам. Егер болса, онда
3-қадам. Егер болса, онда
4-қадам. Келесі қарастырылатын жоспар болады.
5-қадам. Егер болса, онда
6-қадам. Егер болса, онда
Алгоритм өнімді қабылдау пункттеріне толығымен үлестіргенге дейін жалғасады,
1.2.3 Минимальды элемент әдісі

Минимальды элемент әдісінде транспорттық шығын
1-қадам. матрицасынан ең кіші элементін
2-қадам. Егер болса, онда
3-қадам. матрицасынан келесі ең кіші
Алгоритм торға дейін толтырылады.

a1 = 180, a2 = 90, a3 =
.

, болғандықтан есеп ашық транспорт
Шешімі. Келесі кесте құрылады

2 – кесте

bj

ai 45

45

100

160

90

180 6

7

3

2

0

90

5

1

4

3

0

170

3

2

6

2

0

Ι. Алғашқы қадам

1. Басты жоспарды құру. Алғашқы жоспар келесі екі
а) минимальды элемент әдісі;

ә) солтүстік-батыс бұрыш әдісі.

а) Минимальды элемент әдісі

6.3-кесте

bj ai 45

0 45

0 100

55 160

70 0 90

0

180

90 0 6

0 7

0 3

0 2

90 0

90

90

45 0 5

0 1

45 4

45 3

0 0

0

170

100 55 3

45 2

0 6

55 2

70 0

0

Минимальды элемент әдісінде тасымалдау құны ескеріледі. Кесте
Қалған торлар осы ережемен толтырылады

Соңғы қалған тор келесідей толтырылады:

ә) Солтүстік-батыс бұрыш әдісі

6.4 - кесте

bj

ai 45

0 45

0 100

10 0 160

80 0 90

180

135
45 7

45 3

90 2

0 0

0

90

80 0 5

0 1

0 4

10 3

80 0

0

170

90 3

0 2

0 6

0 2

80 0

90

Бұл әдіс солтүстік-батыс бұрышында орналасқан (1, 1) торының
x11 = min {a1, b1} = min{180, 45}
.

Келесі солтүстік-батыс бұрышта орналасқан элемент
Келесі бастапқы жоспар алынады:

6.5 - кесте

bj

ai 45 45 100
180

6

45 7

45 3

90 2

0

90

5

1

4

10 3

80 0

170

3

2

6

2

80 0

90

2. Жоспары бар торлар үшін
Табылған мәндерді ескерсек, кесте келесі түрде болады:

6.6 – кесте

vj

ui 6 7 3 2 025

0 6

45 7

– 45 3

+ 90 2

0

–1 5

1

+ 4

–10 3

80 0

0 3

2

6

2

80 0

90

3. Жоспары жоқ торлардың потенциалдығын зерттеу
Егер бұл шарт орындалмаса, онда
Табылған барлық ішінен ең үлкені
ΙΙ. Жалпы қадам

Жоспарды одан да жақсарту.

тұратын тордан бастап, жоспары бар торларда сағат тіліне
2. Жүйені түзету.

(-)-та тұрған барлық ішінен ең
6.7 – кесте

vj

ui 6 7 3 9 7

0 6

45 7

– 35 3

100 2

+ 0

6 5

1

+10 4

3

–80 0

7 3

2

6

2

80 0

90

Жоспары бар торлар үшін келесі потенциалдар жүйесін аламыз
3. Түзетілген жүйенің потенциалдығын зерттеу (6.7 - кесте).

Келесі жақсартылған жоспарды аламыз

6.8-кесте

vj

ui 6 0 3 2 0

0 6

– 45 7

3

100 2

+35 0

–1 5

1

45 4

3

45 0

0 3

+ 2

6

2

–80 0

90

Келесі потенциалдар жүйесін аламыз (6.8 - кесте):

Потенциалдығын зерттейміз (6.8 - кесте):

.

Келесі жақсартылған жоспарды аламыз:

6.9 - кесте

vj

ui 3 0 3 2 0

0 6

7

3

100 2

80 0

–1 5

1

45 4

3

45– 0

+

0 3

45 2

6

2

+35 0

–90

Келесі потенциалдар жүйесін аламыз (6.9-кесте):

Потенциалдығын зерттейміз (6.9-кесте):

Келесі жақсартылған жоспарды аламыз:

6.10 - кесте

vj

ui 3 1 3 2 0

0 6

7

3

100 2

80 0

0 5

1

45 4

3

0

45

0 3

45 2

6

2

80 0

45

Келесі потенциалдар жүйесін аламыз (6.10 - кесте):

Потенциалдығын зерттейміз

(6.10 - кесте):

Алынған жүйе оптималды болғандықтан оптималды жоспар алынды және
2 Delphi объектке бағытталған тілі

Жоғарғы деңгейлі программалау процедуралық, логикалық және объектілі –
Солардың ішінде Visual Basic тілі Qbasic программалау тілі
Delphi – дің бірінші нұсқасы 1994 жылы жарыққа
Delphi ортасы – бағдарламаушының жоғары әрі тиімді жұмысын
Delphi тіліндегі қолданбалы бағдарламалар немесе қосымшалар IDE (Integrated
Delphi – дің IDE ортасы көптерезелік жүйе деп
негізгі терезе (Project 1);

объектілер бақылаушысының терезесі (Object Inspector);

формалар құрастырушысының терезесі (Form1);

бағдарлама кодының терезесі (Unit1.pas).

Негізгі терезеден басқа терезелерді жылжытуға, экраннан алып тастауға
Терезелерді кішірейту, үлкейту, жабу әрекеттері осы әрекеттердің Windows
Форманың терезесінен Unit кодына және одан кері өту
Негізгі терезе бағдарламаның жобасын құрудағы жұмыстарды басқарады және
Бұл терезеде Delphi – дің негізгі меню жүйесі,
Delphi – дің негізгі ерекшелігі – мұнда қосымша
Біз ұсынып отырған программалық комплексті жасау үшін Delphi
Delphi-де қолданбаларды жобалауда визуалды құралдары мен оңтайлау жүргізетін
Delphi қуатты, икемді ғана емес, объектті-бағытталған программалау принциптері
Delphі-дің жобалары модульдерден тұратын бағдарламалық бірліктер жиынынан тұрады.
Комментарий сияқты {$R*.RES} компиляторға пиктограмма сияқты файл ресурстарын
Басты модульдің орындалатын бөлігі begіn, end арасында орналасады.
Модуль unіt сөзімен басталады кейін модуль аты жазылады.Осы
Интерфейс бөлігі (іnterface сөзімен басталады) компиляторға басқа бағдарлама
Бағдарламада кездесетін қателерді 3 топқа бөледі :

Синтаксистік

Орындалу уақытының қателері

Алгоритмді

Синтаксистік қателер - оларды тағы да оңайырақ шегерілетін,
Орындалу уақытының қателері Delphі-де олар ерекшелік (exeptіon) деп
Delphі-дегі бағдарламада қателер шыққан жағдайда өңдеу аймағы бағдарлама
Алгоритмдік қателермен жұмыс басқаша болады. Алгоритмдік қатесі бар
Программа құрудың интегралдық ортасын сипаттау

1998 жылы Іnprіse Corporatіon фирмасы (бұрынғы Borland Жаңа
Wіndows операциялық жүйесінде Паскаль, Си және т.б.тілдерді қолданып
Кейінгі кездегі дамып келе жатқан визуалды программалау программаның
Delphi көмегімен Windows-қа арналған бағдарламалық қамсыздандыру өндірісі тез
негізгі саймандар тақтасы;

объект инспекторы;

форма мен код редакторы.

Жоғарғы жақта негізгі терезе орналастырылған. Delphi-дің саймандар тақтасы
Негізгі терезе. Негізгі Терезе Delphi-дің «басқару орталығы »
Негізгі мәзір. Негізгі мәзір проектімен жұмыс кезінде қажетті
File (Файл) – файлмен жұмыстайтын еомандалар жиынтығын құрайды,
Edit (Түзету) – атында көрсетілгендей мұнда мәтін түзететін,
Search (Іздеу) – мәтінді іздеу және алмастыру амалдарын
Project – проектге модулдарды қосуға жәге өшіруге, кітапханалар
Database (Деректер қоры) – деректер қорымен жұмыс істейтін
Tools (Құралдар) - Delphi - дің
Help (Көмек) Delphi-дің анықтамалық жүйесін шақыруға мүмкіндік бареді.

Delphi-дің жұмыс ортасы. Delphi-дің интеграцияланған жетілдіру ортасының орталық
Форма конструкторымен код редакторы тығыз байланысты. Оның көмегімен
Қалыпты саймандар тақтасы. Саймандар тақтасыныңбірінші бетінде өте қажетті
Курсор – белгілі бір боъкетіні қалпына келтіру үшін
MainMenu бағдарламаға негізгі менюді енгізуге мүмкіндік береді. Оны
MainMenu-ді формаға орнату;

Объект инспекторының Items қасиеті арқылы меню дизайнерін шығартқызу;

Меню дизайнерінде меню бағыттарын белгілеу.

PopupMenu қосалқы менюлерді құруға арналған. Бұл меню типін
Label экран үстінде мәтінді көрсету құрылғысы. Объект инспекторының
CheckBox мәттіннің жолы мен кішкентай терезешігімен белгіленген. Терезешікте
RadioButton тізімнен жалғыз ғана қасиетті тұтынады;

ComboBox көбіне ListBox-қа ұқсайды, бірақ ерекшелігі – ақпаратты
Объект инспекторы. Объект инспекторы экранның сол, негізгі саймандар
Events беті пайдаланушы арасындағы пайда болатын байланыс компнент
Delphi-дің жұмыс ортасы. Delphi-дің интеграцияланған жетілдіру ортасының орталық
Форма конструкторымен код редакторы тығыз байланысты. Оның көмегімен
Delphi ортасында жиі кездесетін оқиғалар:

On Click тышқан тетігін бір рет басу;

On Dbl Click тышқан тетігін екі рет басу;

On Key Down клавишті басу;

On Create форманы екі рет шерту.

Delphі-де дайын бөліктерді біріктіру арқылы программа құруға болады.Және
Delphі-дегі программалаудың бір ерекшелігі, прошраммист өзінің істеп отырған
Программаны құруды клавиатура және mouse (мышь) арқылы басқаруға
Wіndows-тың жұмыс аймағында- монитор экранындағы негізгі аймақ- Delphі-дің
Немесе "Выполнить" (орындау) командасын қолдануға болады: жолдың бағытын
C:Program FіlesBorlandDelphі_4Bіn Delphі_32.exe

Полиморфизм және виртуалды әдістер. Полиморфизм-әртүрлі кластарға кіретін, әдістер
Төменде әрбір класс үшін ен белгіл енеді).
Бағдарламадағы адамдар тізімін Tperson класс объектісінің массиві
Lіst: array [1…szl]of Tperson;

Бұндай етіп тізімді хабарлауға болады, өйткені Object Pascal
Бағдарламаның жұмыс істеу барысында массивтің әрбір
Тізім (Button2)пернесін басып ,Tform1.Button2Clіck үрдісі тізімінің әрбіробъектісі іnto
Инкапсуляция және объект қасиеттері. Инкапсуляция деп -тек класс
Object Pascal–да объектілер даласына мүмкіндіктің шектелуі объект қасиеті
Кластарды жазғанда қасиет атының алдына property (қасиет) сөзі
Төменде екі name және address қасиеттері бар TTPerson
Қасиет мәнін орналастыру бағдарламасында обьектіде қасиет мәнін орналастыру
жазсақ жеткілікті.

Protected секциясында хабарланған класс элементтері өзінен шыққан кластары
Prіvate секциясында хабарланған класс элементтері модуль ішінде ғана
Файлдық көмек. Бағдарламалардың көптегені үшін файлдарда мәліметтерді сақтау
Компиляция

Оқиғаны өңдеу процедурасының текстін енгізгеннен кейін және сақтағаннан
Компилятордың ескертулері және процедуралары

Бағдарламада компилятор дәл келмеушіліктерді тапқан кезде, олар қате
Мысалы: кездесетін көмек бұл бағдарламада айтылған бірақ қолданылмаған
Қосымшаны бағдарламалау ортасынан орындату

Бағдарламаны Delphі жұмысын аяқтатпай орындатып көруге болады.Ол үшін
Басты модульдің орындалатын бөлігі begіn,end арасында орналасады.Орындалатын бөлік
Үшінші листингте фунттан килограмға айналдыратын бағдарламалық модульдің толық
Модуль unіt сөзімен басталады кейін модуль аты жазылады.Осы
Интерфейс бөлігі (іnterface сөзімен басталады)компиляторға басқа бағдарлама модульдеріне
‘Жүзеге асыру’- сөзі іnplementatіon сөзінен басталады және
Жүзеге асыру бөлігі{$R*.DFM} директивасынан басталады,бұл компиляторға модуль атымен
Инициализация бөлігі модуль айнымалыларының инициализациялауын қамтамасыз етеді. Инициализация
Ескерте кететін жай: Модуль инструкциясының көп бөлігін Delphі
Қателер классификациясы

Бағдарламада кездесетін қателерді 3 топқа бөледі :

- Синтаксистік

- . Орындалу уақытының қателері

- . Алгоритмді

Синтаксистік қателер-оларды тағы да оңайырақ шегерілетін , компи-ляция
Орындалу уақытының қателері Delphі-де олар ерекшелік (exeptіon) деп
Delphі-дегі бағдарламада қателер шыққан жағдайда өңдеу аймағы бағдарлама
Орындауға жіберу

Өңдеу Delphі-дің интегралды аймағы,онда орындату-бағдарламалау-шының бағдарламалаудағы қатені
Жобаны сақтау

Delphі терминологиясындағы жоба түсінігі–бұл орындалатын файл жасау үшін
Жобаны сақтау үшін Fіle менюінен Save Project As.
Осы терезеде Delphі –дің барлық жобаларын сақтайтын папканы
Delphі жобалары папкасында сақталып жатқан жоба үшін бөлек
Енді жасалған папка белгісін қос түрту арқылы ашып
3 Программаның баяндалуы

3.1 Жалпы мағлұматтар

Қарастырылып отырған мәліметтер базасы Delphi 7 ортасында құрылды.
Мәліметтер базасының көмегімен қолданушы мәліметтерге қатынаудың жолын қысқартады.
3.2 Функционалдық тағайындалуы

Мәліметтер базасының көмегімен қолданушы мәліметтерге қатынаудың жолын қысқартады.
3.3 Шақыру және жүктеу

Мәліметтер базасын Delphi-де ашу үшін Пуск|Программы|Borland Delphi7| Delphi7
3.4 Қажетті техникалық жабдықтар

МБ жасауда Pentium 4 2.39| 256 Mb| 80
Кіріс мәліметтер

3.6 Шығыс мәліметтер

ҚОРЫТЫНДЫ

Қорыта келгенде, мен осы жұмысымды орындау барысында бағдарламалау
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ

1 Зуховицкий С.Н., Авдеева Л.И. Линейное и
2 Исследование операций (в 2 – х
3 Калихман И.Л. Сборник задач по математическому программированию
4 Балғабаева Л.Ш. Мұраталиева Е.П. Автоматтандырылған басқарудың
5 Балғабаева Л.Ш. Сызықтық және бейсызықтық бағдарламалау.

А: ҚазҰТУ 1997.

ҚОСЫМША

{In the name of Allah, Most Gracious,Most Merciful}

unit Unit1;

interface

uses

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

Dialogs, Buttons, StdCtrls, ExtCtrls;

const

n = 5;

m = 4;

nr_max =-1;

type

waypoint = record

i,j:integer;

isplus:boolean;

end;

way = array[1..n+m]of waypoint;

way_index = record

mway:way;

lastindex:integer;

end;

ways = array[1..n+m]of way_index;

table = array[1..m,1..n]of single;

typePN = array[1..n]of single;

typePO = array[1..m]of single;

TfrmMain = class(TForm)

gbMain: TGroupBox;

Panel1: TPanel;

btnLoad: TButton;

btnSave: TButton;

btnMin: TButton;

btnPot: TButton;

BitBtn1: TBitBtn;

dlgOpen: TOpenDialog;

dlgSave: TSaveDialog;

lblCol1: TLabel;

edtCol1: TEdit;

edtCol2: TEdit;

lblCol2: TLabel;

edtCol3: TEdit;

lblCol3: TLabel;

edtCol4: TEdit;

lblCol4: TLabel;

edtCol5: TEdit;

lblCol5: TLabel;

edtRow1: TEdit;

lblRow1: TLabel;

edtRow2: TEdit;

lblRow2: TLabel;

edtRow3: TEdit;

lblRow3: TLabel;

edtRow4: TEdit;

lblRow4: TLabel;

edtElm11: TEdit;

edtElm12: TEdit;

edtElm13: TEdit;

edtElm14: TEdit;

edtX11: TEdit;

edtX12: TEdit;

edtX13: TEdit;

edtX14: TEdit;

edtX21: TEdit;

edtX22: TEdit;

edtX23: TEdit;

edtX24: TEdit;

edtElm21: TEdit;

edtElm22: TEdit;

edtElm23: TEdit;

edtElm24: TEdit;

edtX31: TEdit;

edtX32: TEdit;

edtX33: TEdit;

edtX34: TEdit;

edtElm31: TEdit;

edtElm32: TEdit;

edtElm33: TEdit;

edtElm34: TEdit;

edtX41: TEdit;

edtX42: TEdit;

edtX43: TEdit;

edtX44: TEdit;

edtElm41: TEdit;

edtElm42: TEdit;

edtElm43: TEdit;

edtElm44: TEdit;

edtX51: TEdit;

edtX52: TEdit;

edtX53: TEdit;

edtX54: TEdit;

edtElm51: TEdit;

edtElm52: TEdit;

edtElm53: TEdit;

edtElm54: TEdit;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

Label15: TLabel;

Label16: TLabel;

Label17: TLabel;

Label18: TLabel;

Label19: TLabel;

Label20: TLabel;

Label21: TLabel;

mmReport: TMemo;

Label22: TLabel;

procedure btnLoadClick(Sender: TObject);

procedure btnSaveClick(Sender: TObject);

procedure ReadFile(filename:string);

procedure SaveFile(filename:string);

procedure SyncMin;

procedure SyncPol;

procedure btnMinClick(Sender: TObject);

function OptCheck(var mi:integer;var mj:integer;var max_lamda:real):boolean;

procedure btnPotClick(Sender: TObject);

{function FindOtherNextPoint(var oi:integer;var oj:integer;mi:integer;mj:integer;isplus:boolean):boolean;

procedure Clearmways(var mways:ways);}

function IsItNewPoint(mway:way_index;mi:integer;mj:integer):boolean;

function IsItLastPoint(mway:way_index;mi:integer;mj:integer):boolean;

function FindMaxCorrectWay(mway:ways):way;

function CheckRule(mway:way_index;lastindex:integer;mi:integer;mj:integer):boolean;

private

{ Private declarations }

public

abc,X:table;

A:typePO;

B:typePN;

alfa:typePO;

beta:typePN;

published

end;

var

frmMain: TfrmMain;

implementation

{$R *.dfm}

procedure TfrmMain.ReadFile(filename:string);

var

i,j:integer;

F:TextFile;

begin

{ $I-}

AssignFile(F,filename);

Reset(F);

for j:=1 to n do

Read(F,B[j]);

for i:=1 to m do

Read(F,A[i]);

for i:=1 to m do

for j:=1 to n do

Read(F,abc[i,j]);

CloseFile(F);

end;

procedure TfrmMain.SaveFile(filename:string);

var

i,j:integer;

F:TextFile;

begin

{ $I-}

AssignFile(F,filename);

Rewrite(F);

{ for j:=1 to n do

Write(F,B[j]);

for i:=1 to m do

Write(F,A[i]);}

for i:=1 to m do

begin

for j:=1 to n do

begin

Write(F,X[i,j]:5:2);

Write(F,' ');

end;

Writeln(F);;

end;

CloseFile(F);

end;

procedure TfrmMain.btnLoadClick(Sender: TObject);

var

i,j:integer;

begin

dlgOpen.Title := 'Open input file';

dlgOpen.Filter := 'input files (*.in)|*.in|Text files (*.txt)|*.TXT';

dlgOpen.Options := [ofFileMustExist];

if(dlgOpen.Execute())then{opendialog}

begin

mmReport.Lines.Add('File "'+dlgOpen.FileName+'" opened.');

ReadFile(dlgOpen.FileName);

for i:=1 to m do

for j:=1 to n do

X[i,j]:=0;

SyncMin;

btnMin.Enabled:=true;

gbMain.Caption:='Press min. method button for start';

btnSave.Enabled:=false;

end;

end;

procedure TfrmMain.btnSaveClick(Sender: TObject);

begin

dlgSave.Title := 'Save output file';

dlgSave.Filter := 'output files (*.out)|*.out|Text files (*.txt)|*.TXT';

dlgSave.Options := [];

if(dlgSave.Execute())then{savedialog}

begin

SyncPol;

SaveFile(dlgSave.FileName);

mmReport.Lines.Add('File "'+dlgSave.FileName+'" saved.');

end;

end;

procedure TfrmMain.SyncMin;

begin

edtCol1.Text := FloatToStr(B[1]);

edtCol2.Text := FloatToStr(B[2]);

edtCol3.Text := FloatToStr(B[3]);

edtCol4.Text := FloatToStr(B[4]);

edtCol5.Text := FloatToStr(B[5]);

edtRow1.Text := FloatToStr(A[1]);

edtRow2.Text := FloatToStr(A[2]);

edtRow3.Text := FloatToStr(A[3]);

edtRow4.Text := FloatToStr(A[4]);

edtElm11.Text := FloatToStr(abc[1,1]);

edtElm12.Text := FloatToStr(abc[2,1]);

edtElm13.Text := FloatToStr(abc[3,1]);

edtElm14.Text := FloatToStr(abc[4,1]);

edtElm21.Text := FloatToStr(abc[1,2]);

edtElm22.Text := FloatToStr(abc[2,2]);

edtElm23.Text := FloatToStr(abc[3,2]);

edtElm24.Text := FloatToStr(abc[4,2]);

edtElm31.Text := FloatToStr(abc[1,3]);

edtElm32.Text := FloatToStr(abc[2,3]);

edtElm33.Text := FloatToStr(abc[3,3]);

edtElm34.Text := FloatToStr(abc[4,3]);

edtElm41.Text := FloatToStr(abc[1,4]);

edtElm42.Text := FloatToStr(abc[2,4]);

edtElm43.Text := FloatToStr(abc[3,4]);

edtElm44.Text := FloatToStr(abc[4,4]);

edtElm51.Text := FloatToStr(abc[1,5]);

edtElm52.Text := FloatToStr(abc[2,5]);

edtElm53.Text := FloatToStr(abc[3,5]);

edtElm54.Text := FloatToStr(abc[4,5]);

edtX11.Text := FloatToStr(X[1,1]);

edtX12.Text := FloatToStr(X[2,1]);

edtX13.Text := FloatToStr(X[3,1]);

edtX14.Text := FloatToStr(X[4,1]);

edtX21.Text := FloatToStr(X[1,2]);

edtX22.Text := FloatToStr(X[2,2]);

edtX23.Text := FloatToStr(X[3,2]);

edtX24.Text := FloatToStr(X[4,2]);

edtX31.Text := FloatToStr(X[1,3]);

edtX32.Text := FloatToStr(X[2,3]);

edtX33.Text := FloatToStr(X[3,3]);

edtX34.Text := FloatToStr(X[4,3]);

edtX41.Text := FloatToStr(X[1,4]);

edtX42.Text := FloatToStr(X[2,4]);

edtX43.Text := FloatToStr(X[3,4]);

edtX44.Text := FloatToStr(X[4,4]);

edtX51.Text := FloatToStr(X[1,5]);

edtX52.Text := FloatToStr(X[2,5]);

edtX53.Text := FloatToStr(X[3,5]);

edtX54.Text := FloatToStr(X[4,5]);

end;

procedure TfrmMain.SyncPol;

begin

edtCol1.Text := FloatToStr(beta[1]);

edtCol2.Text := FloatToStr(beta[2]);

edtCol3.Text := FloatToStr(beta[3]);

edtCol4.Text := FloatToStr(beta[4]);

edtCol5.Text := FloatToStr(beta[5]);

edtRow1.Text := FloatToStr(alfa[1]);

edtRow2.Text := FloatToStr(alfa[2]);

edtRow3.Text := FloatToStr(alfa[3]);

edtRow4.Text := FloatToStr(alfa[4]);

edtElm11.Text := FloatToStr(abc[1,1]);

edtElm12.Text := FloatToStr(abc[2,1]);

edtElm13.Text := FloatToStr(abc[3,1]);

edtElm14.Text := FloatToStr(abc[4,1]);

edtElm21.Text := FloatToStr(abc[1,2]);

edtElm22.Text := FloatToStr(abc[2,2]);

edtElm23.Text := FloatToStr(abc[3,2]);

edtElm24.Text := FloatToStr(abc[4,2]);

edtElm31.Text := FloatToStr(abc[1,3]);

edtElm32.Text := FloatToStr(abc[2,3]);

edtElm33.Text := FloatToStr(abc[3,3]);

edtElm34.Text := FloatToStr(abc[4,3]);

edtElm41.Text := FloatToStr(abc[1,4]);

edtElm42.Text := FloatToStr(abc[2,4]);

edtElm43.Text := FloatToStr(abc[3,4]);

edtElm44.Text := FloatToStr(abc[4,4]);

edtElm51.Text := FloatToStr(abc[1,5]);

edtElm52.Text := FloatToStr(abc[2,5]);

edtElm53.Text := FloatToStr(abc[3,5]);

edtElm54.Text := FloatToStr(abc[4,5]);

edtX11.Text := FloatToStr(X[1,1]);

edtX12.Text := FloatToStr(X[2,1]);

edtX13.Text := FloatToStr(X[3,1]);

edtX14.Text := FloatToStr(X[4,1]);

edtX21.Text := FloatToStr(X[1,2]);

edtX22.Text := FloatToStr(X[2,2]);

edtX23.Text := FloatToStr(X[3,2]);

edtX24.Text := FloatToStr(X[4,2]);

edtX31.Text := FloatToStr(X[1,3]);

edtX32.Text := FloatToStr(X[2,3]);

edtX33.Text := FloatToStr(X[3,3]);

edtX34.Text := FloatToStr(X[4,3]);

edtX41.Text := FloatToStr(X[1,4]);

edtX42.Text := FloatToStr(X[2,4]);

edtX43.Text := FloatToStr(X[3,4]);

edtX44.Text := FloatToStr(X[4,4]);

edtX51.Text := FloatToStr(X[1,5]);

edtX52.Text := FloatToStr(X[2,5]);

edtX53.Text := FloatToStr(X[3,5]);

edtX54.Text := FloatToStr(X[4,5]);

end;

procedure TfrmMain.btnMinClick(Sender: TObject);

var

p,mi,mj,mi2,mj2,i,j:integer;

abc_temp:table;

min,min2:real;

begin

mmReport.Lines.Add('Minimal element method started.');

gbMain.Caption:='Minimal element method';

btnMin.Enabled:=false;

for i:=1 to m do

for j:=1 to n do

begin

abc_temp[i,j]:=abc[i,j];

X[i,j]:=-1;

end;

p:=0;

while pbegin

//поиск минимального элемента

mj:=-1;mj2:=-1;

mi:=-1;mi2:=-1;

min:=1000000;

for j:=1 to n do

for i:=1 to m do

begin

if(abc[i,j]nr_max)then

begin

mi:=i;

mj:=j;

min:=abc[i,j];

end;

end;

if(mj=-1) or (mi=-1) then

begin

Application.MessageBox('Error.', 'Error');

break;

end;

if(A[mi]=B[mj])then

begin

X[mi,mj]:=A[mi];

A[mi]:=0;B[mj]:=0;

min2:=1000000;

for i:=1 to m do

begin

if (i=mi)then

continue;

if (min2 > abc[i,mj]) and (abc[i,mj]nr_max) then

begin

mi2:=i;

mj2:=mj;

min2 := abc[i,mj];

end;

end;

for j:=1 to n do

begin

if (j=mj)then

continue;

if (min2 > abc[mi,j]) and (abc[mi,j]nr_max) then

begin

mi2:=mi;

mj2:=j;

min2:=abc[mi,j];

end;

end;

{if(mj2=-1) or (mi2=-1) then

begin

Application.MessageBox('Error.', 'Error');

break;

end;}

X[mi2,mj2]:=0;

for i:=1 to m do

abc[i,mj]:=nr_max;

for j:=1 to n do

abc[mi,j]:=nr_max;

p:=p+1;

end

else if(A[mi][b]begin

for j:=1 to n do

abc[mi,j]:=nr_max;

X[mi,mj]:=A[mi];

B[mj]:=B[mj]-A[mi];

A[mi]:=0;

end

else if(A[mi]>B[mj])then

begin

for i:=1 to m do

abc[i,mj]:=nr_max;

X[mi,mj]:=B[mj];

A[mi]:=A[mi]-B[mj];

B[mj]:=0;

end;

SyncMin;

Application.MessageBox('Step.', 'Step');

p:=p+1;

end;

for i:=1 to m do

for j:=1 to n do

abc[i,j]:=abc_temp[i,j];

SyncMin;

mmReport.Lines.Add('Minimal element method finished.');

btnPot.Enabled:=true;

end;

function TfrmMain.OptCheck(var mi:integer;var mj:integer;var max_lamda:real):boolean;

var

i,j:integer;

limit,l,p,ii,jj:integer;

lamda:table;

begin

OptCheck:=true;

mi:=-1;mj:=-1;

limit:=0;

max_lamda:=-1000000;

ii:=1;jj:=1;

for i:=1 to m do

alfa[i]:=-111111;

for j:=1 to n do

beta[j]:=-111111;

p:=1;

alfa[p]:=0;

l:=0;

for i:=1 to m do

for j:=1 to n do

if(X[i,j]>=0)then

limit:=limit+1;

while(pbegin

l:=l+1;

if(alfa[ii]-111111)then

for j:=1 to n do

begin

if((X[ii,j]>0)or((l>=2*n+m)and(X[ii,j]>=0)))and(beta[j]=-111111)then

begin

beta[j]:=abc[ii,j]+alfa[ii];

p:=p+1;

end;

end;

if(beta[jj]-111111)then

for i:=1 to m do

begin

if((X[i,jj]>0)or((l>=2*n+m)and(X[i,jj]>=0)))and(alfa[i]=-111111)then

begin

alfa[i]:=beta[jj]-abc[i,jj];

p:=p+1;

end;

end;

ii:=ii+1;

jj:=jj+1;

if(pn+m)and(jj>=n+1)then

jj:=1;

if(pn+m)and(ii>=m+1) then

ii:=1;

end;

{for i:=1 to m do

if(alfa[i]=-111111)then

begin

//Application.MessageBox('Error.', 'Error');

//max_lamda:=-111111;

//exit;

alfa[i]:=0;

end;

for j:=1 to n do

if(beta[j]=-111111)then

begin

//Application.MessageBox('Error.', 'Error');

//max_lamda:=-111111;

//exit;

//beta[j]:=0;

for i:=1 to m do

if(X[i,j]0)and(beta[j]=-111111)then

beta[j]:=abc[i,j]+alfa[i];

end;}

//Report

for i:=1 to m do

mmReport.Lines.Add('alfa['+inttostr(i)+']='+floattostr(alfa[i]));

for j:=1 to n do

mmReport.Lines.Add('beta['+inttostr(j)+']='+floattostr(beta[j]));

for i:=1 to m do

for j:=1 to n do

begin

if(X[i,j]=-1)then

begin

lamda[i,j]:=beta[j]-alfa[i]-abc[i,j];

//Report

mmReport.Lines.Add('lamda['+inttostr(i)+','+inttostr(j)+']='+floattostr(lamda[i,j]));

if(lamda[i,j]>0) then

begin

//Report

mmReport.Lines.Add('lamda['+inttostr(i)+','+inttostr(j)+']='+floattostr(lamda[i,j]));

if(lamda[i,j]>max_lamda)then

begin

mi:=i;

mj:=j;

max_lamda:=lamda[i,j];

end;

OptCheck := false;

end;

end;

end;

if(max_lamdaOptCheck:=true

else

//Report

mmReport.Lines.Add('Max lamda is '+inttostr(mi)+','+inttostr(mj)+' = '+floattostr(max_lamda));

//if(max_lamda// Application.MessageBox('Error.', 'Error');

end;

function TfrmMain.IsItNewPoint(mway:way_index;mi:integer;mj:integer):boolean;

var

i:integer;

begin

IsItNewPoint:=true;

for i:=1 to mway.lastindex do

if(mway.mway[i].i=mi)and(mway.mway[i].j=mj)then

IsItNewPoint:=false;

end;

function TfrmMain.CheckRule(mway:way_index;lastindex:integer;mi:integer;mj:integer):boolean;

begin

CheckRule:=true;

if(mway.mway[lastindex].i=mi)then

if(lastindex>=2)then

if(mway.mway[lastindex].i=mway.mway[lastindex-1].i)then

CheckRule:=false;

if(mway.mway[lastindex].j=mj)then

if(lastindex>=2)then

if(mway.mway[lastindex].j=mway.mway[lastindex-1].j)then

CheckRule:=false;

end;

function TfrmMain.IsItLastPoint(mway:way_index;mi:integer;mj:integer):boolean;

begin

IsItLastPoint:=false;

if(mway.mway[1].i=mi)or(mway.mway[1].j=mj)and((mway.mway[1].imi)and(mway.mway[1].jmj))then

IsItLastPoint:=true;

end;

function TfrmMain.FindMaxCorrectWay(mway:ways):way;

var

i:integer;

max:integer;

begin

FindMaxCorrectWay:=mway[1].mway;

max:=-1111111;

for i:=1 to n+m do

begin

if(IsItLastPoint(mway[i],mway[i].mway[mway[i].lastindex].i,mway[i].mway[mway[i].lastindex].j))then

if(mway[i].lastindex>max)then

begin

max:=mway[i].lastindex;

FindMaxCorrectWay:=mway[i].mway;

end;

end;

end;

procedure TfrmMain.btnPotClick(Sender: TObject);

var

nothingfound,addedtocurrent:boolean;

l,k,lastindex,i,j,p,oi,oj,mi,mj:integer;

min,max_lamda:real;

mways:ways;

mway:way;

z:single;

issuccess:boolean;

begin

btnPot.Enabled:=false;

mmReport.Lines.Add('Potential method started.');

gbMain.Caption:='Potential method';

issuccess:=true;

while (not(OptCheck(mi,mj,max_lamda)))do

begin

if(max_lamdabegin

issuccess:=false;

break;

end;

//Clearmways(mways);

for i:=1 to m+n do

begin

mways[i].lastindex:=0;

for j:=1 to m+n do

begin

mways[i].mway[j].i:=0;

mways[i].mway[j].j:=0;

mways[i].mway[j].isplus:=false;

end;

end;

mways[1].mway[1].isplus:=true;

mways[1].mway[1].i:=mi;

mways[1].mway[1].j:=mj;

mways[1].lastindex:=1;

p:=1;

k:=2;

while(pbegin

if(mways[p].lastindex=0)then

break;

nothingfound:=false;

k:=k-1;

while(not nothingfound)and(mways[p].lastindexbegin

nothingfound:=true;

addedtocurrent:=false;

lastindex:=mways[p].lastindex;

oi:=mways[p].mway[lastindex].i;

oj:=mways[p].mway[lastindex].j;

for i:=1 to m do

begin

if(X[i,oj]>0)and(ioi)then

begin

if(IsItNewPoint(mways[p],i,oj))and(CheckRule(mways[p],lastindex,i,oj))then

begin

nothingfound:=false;

if(not addedtocurrent)then

begin

mways[p].lastindex:=lastindex+1;

mways[p].mway[lastindex+1].i:=i;

mways[p].mway[lastindex+1].j:=oj;

mways[p].mway[lastindex+1].isplus:=not mways[p].mway[lastindex].isplus;

addedtocurrent:=true;

end else

if(p+kbegin

for l:=1 to lastindex do

begin

mways[p+k].mway[l].i:=mways[p].mway[l].i;

mways[p+k].mway[l].j:=mways[p].mway[l].j;

mways[p+k].mway[l].isplus:=mways[p].mway[l].isplus;

end;

mways[p+k].lastindex:=lastindex+1;

mways[p+k].mway[lastindex+1].i:=i;

mways[p+k].mway[lastindex+1].j:=oj;

mways[p+k].mway[lastindex+1].isplus:=not mways[p+k].mway[lastindex].isplus;

k:=k+1;

end;

//if(IsItLastPoint(mways[p],oi,j))then

//continue;

end;

end;

end;

for j:=n downto 1 do

begin

if(X[oi,j]>0)and(joj)then

begin

if(IsItNewPoint(mways[p],oi,j))and(CheckRule(mways[p],lastindex,oi,j))then

begin

nothingfound:=false;

if(not addedtocurrent)then

begin

mways[p].lastindex:=lastindex+1;

mways[p].mway[lastindex+1].i:=oi;

mways[p].mway[lastindex+1].j:=j;

mways[p].mway[lastindex+1].isplus:=not mways[p].mway[lastindex].isplus;

addedtocurrent:=true;

end

Написать комментарий
Имя:*
E-Mail:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите код: *


Бұл сайтта Қазақстанның түкпір-түкпірінен жиналған қазақ тіліндегі рефераттар мен курстық және дипломдық жұмыстар ұсынылған. Қазіргі таңда www.topreferat.com.kz сайтының қазақ тіліндегі жұмыстар базасы бүкіл интернеттегі ең үлкен база болып табылады! Біздің базадағы жұмыстар саны 15000-нан асады. Біз бұл жетістікпен тоқтап қалмаймыз! Біз базамызды одан әрі толықтырамыз.
» » Транспорт есебі курстық жұмыс

© 2011-2016 Скачать бесплатно на topreferat.com.kz курсовые, дипломные и рефераты на телефон, на планшет и на компьютер.
При копировании материала активная ссылка на источник обязательна.


Мнение посетителей:
 

После 9 класса Вы:

Пойду в 10, 11, закончу школу полностью
Пойду в Колледж
Пойду в ПТУ
Пойду работать
Снова пойду в 9 класс

 
 
Похожие:
  • Смог
  • Азаматтық қорғаныс жүйесінің мақсаттары
  • Азаматтық қорғаныс жүйесінің басқару ұйымдары мен құрылымы
  • Зақымденған ошақтағы құтқару және апатты қайта қалпына келтіру жұмыстары
  • Радиациялық және химиялық барлау құралдары
  • Бейбіт уақыттағы төтенше жағдай
  • Химиялық қауіпті обьектідегі апаттар
  • Опырмалар
  • Сел
  • Метеорологиялық сипаттағы төтенше жағдай
  • Циклондар мен антициклондар
  • Қос мағыналы есептің ережесін тұрғызу курстық жұмыс
  • Тағайындау есебін Т.Е.Венгер әдісімен шешу курстық жұмыс
  • Тасымалдау есептері курстық жұмыс
  • Мәтіндерді шифрлау курстық жұмыс
  • Математикалық маятник тербелісін моделдеу курстық жұмыс
  • Кластар иерархиясы, мұрагерлік, полиморфизм курстық жұмыс
  • Кітапхана автоматтандырылған жұмыс орнының әзірлемесі курстық жұмыс
  • COM – технологиясы курстық жұмыс
  • Мәліметтер базасындағы футбол командалары реферат