8 Ферзі

Кiрiспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...2
1. Есептiң математикалық қойылымы ... ... ... ... ... ... ... ... ... ... ... ... 3
2.Қолданылған әдістер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...3
2.1. Iздеу алгоритмдерi ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .3
2.1.1 Тосқауылы бар iздеу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...4
2.2.Сорттау алгоритмдерi ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...5
2.2.1. Таңдау арқылы сорттау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..7
2.3 Қосалқы программа ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 8
2.4 Рекусия ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 12
2.5 Графика ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 13
3 Есептің алгоритмі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...14
3.1 Программаның логикалық сипатталуы ... ... ... ... ... ... ... ... ... ... ... ... 14
3.2 Блок.схема ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...17
4 Программаның баяндалуы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
4.1 Жалпы мағлұматтар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
4.2 Техникалық жабдықтар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
4.3 Программаны шақыру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .19
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .24
Пайдаланылған әдебиеттер тiзiмi ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .25
Қосымша (А)
Программа листингі
        
        Мазмұны
Кiрiспе.....................................................................
...................……..…....2
1. Есептiң математикалық қойылымы…………………………………....…..3
2.Қолданылған
әдістер................................................................………….
......3
2.1. Iздеу алгоритмдерi…………………………………..................…....…..3
2.1.1 ... ... ... Таңдау арқылы сорттау…………………….......……………...…...…7
2.3 Қосалқы
программа...................................................................
.............8
2.4
Рекусия.....................................................................
...............................12
2.5
Графика.....................................................................
...............................13
3 Есептің
алгоритмі...................................................................
........................14
3.1 ... ... ... Программаның
баяндалуы...................................................................
.........
4.1 Жалпы
мағлұматтар.................................................................
.............
4.2 Техникалық
жабдықтар...................................................................
......
4.3 Программаны шақыру....................
.....................................................19
Қорытынды...................................................................
..................................24
Пайдаланылған әдебиеттер
тiзiмi.................................................................25
Қосымша (А)
Программа листингі
Кiрiспе
Ойын деген – ойын сауық, демалыс, спорттық жарысқа ... ... Ойын ... ... өсiрiп, ойын сергiтiп қана қоймай, сонымен қатар
оның таным-түсiнiгiн арттырады.
Осындай ойындардың бірі – ... ... ... кім ... бәрі ... ... ... дейін.
Бірақ айтып өткенім жөн. Бұл өте қызықты ойын ... ... ... Бұл ... сол ... ойшылдар махараджаларға арнап жасаған да
оларға бұл ойын өте қатты ... ... ... бұл ... тек ... ғана ойнай алды, егер қарапайым адам оны ойнаса ол адам өлім
жазасына ... ... ... шахмат ойнының арқасында үлкен
қолбасшы болуға және соғыста шебер соғысуды үйренуге ... деп ... егер ... бұл ... ... олар ... асып ... деп
қауіптенде. Шынында да шахмат ойыны өте қызықты және ... ... ... ... ең ... және де ... ... санды бір – біріне ұқсамаған ойындар ойналу ... Бұл ... ... жету ... ... тек қана ... ... шығу үшін бұл ойынды
көр ойнау керек оны үйрену керек, омен көп айналасу ... ... ... керек.
Қазіргі кезеңде шахмат ойыны биік шыңға жетті. Оны миллиондаған санды
адамдар күнделікті ойнайды. Бұл ойын ... зор – ... ... ... біріне айналды. Шахматтан әлем чемпионаттары ... де ... ... ... ... өткізіледі. Бұл ойынды жақсы
меңгерген жас өспірімдер ... ... ... болады. Және бұл ойын
адамның болашағына көп – көп көмектеседі.
Жаңа технологиялардың дамуына байланысты компьютерлік шахматтар ... және де енді ... ... ... ... ... ... шахматтың адам баласына қаншалықты маңызды екенін көрсетеді.
Шахмат тақтасы 8 × 8 ... ... ... Оның екі жағында ақ және
қара ... екі ... жақ ... ... ... ... жеңу немесе мат
қою.
Негзінен алты түрлі фигуралар бар, олар: пешка, ат, піл, тура, ферзь
және ... ... ... ... 8 жол және 8 баған бар.
Жолдары: 1,2,3,4,5,6,7,8.
Бағандары: a,b,c,d,e,f,g,h.
Ал енді олар қалай жүреді? Пешка 1 ... ... піл ... ... «Г» әрпі ... тура ... ... параллель,король жан –
жағына бір клеткаға, ал ... ... піл және тура ... жүре ... ол ең ... фигура. Міне сол себепті біз ... ... осы ... ... ... ... Есептiң математикалық қойылымы
Бұл курстық жұмыста «8 Ферзі» тапсырмасы қарастырылған. Бұл ойын
тек қана ... құру ғана емес және де ... ... пайдаланып,
оны экранда шығару-бұл деген сөз графикалық режиммен де жұмыс істей ... ... » ... ... ... ... 8 ... бір
ферзі жейтіндей орналастыру. Және де осы көріністі графикалық ... оны ... ... ... ... ... алгоритмдерi
Iздеу алгоритмдерi мысалы массивте ... ... ... табу үшiн қолданылады. Әдетте элементтiң алғашқы және соңғы
кiрулерiн iздеудегi есеп берiлгендерiмен ... ... ... ... N ... ... А ... Х-қа тең элемент iздеу
керек деп есептеледi.
2.1.1 Тосқауылы бар iздеу
Тосқауылы бар iздеу ... рет ... ... ... ... iздей бермеу идеясынан тұрады. Бұны массивке тосқауыл орнату: ... ... ... ... ... арқылы жүзеге асыруға
болады. Бұл жағдайда индекстiң өзгеруiне шек қойылады.
Ендi тек iздеу шарты ғана қалып, табылған элементте немесе ... ... ... ... ... циклдан шыққаннан кейiн бiз
тосқауылды тапқан жоқ па ... ... ... бар iздеудi
есептеу қиындығы сызықтыға қарағанда төмен, ... ... ... ... – массив элемент саны бар.
Тосқауылды орнатудың екi тәсiлi бар: қосымша элемент немесе массивтiң
ең шеткi элементiнiң орнына.
Мысалы: ... бар ... ... ... of ... {N1 then ... ... (N-1)
End;
Begin
Writeln (factorial(3));
End.
2.5 Графиктік режиммен жұмыс істеу
Компьютердің мониторы нүктелердің (пиксельдардың) жиынтығынан тұрады.
Ал ... ... ... ... ... ... қарастырылды.
Егер тиісті режимде тек символдармен ғана жұмыс ... ... ... ... ... ... ... Мысалы текстік режимде символдар
түсін өзгертуге болатын болса, графиктік режимде ... ... ... ... ... ... фигуралар мен текстердің түстерін
әртүрлі қылып шығаруға болады. ... ... ... ... мен оның ... ... байланысты. Монитор кәдімгі
телевизор секілді жұмыс істейді. Экрандағы бейнелер секундына 25 рет ... ... ... ... ... көзі ... кадрлардың тез ауыстырылып
жатқанын сезбейтіндіктен, оған экрандағы бейне бір орында тұрғандай болып
әсер етеді.
Графиктік режимде ... ... ... үшін ... ... Бейнелерді құрайтын нүктелер экранда қатарлар бойынша реттеліп
орналасатындықтан, бір қатардағы нүктелер Х осі бойынша солдан оңға ... деп, ал ... - Y осі ... ... ... қарай өзгереді
деп алынады. Нүктелердің басы ретінде экранның сол жақ жоғарғы ... және y=0 деп ... Ал ... ... (MaxY) мен ... ... саны (MaxX) видеоадаптердің типі мен оның ... ... ... Pascal – да ... режимде жұмыс істеуге арналған арнаулы
функциялар мен процедуралар GRAPH модулі 80-ге жуық графиктік ... ... және ... стандартты тұрақтылардын тұрады. Оларды
текстік режимде пайдалану үшін ... ... ... амалдар орындау
қажет:
1. USES қызметші сөзінде GRAPH млдулі жазылады; USES GRAPH
2. Графиктік режим орнатылады:
Var d1, d2 : ... ... ... d2, ‘C:\Turbo\Graph’);
Мұндағы: InitGraph – графикалық режимді орнату процедурасы, d1- графиктік
режим драйверінің типін, d2 – ... ... ... ... ... Бұл ... монитор мен видеоадаптер типтеріне
байланысты болады. Егер программада графиктік ... ... ... ... ... ... ... онда InitGraph процедурасы
автоматты түрде өзіне керекті графиктік драйвердің типін және монитор мен
видеоадаптердің ... ... ... ... ... ... ... Апострофтардың ішінде орналасқын үшінші параметр Graph.tpu файлының
дискіде орналасқан жолын көрсетеді. Егер ол Turbo Pascal терезесін ... ... ... ... ... ... жол орнына іші бос
екі апостроф қойылып кетеді.
3. Есетің алгоритмі.
Бұл бағдарлама негiзiнен бiр функция, үш процедура және өзiнiң негiзгi
денесiнен ... ... ... ... Random – ... Бұл функцияның негiзгi атқаратын қызметi – ол
компьютердiң белгілі бір позицияны ... ... ... ... бір ... бір ... жасырады. Ол позиция бойынша сол тақтада
бес ... бір ... ... ... ... ... оны экранға
шығару, сонымен осы тапсырманы орындау ... ... шарт ... ... ... ... ... ферздер болу керек;
ә) олар тақтада орналасқанда олардың біреуі қалғандарын міндетті түрде ... және де бұл ... ... ... оны ... режим арқылы
экранға шығарып дұрыс көрсету керек.
2. Doska– процедурасы. Бұл процедураның ішінде ... ... ... ... ... ... ал өзі ... жатпайтын, яғни шахмат
тақтасының суреті салынады. ... ... ... ... ... және ... шартты операторларын қолданып,
тақтаның суретін салған. If…Then…Else шартты операторлары ... ... тақ және жұп ... ... SetColor ... ... түс берген.
3. {oformlenie titula} – бөлігі. Бұл ... ... ... ... Бұл бөлікте программаның бет-келбетiн, яғни заставкасын
келтiредi, ... ... ... ... CRT, GRAPH модульдерiнiң
(кiтапханаларының) мүмкiншiлiктерiне негiзделген. Экранның қақ ... аты ... және ол ... сөздерден айрықша үлкен қарптермен
берiлген. Ал оның төменгі жағында кіші қаріптермен ойынның ... ... ... болып берілген.
4. Ferz–процедурасы. Бұл процедураның негiзгi атқаратын қызметi – ойындағы
негізгі фигура ... ... ... ... ... Line – функция. Бұл функцияның атқаратын қызметі – линиялар ... ... бір ... ... Оның ... екі ... линияның басының, ал
келесі екі координаттары соңының координаттары болып табылады.
6. SetFillStyle – функция. Бұл ... ... ... -
7. ... ... денесi. Бағдарлама ойынның негiзгi шарттарын
ойыншыға жеткiзедi, жоғарыдағы аталған функция мен процедураларды
қолданады. Сонымен қатар ойыншының атын енгiзуге мүмкiндiк береді.
8. Rectangle – ... Бұл ... ... ... – тік бұрыш салу.
Яғни мен бұны тік төртбұрыш салу үшін ... ... екі ... сол ... , ал ... ... оң жақ ... бұрышының
координаттары.
4. Блок-схема 8
1 ... 10
3 ... j:=1 To 8 ... ... ... ... 63
55 64
56 ... ... ... ... ... ... ... Жалпы мәліметтер.
Программа Borland 7.0 версиялы, 16 битті компилторы бар ... ... ... then else- шарт ... ... файыл айнымалысын меншіктеу.
Reset- дискідегі бар файлды ашу процедурасы.
rewrite- жаңа файлды ашу ... шарт ... ... ... көшу нұсқауы осы функцияларды қолдану арқылы
программаны құру.
Close- ашылған файлды ашу процедурасы.
4.3 Қолданылған техникалық ... – Intel Celeron 333 ... – Samsung ... ... – 320 ... – 32 ... – HP DeskJet 930 ... мәліметтер.
Ойынның барысында берілген фигуралардың координаталары беріліп, осының
нәтижесін ... ... ... ... мәліметтердің арқасында компютер программа бойынша сол
фигураларды шахмат тақтасында берілген координаталары бойынша орналастырады
да осы ... ... ... ... жобада жазылған программаның негізгі мақсаты ыңғайлы және
интерактивті анықтама ... ... жазу үшін ... ... мен ... ... ... қарастырып, сонымен қатар қазіргі
соңғы жаңалықтарды біліп, ... ... ... ... Хоар тәсілі,пузырёк тәсілі және бинарлық іздеу тәсілі және ... ... ... бейнелеу. Құрылған анықтамадан сіз ... жаза ... және оны ... ... арқылы оны экранға
шығарып нәтижесін көре аласыз.. Анықтама көрнекті болу үшін оған заставка
жасалған. Ал, ... ... ... ... ... Turbo Pascal
және Turbo C программалау тілдерінде ... ... жазу ... Pascal ... ... файл типін тағы бір қайталап өттім,
яғни 1 курстағы тақырыптарды ... ... ... ... болады. Turbo
Pascal тілінде программаны жазу кішкене ... ... деп ... бұл ... ... ... ... біршама көп шамемен 140
оператордай болды. Ал есептің ... ... ... бұл ... өте ... және ... ... ұмытпағанымыз жөн, себебі осы есепке
жазылған программаны одан әрі ... ... Және оны ... ... ... Жалпы осы курстық жобадан алған тәжірибемнің
орасан зор екендігін атап өткім ... ... ... ... В. ...... BHV, 2001.
2. Роджерс Д. Алгоритмические основы машинной графики. – ... ... Вирт Н. ... + ... ... = программы. – Москва, “Мир”,
1985.
4. Вирт Н. Алгоритмы и структуры данных. – Москва, ... ... ... ... ... ... ... білім 1993
6. Бөрібаев «Информатика және компьютер» Алматы 1995
7. ... В.В. Turbo Pascal 7.0. ... ... – Москва, “Нолидж”,
2001.
8. Н.Ы. Омарова, К.У. Тұрмағамбетова, К.Н. Нүриденова. Паскаль тiлiнде
программалау негiздерi. Алматы, “Бiлiм”, ... ... ... Бақтайұлы. Паскаль тiлiн үйренейiк. Шымкент, 1993
Қосымша (А)
Программаның сипаталуы
1. program kurs;
2. uses crt,graph;
3. label m1,m2,qq,m3,m4;
4. const n=8;
5. var a:array [1..n,1..n] of ... ... ... ... {shahmat taktasin sizu}
10. procedure doska;
11. begin
12. for i:=1 to n do
13. for j:=1 to n do
14. ... if (j mod 20) and (i mod 20) then ... if (j mod 20) and (i mod 2=0) then ... if (j mod 2=0) and (i mod 20) then sv:=15;
18. if (j mod 2=0) and (i mod 2=0) then ... ... ... ... setcolor(3);
23. setlinestyle(0,0,3);
24. rectangle(100,50,500,450);
25. end;
26. {ferzdin suretin salu}
27. procedure ferz(x,y,zv:integer);
28. begin
29. ... ... ... ... ... line(x-10,y+5,x-5,y+10);
35. line(x+10,y+5,x+5,y+35);
36. line(x-10,y+5,x-5,y+35);
37. line(x+15,y+40,x+5,y+35);
38. line(x-15,y+40,x-5,y+35);
39. line(x+15,y+40,x+15,y+45);
40. line(x-15,y+40,x-15,y+45);
41. line(x+15,y+45,x-15,y+45);
42. ... ... ... ... ... begin
47. initgraph(dr,md,'');
48. setcolor(2);
49. setlinestyle(0,0,3);
50. setfillstyle(1,1);
51. rectangle(10,10,630,470);
52. bar(15,15,625,465);
53. setcolor(2);
54. settextstyle(0,0,8);
55. outtextxy(45,100,'KURCOVAIA');
56. outtextxy(95,200,' ... ... ... rectangle(40,90,620,420);
60. readkey;
61. m3:
62. for i:=1 to n do
63. for j:=1 to n do
64. a[i,j]:=0;
65. randomize;
66. ii:=random(8)+1;
67. jj:=random(8)+1;
68. ... ... for i:=2 to 5 ... begin
72. qq:k:=0;
73. ii:=random(8)+1;
74. jj:=random(8)+1;
75. if a[ii,jj]1 then a[ii,jj]:=1 else goto ... ... if jjn ... ... ... ... ... inc(l);
e. if a[ii,l]=1 then begin t:=1; inc(k); end;
f. until ... ... ... if jj1 ... ... ... ... repeat
d. dec(l);
e. if a[ii,l]=1 then begin t:=1; inc(k); end;
f. until l=1;
83. end;
84. {###################}
85. if ii1 ... ... ... l:=ii;
c. repeat
d. dec(l);
e. if a[l,jj]=1 then begin t:=1; inc(k); ... until ... ... ... if iin ... begin
a. t:=0;
b. l:=ii;
c. repeat
d. inc(l);
e. if a[l,jj]=1 then begin t:=1; inc(k); end;
f. until l=n;
91. end;
92. {#####################}
93. if (iin) and (jjn) ... ... ... ... l1:=jj;
d. repeat
e. inc(l);
f. inc(l1);
g. if a[l,l1]=1 then begin t:=1; inc(k); end;
h. until (l=n) or (l1=n);
95. end;
96. {########################}
97. if (ii1) and (jj1) ... ... ... l:=ii;
c. l1:=jj;
d. repeat
e. dec(l);
f. dec(l1);
g. if a[l,l1]=1 then begin t:=1; inc(k); ... until (l=1) or ... ... ... if (ii1) and (jjn) ... ... ... l:=ii;
c. l1:=jj;
d. repeat
e. dec(l);
f. inc(l1);
g. if a[l,l1]=1 then begin t:=1; inc(k); end;
h. until (l=1) or (l1=n);
103. end;
104. {##########################}
105. if (iin) and (jj1) ... ... ... l1:=jj;
c. repeat
d. inc(l);
e. dec(l1);
f. if a[l,l1]=1 then begin t:=1; inc(k); end;
g. until (l=n) or ... ... if k=0 ... ... a[ii,jj]:=0;
b. goto qq;
110. end;
111. end;
112. setfillstyle(9,6);
113. bar(0,0,640,480);
114. setcolor(10);
115. settextstyle(0,0,3);
116. outtextxy(100,20,'EXIT - pres "ESC"');
117. doska;
118. for i:=1 to n ... for j:=1 to n ... if a[i,j]=1 then ... for i:=1 to n do
122. for j:=1 to n do
123. if a[i,j]=1 then
124. for ii:=1 to n ... for jj:=1 to n ... if ((iii) or (jjj)) and ... ... begin
c. if (i=ii) or (j=jj) then
d. begin {tik ... ... ... ... end;
i. if (abs(i-ii)=abs(j-jj)) then
j. begin {kolbey linia}
k. setcolor(1);
l. setlinestyle(0,0,3);
m. line(75+j*50,i*50+25,75+jj*50,25+ii*50);
n. end;
o. end;
126. m4:ch:=readkey;
127. if ch=#13 then goto ... if ch=#27 then exit else goto ... (2, ... ... (solidfill,0)
Outtextxy
Bar (0, 0, ... ... : ... ... 'H' ... W:=1 To 8 Do
OutTextXy (55+D,50,Ch)
X[W,J]:=X[W,J]-1
OutTextXy (60,50+D,S)
X[I,W]:=X[I,W]-1
a:=i;b:=j;
SetFillstyle (1,1)
If odd(a-b)
For a:=1 To 8 Do
SetFillStyle(1,15)
Bar (b*30+50,a*30+50,b*30+80,a*30+80)
SetTextStyle(1,0,2)
SetTextStyle ... ... ... ... ... ... (2, HorizDir, 2)
I:=8;J:=8
outtextxy(200,400,'Шығу үшін кез-келген пернені басыңыз')
Gs:=Detect
i:=i+1;
InitGraph(Gs,Gm,'A:\Bgi');)
keypressed
KOR(5);
konez
i:=1
Шығару
N
CloseGraph
Setcolor (i)
соңы
7
18
15
19
16
27
For j:=1 To 8 Do
For i:=1 To 8 ... b:=1 To 8 ...

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 21 бет
Бұл жұмыстың бағасы: 500 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
5 ферзі22 бет
8 ферзь11 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь