Программалау тілінде модельдер ??ру


Сабақтың тақырыбы: Программалау тілінде модельдер құру.
Сабақтың мақсаты:
Білімділік: Оқушыларға программалау тілі ABC PASCAL –да графикалық модельдер құруға үйрету.
Графикалық режимде графикалық операторларын пайдаланып әртүрлі модельдер сыза білуге дағдыландыру.
Тәрбиелік: Оқушылардың шығармашылық, эстетикалық қабілеттерін дамыту.
Дамытушылық: Ұйымшылдыққа, ізденуге, мақсатқа жете білуге тәрбиелеу.
Сабақта қолданылатын көрнекі құралдар: Компьютер, оқулық, электронды оқулық
Сабақтың түрі: Практикалық
Сабақтың типі: Жаңа сабақты бекіту.
Сабақтың барысы:
Ұйымдастыру. Оқушыларды түгендеу.
Топқа бөлу: Үшбұрыш, Шеңбер, Төртбұрыш суреттерін таңдау: Ой - шексіз, қимыл - белсенді, нәтиже - кемел
Үшбұрыш тобы:
Үшбұрыш таңдаушылар көшбасшылық қабілеті бар, алдына қойған мақсатына жететін жандар.
Төртбұрыш тобы:
Төртбұрыш таңдағандар өте еңбекқор, төзімді, өз жұмысы ның шебері, бастаған істі аяғына дейін жеткізетін жандар
Шеңбер тобы:
Шеңбер таңдағандар қарым-қатынасты жоғары бағалайтын, өзгелерді қадағалайтын, кең пейілді, түйсігі жақсы дамыған, әңгіме айтқанды ұнатады, тез шешім қабылдай алмайды, достары мен таныстары көп жандар
Үй тапсырмасын тексеру.
Электронды оқулықты көрсету. Модель. Модельдеу. Модель түрлері. Модельдеу кезеңдері. (Жалпы шолу еске түсіру) Тест жұмысын орындауға болады.
Негізгі бөлім:
Суреттер үйлестіріледі. (Ойыншық машина, машина суреті, Глубос, глубос суреті)

Сұрақ: Модельдің қасиеттеріне қарай жіктелуінің қандай түрі?
Жауап: Көрсету тәсіліне қарай
Сұрақ: Қалай бөлуге болады?
Жауап: Материалды (заттық) және Ақпараттық (абстракты)

Сұрақ: Ақпараттық модельдің түрлері қандай?
Жауап: Вербальдық және таңбалық
Графикалық модельдер, кестелік, иерархиялық, желілік.
Міне бүгін біз графикалық модельдерді программалау тілі арқылы жасаймыз.
а) Операторлар қызметін еске түсіру (интерактивті тақтада жұмыс- сәйкестендіру)
ә) Есепті тақтаға программасын құра отырып түсіндіру.
б) Әр түрлі суреттерді моделін жасау. (жеке карточкадағы сызба бойынша программасын құру компьютерде жазу).
Экранның координаталық жазықтығының бейнесі:

