Жүзеге асыру мысалы
Дискіні форматтау:
FOR T=0 TO DO
BEGIN
Берілген Т дискісіндегі жолды табу
Бастапқы Т дискісіндегі жолды табу
IF Т жолы табылмады THEN ахау туралы хабарлама печаты және бағдарламадан шығу;
FORS=0 TO DO
BEGIN
БастапқыдискіденSсекторынтабу;
IfсекторыSтабылмадыTHENахаутуралыхабарламапечатыжәнебағдарламаданшығу;
Сектор S құрамынОЕСҚбуферінесанау; ФҚазҰПУ 0703-12-09 Білімалушыларғаарналғанпәнніңоқу-әдістемеліккешені
If секторы S санауғаболмайды THEN ахаутуралыхабарламапечатыжәнебағдарламадан
шығу;
Берілген S дискісіндегіжолдытабу
ОЕСҚбуферін S секторыныңдискісінежазу;
END DO;
END DO;
END PROGRAM.
Бұлалгоритмдискінісектордансекторғасканерлейді, жолданжолғажәнесекторды
бастапқыдискіденберілгендискігекөшіреді. Егер секторды таба алмай немесе санай
алмай жатсаңыз алгоритм өз жұмысын аяқтайды.
Жоғарыда келтірілген алгоритмге мысал:
Programdemo;
Uses graph,crt;
Var gd,gm,t,s,maxx,maxy,i:integer;
Begin
Gd:=DETECT;
Initgraph(gd,gm,’’);
Maxx:=getmaxx;
For t:=1 to 40 do
Begin
Circle(maxx div 4,maxy div 2,t*4);
Circle(3*(maxx div 4),maxy div 2,t*4);
End;
Outtextxy(maxx div 4-textwidth(‘DISC 1’)DIV 2,
Maxy div 8,’DISC 1’);
Outtextxy(3*(maxx div 4)-textwidth(‘DISC 2’)DIV 2,
Maxy div 8,’DISC 2’);
LINE(maxx div 3,7*(maxy div 8),
2*(maxx div 3),7*(maxy div 8));
LINE(maxx div 3,8*(maxy div 8),
2*(maxx div),8*(maxy div 8));
Outtextxy(maxx div 2-textwidth(‘BUFFER’)DIV 2,
6*(maxy div 7)-10,’buffer’);
For t:=1to 40 do
For s:=0 to 7 do
Begin
If keypressed then begin closegraph;halt;end;
Setlinestyle(1,0,3);
Arc(maxx div 4,maxy div 2,s*4,5*(s+1)*45,t*4);
Bar(maxx div 3,7*(maxy div 8),
2*(maxx div 3),8*(maxy div 8));
Arc(3*(maxx div 4),maxy div 2,s*4,5*(s+1)*45,t*4);
Outtextxy(maxx div 2-textwidth(‘READING’)DIV 2,
maxy div 8*7,’READING’);
DELAY(500)
SETCOLOR(BLACK)
Outtextxy(maxx div 4-textwidth(‘READING’)DIV 2,
maxy div 8*7,’READING’);
Arc(maxx div 4,maxy div 2,s*4,5*(s+1)*45,t*4);
For i:=maxx div 3 to 2*(maxx div 3) do
Begin
Line(I,7*(maxy div 8),I,8*(maxy div 8));
Setcolor(WHITE)
Outtextxy(3*(maxx div 4)-textwidth(‘writing’)DIV 2,
Maxy div 8*7,’writing’);
Setcolor(black);
End;
Setcolor(black);
Outtextxy(3*(maxx div 4)-textwidth(‘writing’)DIV 2,
Maxy div 8*7,’writing’);
Arc(3*(maxx div 4),maxy div 2,s*4,5*(s+1)*45,t*4);
Setcolor(WHITE)
Setlinestyle(0,0,1);
Bar (maxx div 3,7*(maxy div 8)
2*(maxx div 3),8*(maxy div 8));
Arc(3*(maxx div 4),maxy div 2,s*4,5*(s+1)*45,t*4);
Arc(maxx div 4,maxy div 2,s*4,5*(s+1)*45,t*4);
End;
Closegraph;
End.
Зертханалықжұмыс 2 сағатқаарналған. Зертханалықжұмыстытапсырубақылау
сұрақтарынажауапберуменжекетапсырманыңорындалуыменанықталады.
Достарыңызбен бөлісу: |