Келесіпрограммаэкранныңортасындатерезесызып, оныкезкелгентүзулерментолтырады.
Uses CRT, Graph;
Var d,r,c: integer;
x1, x2, y1, y2: integer;
Begin
d:= detect;
InitGraph(d, r,’ ’); c:= GraphResult;
if c <> grok then Writeln(GraphErrorMSG©)
else begin
x1:= GetMaxX div 4;
y1:= GetMaxY div 4;
x2:= 3 * x1;
y2:= 3 * y1;
Rectangle(x1, y1, x2, y2);
SetViewPort(x1+1,y1+1,x2-1,y2-1, ClipON);
repeat
setcolor(succ(random(16));
line(random(x2-x1),random(y2-y1),random(x2-x1),random(y2-y1);
until keypressed;
Шеңберлерменэллипстер.
Процедура Circle. Шеңбердi салады. Жазу ережесі: Circle(x, y: integer, r: Word); . x,y- шеңбер ортасының координаттары, r- шеңбер радиусы. Мысалы Circle(50,100,25)
Процедура Arc. Шеңбер доғасын сызады.
Arc (x, y: integer, BegA, EndA, r: Word);
x, y- центр координаты‚ BegA, EndA- бастапқы және соңғы бұрыштар, r- радиус.
Процедура Elipse(x,y,a,b,rx,ry) эллипс салу процедурасы. x,y- эллипс ортасының координатасы, a,b- бастапқы және соңғы бұрыштары, rx,ry-радиустары. Мысалы: Ellipse(100,100,0,360,20,50); - толық эллипс сызады. Ellipse(100,100,0,180,20,50); - эллипстiң жоғарғы жағын сызады. Ellipse(10,100,180,0,20,50); - эллипстiң төменгi жағын сызады.
Процедура Rectangle(x1,y1,x2,y2) Rectangle- тiктөртбұрыш салу процедурасы. x1,y1,x2,y2- қарама-қарсы бұрыштарының координаттары. Rectangle(100,100,200,200)
Процедура Bar(x1,y1,x2,y2) - тіктөртбұрыш салу процедурасы. x1,y1- сол жақ жоғарғы бұрышының, x2,y2- оң жақ төменгi бұрышының координаттары.
Bar(50,200,250,400)
Процедура Bar3d(x1,y1,x2,y2,a,b) - трапеция салу процендурасы. x1,y1- сол жақ жоғарғы бұрышының, x2,y2- оң жақ төменгi бұрышының координаттары, а- тереңдiгi, b- boolean типті айнымалы. Егер b=true болса, онда трапецияның iшкi аумағын бояуға болады.
Процедура SetFillStyle (стиль, түсі) - аумақтарды бояу үшiн қолданады. түсі- түсiн анықтайды. Стиль- параметрi ретiнде төмендегi тұрақтыларды қолдануға болады.
Тұрақты Облысты толтыру стилi
EmtyFill Түссіз
SolidFill Тұтас негiзгi түспен бояу
LineFill Горизонталь штрихпен сызылады
LtSlashFill Солға 45 градус жiңiшке сызықпен сызылады
SlahFill Солға 45 градус сызықпен сызылады
BkSlashFill Оңға 45 градуста жiңiшке сызықпен сызылады
LtBkSlashFill Оңға 45 градуста сызықпен сызылады
HachFill Тор штрих пен сызылады
XhatchFill 45 градус сирек сызықтармен штрихтау
InterleavFill 45 градус жиi сызықтармен штрихтау
WidedotFill Сирек нүктелермен толтыру
CloseDotFill Жиi нүктелермен толтыру
UserFill Толтыру типiн програмист анықтайды
Мысалы SetFillStyle(SolidFill,4)
Төмендегi программа осы толтыру стильдерiн пайдаланып, геометриялық фигуралардың iшкi аумақтарын толтырады.
Program setfill;
Uses Graph;
Const FillConst: array[0..11] of string=(‘EmptyFill’, ‘SolidFill’, ‘LineFill’, ‘LtSlashFill’, ‘SlashFill’, ‘BkSlashFill’, ‘LtBkSlasFill’, ’HatchFill’, ‘XHatcFill’, ‘InterleaveFill’, ’WideDotFill’, ’CloseDotFill’);
Var grDriver: integer; grMode: integer; grPath: string;
ErrCode: integer;
i, j: integer;x, y: integer;
w, h: integer;
Begin
grDriver:= VGA; grMode:=VGAHi;
grPath:='d:\tp\bgi';
InitGraph(grDriver, grMode,grPath);
ErrCode:= GraphResult;
if ErrCode <> grOk then Halt(1);
w:=60;h:=60;
for i:=0 to 2 do
for j:=0 to 3 dobegin
x:=10+j*120;
y:=10+i*100;
SetFillStyle(i*4+j,White);
Bar(x,y,x+w,y+h);
OutTextXY(x,y+h+5,FillConst[i*4+j]);
end;
readln;
CloseGraph;
end.
Текстіэкранғашығару.
Программаграфикалықрежимдетекстікақпараттыэкранғашығараалады. СоныменқатарайнымалылардыңмәнінWrite, Writeln-процедураларыкөмегіменшығараалады.
OutText , OutTextXY- поцедуралары.
ПрограммадаграфикалықрежимдеOutText, OutTextXYпроцедураларыкөмегіментекстікинформацияларэкранғашығарылады.
OutText - процедурасытекстішығарукөрсеткішітұрғаннүкеденбастапшығарады.
OuttextXY - процедурасы тексті нақты көрсетілген нүктеден бастап шығарады.
OutTextXY(x, y, текст)Мысалы: OutTextXY(100,100,’TURBOPASCAL’)
Программист текст шрифтің стилін өзгерте алады. Шрифті өзгерту үшін SetTextStyle- поцедурасы қолданылады.
SetTextStyle(шрифт, ориентация, өлшем)
Шрифт - параметрі ретінде келесі консталар қолданылады.
Константа Мәні Шрифт
DefaultFont 0 Cтандартты.
TriplexFont 1 Triplex
SmollFont 2 Майда
SansSerifFont 3 SansSerif
Gothicfont 4 Готикалық
Анимация деп тұрғызылған бейненің экранда жылжуын айтады. Ол келесі жолмен ұйымдастырылады:
Қажетті түспен графикалық объект тұрғызылады;
Белгілі бір уақыттан соң сол бейне экранның фонының түсімен тұрғызылады, яғни ол экраннан жойылады;
Объектің координаттары өзгертіледі;
пункт 1 әрекеттерін қайта орындау
Жерден ашық кеңістікке ұшып бара жатқан ракетаның бейнесі бар анимациялық бейне тұрғызу керек.
Программатексті:
PROGRAM LAB_10;
USES GRAPH, CRT;
CONST N=1000;
TYPEPIXEL TYPE=RECORD {жұлдыздар координатасы}
XP, YP:INTEGER;
END;
VAR A,U,E,X,Y,DX,DY,I,SIXE,INTEGER;
P:ARRAY [1…N] OF PIXELTYPE; {жұлдыздар координатының массиві}
T:POINTER; {көрсеткіш}
PROCEDURE STARSKY;
BEGIN
SETBKCOLOR(0);
RANDOMIZE;
FOR I:=1 TO N DO
WITH P[I] DO
BEGIN
XP:=RANDOM(GETMAXX-10);
YP:=RANDOM(GETMAXY-10);
END;
REPEAT
FOR I:1 TO N DO
WITH P[RANDOM(N)DO]
RUTPIXEL(XP,YP,15);
IF NOT KEYPRESSED THEN
FOR I:=N DOWNTO 1 DO
WITH P[RANDOM(N)] DO
PUTPIXEL(XP,YP,0);
UNTIL LEYPRESSED;
END;
PROCEDURE PLANETS;
BEGIN
SETCOLOR(12); {Сатурндысаламыз}
ELLIPSE(120,100,0,360,50,40);
SETFILLSTYLE(1,12);
FLOODFILL(120,100,12);
SETCOLOR(14);
SETLINESTYLE(0,1,3);
ELLIPSE(120,100,155,25,60,25);
SETLINESTYLE(0,1,1); {Венераны саламыз}
SETCOLOR(6);
CIRCLE(400,350,20);
SETFILLSTYLE(1,6);
FLOODFILL(400,350,6);
SETCOLOR(4); {Марсты саламыз}
CIRCLE(500,400,40);
SETFILLSTYLE(1,4);
FLOODFILL(500,400,4);
SETCOLOR(3); {Жерді саламыз}
ARC(0,470,0,90,150);
LINE(0,470,0,320);
LINE(0,470,150,470);
SETFILLSTYLE(1,3);
FLOODFILL(10,400,3);
SETLINESTYLE(0,1,3);
SETCOLOR(10);
FOR I:=153 DOWNTO 110 DO
BEGIN
ARC(0,470,0,I-100,I-3);
ARC(0,470,0,I-70,I-3);
END;
END;
PROCEDURE RAKETA;
BEGIN
SETLINESTYLE(0,1,1);
SETCOLOR(8); { ракетаның корпусын саламыз }
LINE(150,350,200,300);
LINE(200,300,210,310);
LINE(210,310,160,360);
LINE(160,360,150,350);
SETFILLSTYLE(1, 8);
FLOODFILL(155,350,8);
SETCOLOR(7); {ракетаның ұшын саламыз}
LINE(200,300,220,290);
LINE(220,290,210,310);
LINE(210,310,200,300);
SETFILLSTYLE(1,7);
FLOODFILL(210,305,7);
SETLINESTYLE(0,1,3); { ракетаның қанатын саламыз}
SETCOLOR(8);
RECTANGLE(150,350,160,340);
RECTANGLE(160,340,170,360);
SETCOLOR(4); {жалынын саламыз }
LINE(150,360,140,370);
LINE(145,355,135,365);
SETCOLOR(14);
LINE(148,358,138,368);
LINE(155,365,145,375);
END;
BEGIN
{ графиканы инициалдаймыз }
DIRECTVIDEO:=FALSE;
A:=DETECT;
INITGRAPH(A,U,’C:\BP\BGI’);
E:=GRAPHRESULT;
IF E<>GROK THEN
WRITELN(GRAPHERRORMSG(E))
ELSE
BEGIN
CLRSCR;
CLEARDEVICE;
SETVIEWPORT(0,0,GETMAXX,GETMAXX,CLIPON);
PLANETS;
RAKETA;
SIZE:=IMAGESIZE(120,250,300,370);
GETMEM(T,SIZE);
GETIMAGE(120,250,T^,XORPUT);
{стираем построенное}
PUTIMAGE(120,250,T^,XORPUT);
STARSKY;
X:=120;
Y:=250;
DX:=10;
DY:=10;
{ ракетақозғалысын имитациялаймыз }
FOR I:=1 TO 50 DO
BEGIN
X:=X+DX;
Y:=Y-DY;
PUTIMAGE(X,Y,T^,XORPUT);
DELAY(1000);
PUTIMAGE(X,Y,T^,XORPUT);
END;
END;
IF READLEY+#THENX:=ORD(READKEY);
CLOSEGRAPH;
END.
Бақылау сұрақтары.
Стандартты модульдер.
Turbo Pascal 7.0 программалау жүйесінде экранның графикалық режимін қосу.
Графикалық примитивтерді бейнелеу процедуралары.
Анимация деген не?
САБАҚ ЖОСПАРЫ «Бекітемін»
________________
Оқу ісінің меңгерушісі
«___________» ________201 ж
Пән аты: Информатика
Класы: 9 «А», 9 «Б», 9 «В»
Сабақтың тақырыбы: Дыбыстық әсерлерді баптау, бейнені шығару.
Сабақтың мақсаты:
Анимацияланатын құжатқа дыбыс қосу тәсілін көрсету, сөйтіп дыбыстық құжат кұруға үйрету. Логикалық ойлау қабілеттерін, программада жұмыс істеу дағдыларын дамыту.
• Пәнге деген қызығушылықтарын арттыру.
Сабақтың көрнекілігі: компьютер, Macromedia Flash MX программасы, тапсырма кар- точкалары.
Сабақтың әдістері: түсіндіру, сұрақ-жауап, көрнекілік қолдану, тэжірибелік эдіс. Сабақтың типі: тәжірибелік элементі бар жаңа тақырыпты түсіндіру сабағы.
Өтілетін орны: информатика сыныбы.
Оқушылар білуі тиіс: Macromedia Flash MX программасында жұмыс істеуді. Оқушылар меңгеруі тиіс: дыбыс эффектілерін, дыбыстық құжаттарды құруды, жария- лауды, Flash MX-те фильмдерді жариялауды жэне экспорттауды.
Сабақтың барысы
Ұйымдастыру кезеңі Оқушыларды ұйымдастырып, түгендеу.
Үй тапсырмасын тексеру кезеңі
Үйге берілген тапсырманың орындалуын тексеру
Жаңа тақырыпты үйрету кезеңі
Теория
Flash анимация дыбысты да қабылдай алады. Мұнда дыбысты қолданудың бірнеше эдісі бар. Сендер тоқтамай, сюжеттің мазмұнына қарамай, қолданушының эрекетіне жауап бермей, ойнап тұра беретін дыбыспен жабдықтай аласыңдар. Ал жоба одан эрі қызықты болу үшін эр батырманы басқанда дыбыс шығатындай етуге болады. Жэне тагы бір жолы - ActionScript сценарийлерін пайдалану.
Flash-те дыбысты біріктірудің екі үлгісі карастырылған: Оқиғалы-басқару (Eventsound) жэне Ағымды (Streamsound). Оқиғалы-басқару дыбыс кезінде берілген кад- рлар аяғына дейін жүктеліп болғаннан кейін дыбыс оны тоқтатқанға дейін ойнатыла береді. Ал ағымды баскару үшін алғашқы кадрлар жүктелгеннен кейін-ақ ойнату ба- сталып кетеді.
Дыбыспен жұмыс істеу оңай болу үшін, Flash авторларға келесі мүмкіншіліктерді ұсынады:
Дыбысты кітапханаларға бөліп қоюға болады, яғни енді бір кітапханадағы дыбысты бірнеше фильмдерде қолдануға болады.
• Дыбысты экспортталатын фильмнің сапасы мен колеміне қарап, параметрлерін өзгертуге болады, яғни автор, дыбыс сығу жолын озі таңдай алады.
Сондай-ақ, дыбысты модификациялау үшін эртүрлі қосымша эффектілерді қолдана аласыңдар.
1. Фильмге дыбыстық эсер беру үшін ең алдымен, қажетті файлды File =>Import =>ImporttoLibrary(Файл => Импорт => Кітапханаға импорттау) бұйрығы арқылы импорттаймыз;
Insert Layer (Қабатты кою) бүйрығының көмегімен жа- ңа қатпар қүрамыз жэне оған «Дыбыс» деген атау бе- рейік;
TimeLine қатарында «Дыбыс» қатпарының 1-ка- дрын ерекшелейміз жэне Қасиеттер бөлімінің Sound
панелінде Startup.wav файл таңдаймыз жэне фильмді тестілейміз;
Қосымша дыбыстық эсерлер беру үшін Effect бөлімінен қажетті эсер типін таңдауға болады. Ол үшін «Дыбыс» қатпарының бірінші кадрын белгілеп аламыз да, Effect бөлімінен Fade in (Өсу қарқыны) типін таңдаймыз жэне фильмді орындауға жіберген кезде локомотив жақындаған сайын дыбыстың қаттырақ шығатынын байқауга болады (25-сурет).
25-сурет. Дыбыс эффектісін беру панелі
Үйге тапсырма беру
Тақырыпты оқу.
Дыбыс біріккен анимациялық қүжат құру.
Бағалау кезеңі
Сабақта тапсырманы орындағанына, меңгерген деңгейіне байланысты бағалаймыз.
САБАҚ ЖОСПАРЫ «Бекітемін»
________________
Оқу ісінің меңгерушісі
«___________» ________201 ж
Пән аты: Информатика
Класы: 9 «А», 9 «Б», 9 «В»
Сабақтың тақырыбы: Қорытынды жобаларды әзірлеу.
Сабақтың мақсаты:
Білімділігі: Оқушылардың Паскаль программалау тілінен алған білімдерін тексеру;
Дамытушылығы: Оқушылардың ойлау қабілетін, логикалық-абстракциясын дамыту;
Тәрбиелік: Оқушыларды тиянақтылыққа, ұқыптылыққа тәрбиелеу.
Сабақтың түрі: сынақ жұмысы
Сабақтың барысы:
1. Ұйымдастыру
2. Сынақ тапсырмаларын орындау
3. Сынақ жұмысын талдау
4. Үйге тапсырма
Паскаль – программалау тілі бойынша тест
І нұсқа
1. Паскаль программалау тілінің авторы кім?
А) Блез Паскаль Ә) Никлаус Вирт Б) Н.Верджино В) Чарльз Беббидж
2. Нақты Х айнымалысын сипаттаңыз:
А) var x: integer var x: real const x: real var x: real
3. b = 3/ a, мұндағы а бүтін сан болса, b – нің типі қандай болады?
А) real Ә) integer Б) string В) boolean
4. Паскаль тіліне Х санының бүтін бөлігін алу үшін қндай функция қолданылады?
А) INT (X) Ә) ABS (X) Б) ABC (X) В) TRUNC (X)
5. Var қызметші сөзі не үшін қолданылады?
А) тұрақтыларды сипаттау Ә) белгілерді сипаттау Б) айнымалыларды сипаттау В) программа тақырыбы
6. Тұрақтыларды сипаттау операторын көрсет
А) Char Ә) const Б) var В) label
7. Құрама шарт қалай жазылады?
А) and, goto, not қызметші сөздері арқылы Ә) and, or, of қызметші сөздері арқылы
Б) and, or, not қызметші сөздері арқылы В) or, not, end қызметші сөздері арқылы
8. Операторларды шектеп тұратын Begin және end түйінді сөздерін қалай атауға болады?
А) операторлық жақша Ә) программаның басы мен соңы
Б) шартты жқшалар В) программаның негізгі бөлігі
9. Паскальдағы дәрежелеу белгісін көрсет
А) ** Ә) ^ Б) & В) дұрыс жауабы жоқ
10. 14 DIV 5 – функциясының мәні неге тең?
А) 2,8 Ә) 2 Б) 5 В) 11
11. Түбір астындағы Х-ті Паскальда қалай болады?
А) SQR (X) Ә) SQRT (X) Б) ABS (X) В) MOD (X)
12. Паскаль тіліндегі нәтиже алу операторын көрсет
А) PRINT Ә) WRITE Б) OUTPUT В) READ
13. Қай өрнекте қате бар?
А) (X1/X2)*y Ә) b+(a-c/3)Б) (sqrt (p) * q)/r В) (a(b/(c*d/(ef)))))
14. Sqr операторының қызметі
А) Санның квадраты Ә) Санның квадрат түбіріБ) Х-тің 5 дәрежесі В) Санның абсолют шамасы
15. Паскаль тіліндегі нәтиже алу операторының көрсет
А) VAR Ә) WRITE Б) CONSTВ) READ
16. := қандай белгі?
А) теңдік Ә) айнымалыларды салыстыру Б) меншіктеу В) бөлу
17. Паскаль тілінде шартты оператордың қанша түрі бар?
А) 5 Ә) 3 Б) 4 В) 2
18. А= 14, В= 12,3 болған жағдайда А және В айнымалыларын сипаттаңыз:
А) VAR A, B: integer; Ә) VAR A=14, B=12.3;Б) BEGIN A=14 B=12.3 В) VAR A: integer B: real
19. Бүтін сандар Паскаль тілінде қандай типке жатады?
А) Integer Ә) real Б) array (1… n) of real В) array (1.. n) of integer
20. GO TO[белгі ] операторының қызметі.....
А) Шартсыз көшу операторы Ә) Шартты көшу операторы
Б) Баспаға шығару операторы В) Программаның басы – соңы;
21. CASE [өрнек] OF операторының қызметі ....
А) Шартсыз көшу операторы Ә) Шартты көшу операторы
Б) Баспаға шығару операторы В) Операторды енгізу операторы
22. IF [шарт] THEN [1-серия]...
А) Шартсыз көшу операторы Ә) Шартты көшу операторы
Б) Баспаға шығару операторы В) Операторды енгізу операторы
23. tg (x) функциясының Паскаль тілінде жазылуы
А) TAN (X) Ә) TGx Б) Atan (x) В) Sin (x) / Cos (x) ;
24. Паскальда түбір алу амалын көрсетіңіз.
А) SQR Ә) SQRT Б) ASQRT В) EXP (x)
25. Қай белгі әрбір жолдан кейін міндетті түрде қойылады?
А) : Ә) ; Б) . В) ,
26. Паскальда квадраттау амалын көрсетіңіз.
А) ** Ә) ^ Б) sqr В) sqrt
27. a+bx - x2 / 10 өрнегінің Паскальда жазылуы дұрыс....
А) (a+b)^2-x^2/10 Ә) SQR (a+bx)-x*2/10
Б) SQRT (a+b*x) – SQR (x) /10 В) SQRT (a) + b * x – x^2/10
Достарыңызбен бөлісу: |