Графиктік режимдегі операторлар:
Оператордың атауы Қызметі
SetWindowSize терезенің өлшемі
SetWindowHeight(h);  графикалық терезен биіктігі
SetWindowWidth(w);  графикалық терезенің ені
ClearWindow(түс); графикалық терезені берілген түспен тазартады.
SetPixel(x,y,c);  координатасы (x,y) нүктені берілген түс-пен салады. 
MoveTo(x,y);  нүктені белгілеу
LineTo(x,y);  ағымдағы орналасқан нүктеден бастап координатасы (x,y) нүктеге дейін кесінді сызады;
Line(x1,y1,x2,y2);  координатасы (x1,y1) нүктеден координатасы (x2,y2) нүктеге кесінді дейін сызады. 
SetPenColor(түс);  қаламның түсін тағайындайды. 
SetPenWidth(n); - қаламның қалыңдығын тағайындайды.
n – пиксельдер саны 
Rectangle(x1,y1,x2,y2);  диогнальдарының екі шеткі нүктесінің координаталары (x1,y1) және (x2,y2) болатын тіктөртбұрыш сызады.
FloodFill(x,y,түс);  (x,y) нүктесінен бастап берілген түспен бояйды. 
SetBrushColor(түс);  қылқаламның түсін тағайындайды.
Circle(x,y,r);  центрінің координатасы (x,y) және радиусы r болатын шеңбер сызады. 
Ellipse(x1,y1,x2,y2);  диагональдарының шеткі нүктелерінің координаталары (x1,y1) және (x2,y2) болатын тіктөртбұрыштың ішіне эллипс сызады.
TextOut(х,у,'мәтін') (x,y) нүктесінен бастап мәтін жазу
SetFontName(‘name’); шрифт атын тағайындайды.
SetFontColor(color);  шрифт түсін тағайындайды.
SetFontSize(sz); шрифттің өлшемін пунктпен көрсетеді.
SetFontStyle(fs);  шрифт стилі.
Кейбір түстер тізімі:
Ағылшынша Қазақша Ағылшынша Қазақша
clBlack  қара  clCream  Ақсұр
clPurple  күлгін clAqua  бирюзовый 
clWhite  ақ  clOlive  қара жасыл 
clMaroon  қою-қызыл clFuchsia  Сирен түстес 
clRed  қызыл clTeal  Жасыл қөк  
clNavy  қою-көк  clGray  сұр  
clGreen  жасыл clLime  ашық жасыл
clBrown  қоңыр clMoneyGreen  Жасыл ақша түс
clBlue  көк clLtGray  ашық сұр
clSkyBlue  көгілдір clDkGray  қою сұр
clYellow  Сары clMedGray  сұп сұр
clSilver  күміс түстес
Түстерді RGB палитрасымен беруге болады: cол үшін түс орнына  rgb(r,g,b) жазылады: мұндағы r,b,g - 0 ден 255 –ге дейінгі сандар.Шрифт стильдері:
Ағылшынша Орысша атауы
fsNormal обычный; 
fsBold жирный; 
fsItalic наклонный;
fsBoldItalic жирный наклонный; 
fsUnderline подчеркнутый; 
fsBoldUnderline жирный подчеркнутый; 
fsItalicUnderline наклонный подчеркнутый; 
fsBoldItalicUnderline жирный наклонный подчеркнутый.
 
Мысалдар арқылы еске түсірейік:
uses GraphABC;
begin
SetWindowSize(700,500);
FloodFill(10,10,clblue);
SetPenWidth(5);
setpencolor(clgreen);
setpixel(200,30,clred);
SetBrushColor(clSkyBlue);
circle(180,100,50);
SetFontName('kz poster');
SetFontColor(clred);
SetFontSize(20);
SetFontStyle(fsBoldItalicUnderline);
SetBrushColor(clblue );
TextOut(300,100,'шеңбер');
TextOut(300,200,'тіктөртбұрыш');
TextOut(300,310,'эллипс');
TextOut(300,400,'кесінді салу');
SetBrushColor(clMaroon );
rectangle(100,180,280,260);
SetBrushColor(clFuchsia );
ellipse(100,290,280,370);
Line(100,400,250,430);
MoveTo(100,400);
LineTo(300,480);
LineTo(250,430);
FloodFill(250,450,clyellow);
end.
Графикалық экранда пайда болады:
Тапсырма: 
Суреттегі сызбаны салу керек.
Программа төмендегідей:
Program Shar;uses GraphABC;BeginLine (200,200,400,200); 
LineTO (300,140);
lineTO (200,200);FloodFill (300,170,clblue);Line (200,200,400,200); 
LineTo (300,260); 
LineTo (200,200);FloodFill (300,230,cllime);circle (160,200,40);FloodFill (160,200,clred);circle (440,200,40);FloodFill (440,200,clyellow);End.
Графикалық экранда пайда болады:

 Тапсырма1. Төмендегі суретті салу программасын құрыңыз.

program Grafica;
uses GraphABC; {графикалыќ режимге кґшу}
begin
SetWindowHeight(500); {терезенің биіктігі}
SetWindowWidth(1000); {терезенің ені}
SetFontName('kz poster');{шрифт аты}
SetFontColor(clred); {шрифт түсі}
SetFontSize(20); {шрифттің өлшемі}
SetFontStyle(fsBoldUnderline); {шрифт стилі}
TextOut(20,30,'камаз'); {мјтін жазу}
SetBrushColor(clgreen); {тўйыќ аймаќты бояу}
SetPenColor(clblue) ; {ќаламныѕ тїсі}
SetBrushColor(clgreen); {ќаламыныѕ ќалыѕдыєы {нїкте }
SetPenColor(clblack);
SetBrushColor(clred);
rectangle(100,200,250,350) ; {тіктґрбўрыш}
rectangle(250,80,340,350) ;
SetPenWidth(3);
Line(180,80,340,80);
Line(180,80,100,200);
Line(130,200,160,180);
Line(150,170,170,190);
SetBrushColor(clyellow);
rectangle(100,250,120,270) ;
rectangle(100,300,120,320) ;
SetBrushColor(clblack);
rectangle(90,350,300,380) ;
rectangle(300,330,850,370) ;
SetPenWidth(15);
line(750,300,750,330) ;
line(380,360,430,300) ;
line(470,300,420,360) ;
SetPenWidth(2);
SetBrushColor(clgreen);
SetPenColor(clblack);
rectangle(380,300,900,160) ; {кузов}
rectangle(400,280,880,180);
SetPenWidth(2);
SetPenColor(clblack);
line(380,50,900,160) ;
line(380,70,380,200) ;
line(380,70,330,70) ;
line(330,50,330,70) ;
line(330,50,380,50) ;
FloodFill(600,150,clgreen);
SetPenWidth(2);
SetPenColor(clblack);
arc(600,180,180,15,142);
FloodFill(600,20,clMaroon);
SetPenColor(clblack);
SetBrushColor(clgray);
SetPenWidth(35);
circle(300,380,55); {дөңгелегі шеѕбер салу}
circle(700,380,55);
end.
Pascal ABC –дағы анимация
Шардың суретін салу.
uses GraphABC;
var I,X,Y,D: integer;
begin
X:=20; Y:=30;
D:=100;
ClearWindow;
SetBrushColor(clGreen);
Ellipse(X+I,Y,X+I+D,Y+D);
end.
Жыпылықтағын шардың қозғалысы
uses GraphABC;
var I,X,Y,D: integer;
begin
X:=20; Y:=30; D:=100;
for i:=1 to 500 do
begin
ClearWindow;
SetBrushColor(clGreen);
Ellipse(X+I,Y,X+I+D,Y+D);
Sleep(1);
end;
end.
 LockDrawing – графикалық экранға шығаруды бұғаулайды да тек қана экраннан тыс жерге суретті салуды іске асырады.
Redraw –графикалық режимнің терезесі бұғауланған кезде Шығару терезесін қайталап суреттерін салады.
Смайликтердің суретін салу.

Program smailikter; uses GraphABC; var x,y: integer; // координаталар begin SetWindowSize(300,200); // терезе өлшемі // 1 смайлик x:=50;y:=50; TextOut(x-30,y-50,'жымыңдайды'); Circle(x,y,30); FloodFill(x,y,clYellow); Circle(x+10,y-10,7); Circle(x-10,y-10,7); Arc(x,y,20,180,360); x:=150;y:=50; TextOut(x-30,y-50,'көңілсіз'); Circle(x,y,30); FloodFill(x,y,clYellow); Circle(x+10,y-10,7); Circle(x-10,y-10,7); Arc(x,y+20,20,0,180); x:=250;y:=50; TextOut(x-30,y-50,'бейтарап'); Circle(x,y,30); FloodFill(x,y,clYellow); Circle(x+10,y-10,7); Circle(x-10,y-10,7); Line(x-15,y+10,x+15,y+10); x:=50;y:=150; TextOut(x-30,y-50,'күледі'); Circle(x,y,30); FloodFill(x,y,clYellow); Circle(x+10,y-10,7); Circle(x-10,y-10,7); Arc(x,y,20,180,360); Line(x-20,y,x+20,y); FloodFill(x+1,y+1,clWhite); Line(x-10,y,x-10,y+17); Line(x,y,x,y+20); Line(x+10,y,x+10,y+17); x:=150;y:=150; TextOut(x-30,y-50,'ашулы'); Circle(x,y,30); FloodFill(x,y,clYellow); Circle(x+10,y-10,7); Circle(x-10,y-10,7); Arc(x,y+20,20,0,180); Line(x-20,y+19,x+20,y+19); FloodFill(x+1,y+1,clWhite); Line(x-10,y+3,x-10,y+20); Line(x,y,x,y+20); Line(x+10,y+3,x+10,y+20); Line(x+10,y+10,x-10,y+10); FloodFill(x+2,y+8,clBlack); FloodFill(x-2,y+11,clBlack); x:=250;y:=150; TextOut(x-30,y-50,'ұйқыда'); Circle(x,y,30); FloodFill(x,y,clYellow); Line(x+20,y-10,x+5,y-10); Line(x-20,y-10,x-5,y-10); Line(x-15,y+10,x+15,y+10); end.
Бағалау: Компьютердегі жұмыстарын тексеру. Барлық компьютерді көру. Тексеру. Нәтижені талдау.
Сергіту сәті: Орындарынан тұрып шеңбер бойынша орналасу, сұрақтарға сай топ болып сұрақтарға жауап:
Дұрыс болса: Қол шапалақтау
Қате болса: Аяқтарын қозғау
Ойланамын: Бастарын шайқау.
Ереже:
SetWindowSize - терезенің өлшемін тағайындайтын оператор. (Дұрыс)
ClearWindow(түс) экранға координаларына сәйкес нүктенің суретін салады. (Дұрыс емес)
LineTo(x,y) мен Line(x1,y1,x2,y2) кесінді салу опреаторы (Дұрыс)
SetPixel(x,y,c) –экранда нүктені белгілеу. (Дұрыс емес)
SetPenColor(түс) мен SetPenWidth(n) қаламның түсін береді. (Екі ойлы)
MoveTo(x,y) нүкте салу (Дұрыс емес)
Эллипс немесе тіктөртбұрыш салу үшін x1,y1,x2,y2 тіктөртбұрыштың диагналдарының шеткі нүктелерінің координаталары білу керек. (Дұрыс)
FloodFill(x,y,түс) мен SetBrushColor(түс) тұйық ауданның ішін бояу (Екі ойлы)
SetFontName(‘name’) мен SetFontColor(color), SetFontSize(sz), SetFontStyle(fs)- мәтінді жазып шығаратын операторлар (Дұрыс емес)
Circle(x,y,r) мен Ellipse(x1,y1,x2,y2)-тіктөртбұрыш пен эллипстің суретін салады. (Екі ойлы)
Ellipse(x1,y1,x2,y2)-графикалық экранға эллипс суретін салады (Дұрыс)
Кері байланыс:
Сұрақ
Бұрыннан білетінім
Бүгінгі үйренгенім
(Сабақ басында беріп тастаймын)
Үйге тапсырма:
1. Программалау тілінде модельдер құру тақырыбын қайталау.
2. Есептер:
Үшбұрыш тобы:
1. Тік бағытта қозғалған шарды бейнелейтін программа құру керек.
2. Қызыл шар қозғалмай тұр, ал жасыл шар горизонталь бағытта қызыл шарға қарай қозғалып келеді де соқтығысқаннан кейін, жасыл шар тоқтайды да қызыл шар тіке төмен құлайтынын бейнелейтін программаны құру керек.
Төртбұрыш тобы:
3. Қызыл шар қозғалмай тұр, ал жасыл шар горизонталь бағытта қызыл шарға қарай қозғалып келіп, соқтығысады да жасыл шар кері бағытқа, ал қызыл шар төмен қарай қозғалатынын бейнелейтін программа құру керек.
4. Тіктөртбұрыштың периметрі бойынша қозғалатын шарды бейнелейтін программа құру керек.
Шеңбер тобы:
5. Шардың радиустары өзгеріп отыратын программаны құру керек.
6. Тік бағытта қозғалған шар, қабырғаға соқтығысып, көлденең қозғалатын шарды бейнелейтін программа құру керек.
Сабақ аяқталды сау болыңыздар. Сабаққа белсене араласқандарыңызға көп рахмет.
Тапсырма2. Төмендегі суретті салу программасын құрыңыз.


Тапсырма3. Төмендегі суретті салу програмаасын құрыңыз.

Тапсырма4. Төмендегі суретті салу программасын құрыңыз.

Тапсырма5. Төмендегі суретті салу программасын құрыңыз.


Тапсырма6. Төмендегі суретті салу программасын құрыңыз.

Тапсырма7. Төмендегі суретті салу программасын құрыңыз.