47
Урок №46-50. Вправи

Уроки 46-50 (графіка) - вправи

  • Upload
    -

  • View
    86

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Уроки 46-50 (графіка) -  вправи

Урок №46-50. Вправи

Page 2: Уроки 46-50 (графіка) -  вправи

Зміст Завдання 1. Ефект збільшення Завдання 2. Перетворення Завдання 3. Малюнок із ліній Завдання 4. Стовпчаста діаграма Завдання 5. Бульбашкова діаграма (с.р.) Завдання 6. Полюси магнітів Завдання 7. Кошеня (*) Завдання 8. Площа фігур Завдання 9. Прямокутник Завдання 10. Енціклопедія(*) Завдання 11. Пелюстки Завдання 12. Гра(*) Завдання 13. Рух Завдання 14. Графічний редактор (*) Завдання 15. Креслення

Page 3: Уроки 46-50 (графіка) -  вправи

Завдання 1

Розробіть проект, форма якого містить малюнок, що збережений у файлі писанка.jpg у папці Графіка. При натисненні кнопки Збільшення розміри малюнка збільшуються (імітується ефект наближення)

Page 4: Уроки 46-50 (графіка) -  вправи

Завдання 1

True

Page 5: Уроки 46-50 (графіка) -  вправи

Завдання 1

Page 6: Уроки 46-50 (графіка) -  вправи

Завдання 2Розробіть проект, у якому, коли за клацають мишею

на зображенні круга, він зафарбовується в колір, обраний у групі перемикачів Колір, а коли клацають на зображенні прямокутника, - він зафарбовується обраним кольором та застосовується стиль заливки, який обирається у групі Заливка

Page 7: Уроки 46-50 (графіка) -  вправи

Завдання 2

Page 8: Уроки 46-50 (графіка) -  вправи

Завдання 2

Page 9: Уроки 46-50 (графіка) -  вправи

Завдання 2

Page 10: Уроки 46-50 (графіка) -  вправи

Завдання 2procedure

TForm1.Shape1MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);begin if radiogroup1.ItemIndex=0 then

Shape1.brush.color:=clred; if radiogroup1.ItemIndex=1 then

Shape1.brush.color:=clblue; if radiogroup1.ItemIndex=2 then

Shape1.brush.color:=clgreen;end;

procedure TForm1.Shape2MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);begin if radiogroup1.ItemIndex=0 then

Shape2.brush.color:=clred; if radiogroup1.ItemIndex=1 then

Shape2.brush.color:=clblue; if radiogroup1.ItemIndex=2 then

Shape2.brush.color:=clgreen; if radiogroup2.ItemIndex=0 then

Shape2.brush.style:=bscross; if radiogroup2.ItemIndex=1 then

Shape2.brush.style:=bshorizontal; if radiogroup2.ItemIndex=2 then

Shape2.brush.style:=bsfdiagonal;end;

Page 11: Уроки 46-50 (графіка) -  вправи

Завдання 3

Page 12: Уроки 46-50 (графіка) -  вправи

Завдання 3

Page 13: Уроки 46-50 (графіка) -  вправи

Завдання 4Розробіть проект, у якому у вікні головної

форми буде побудована стовпчаста діаграма, що демонструє співвідношення між числами 15, 50, 70, 25, 10, 30.

Page 14: Уроки 46-50 (графіка) -  вправи

Завдання 4procedure TForm1.Button1Click(Sender: TObject);begin form1.Canvas.Pen.Color:=clgreen; form1.Canvas.Line(150,100,250,100); form1.Canvas.Brush.Color:=clblue; form1.Canvas.Rectangle(155,100,165,100-15); form1.Canvas.Rectangle(170,100,180,100-50); form1.Canvas.Rectangle(185,100,195,100-70); form1.Canvas.Rectangle(200,100,210,100-25); form1.Canvas.Rectangle(215,100,225,100-10); form1.Canvas.Rectangle(230,100,240,100-30);end;

Page 15: Уроки 46-50 (графіка) -  вправи

Завдання 5 (самостійно)Розробіть проект, у якому у вікні головної форми

буде побудована бульбашкова діаграма, що демонструє співвідношення між числами 15, 50, 70, 25, 10, 30

form1.Canvas.Ellipse(50,100,50+15,100-15); form1.Canvas.Ellipse(150,100,150+50,100-50);

Page 16: Уроки 46-50 (графіка) -  вправи

Завдання 6

Page 17: Уроки 46-50 (графіка) -  вправи

Завдання 6

Page 18: Уроки 46-50 (графіка) -  вправи

Завдання 7

Page 19: Уроки 46-50 (графіка) -  вправи

Завдання 7

Таймер відключено, інтервал - 0

Page 20: Уроки 46-50 (графіка) -  вправи

Завдання 7

Для image7 малюнок не задано, visible=true

Page 21: Уроки 46-50 (графіка) -  вправи

Завдання 7varflag:integer;…procedure TForm1.Button1Click(Sender: TObject);begin Timer1.Interval:=300; timer1.Enabled:=true; flag:=1; {таймер включено, інтервал=300, змінна для вибору

малюнка=1}end;

procedure TForm1.Timer1Timer(Sender: TObject);begin case flag of {на кожний крок таймера обирається наступний малюнок} 1:Image7.Picture:=Image1.Picture; 2:Image7.Picture:=Image2.Picture; 3:Image7.Picture:=Image3.Picture; 4:Image7.Picture:=Image4.Picture; 5:Image7.Picture:=Image5.Picture; 6:Image7.Picture:=Image6.Picture; end; flag:=flag+1; if flag=7 then flag:=1;

end;

Page 22: Уроки 46-50 (графіка) -  вправи

Завдання 8

Page 23: Уроки 46-50 (графіка) -  вправи

Завдання 8

Page 24: Уроки 46-50 (графіка) -  вправи

Завдання 8 (підказка)procedure TForm1.Shape1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin label1.caption:='s=1/2*h*b'; label1.visible:=true;end;

procedure TForm1.Shape1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin label1.visible:=false;end;…label2.caption:='s=a*b'; …label3.caption:='s=pi*r*r'; …

Page 25: Уроки 46-50 (графіка) -  вправи

Завдання 9

Page 26: Уроки 46-50 (графіка) -  вправи

Завдання 9

Page 27: Уроки 46-50 (графіка) -  вправи

Завдання 10

Page 28: Уроки 46-50 (графіка) -  вправи

Завдання 10

Page 29: Уроки 46-50 (графіка) -  вправи

Завдання 10

Page 30: Уроки 46-50 (графіка) -  вправи

Завдання 10

.visible=false

Page 31: Уроки 46-50 (графіка) -  вправи

Завдання 10

!

Page 32: Уроки 46-50 (графіка) -  вправи

Завдання 10procedure TForm1.Button1Click(Sender: TObject);begin if radiogroup1.ItemIndex=0 then k:=0 else k:=1; Case combobox1.ItemIndex of 0: begin if k=0 then begin memo1.visible:=false; image1.Picture.LoadFromFile('c:/marina/8 klass/lazarus/oko.jpg'); image1.visible:=true; end else begin Memo1.Lines.LoadFromFile ('c:/marina/8 klass/lazarus/oko.txt'); memo1.visible:=true end; end;… end; end;

1: uho

2: nis

3:vestib

4: ruh

5: dotuk

6: temp

7: bil

маршрут

Page 33: Уроки 46-50 (графіка) -  вправи

Завдання 11

Page 34: Уроки 46-50 (графіка) -  вправи

Завдання 11varx1,x2,y1,y2:integer; …..procedure TForm1.Button1Click(Sender: TObject);begin randomize; x1:=random(200)+150; y1:=random(200)+50; if radiogroup1.ItemIndex=0 then begin x2:=x1+300;y2:=y1+300;end else if radiogroup1.ItemIndex=1 then begin x2:=x1+200; y2:=y1+200; end else begin x2:=x1+100;y2:=y1+100; end; form1.Canvas.Brush.Color:=clred; form1.canvas.Pie(x1,y1,x2,y2,x1+2*(x2-x1) div 3, y1,x1+(x2-x1)div 3,y1 ); form1.canvas.Pie(x1,y1,x2,y2,x1,y1+(y2-y1) div 4, x1,y1+2*(y2-y1) div 4); form1.canvas.Pie(x1,y1,x2,y2,x1,y1+3*(y2-y1) div 4, x1+(x2-x1)div 3, y2); form1.canvas.Pie(x1,y1,x2,y2,x1+2*(x2-x1)div 3,y2, x2,y1+3*(y2-y1) div 4); form1.canvas.Pie(x1,y1,x2,y2,x2,y1+2*(y2-y1) div 4,x2,y1+(y2-y1) div 4);end;

Page 35: Уроки 46-50 (графіка) -  вправи

Завдання 12

У прикладі заховано 3 пари ромбів, фігури не вилітають,а ховаються (самостійно доопрацювати проект)

Page 36: Уроки 46-50 (графіка) -  вправи

Завдання 12

Page 37: Уроки 46-50 (графіка) -  вправи

procedure TForm1.Panel1Click(Sender: TObject);begin shape1.visible:=true; case n of 1: begin shape1.Visible:=false;end; 2: begin shape2.Visible:=false;end; 3: begin shape3.Visible:=false;end; 4: begin shape4.Visible:=false;end; 5: begin shape5.Visible:=false;end; 6: begin shape6.Visible:=false;end; end; k:=k+1; if k=2 then begin col2:=shape1.Brush.Color; k:=0; if col1=col2 then begin panel1.color:=clwhite; shape1.Visible:=false; case n of 1: begin

panel1.color:=clwhite;shape1.Visible:=false;end; 2: begin

panel2.color:=clwhite;shape2.Visible:=false;end; 3: begin

panel3.color:=clwhite;shape3.Visible:=false;end; 4: begin

panel4.color:=clwhite;shape4.Visible:=false;end; 5: begin

panel5.color:=clwhite;shape5.Visible:=false;end; 6: begin

panel6.color:=clwhite;shape6.Visible:=false;end; end; end;end else begin col1:=shape1.Brush.Color; ;end; n:=1 end;

procedure TForm1.Panel2Click(Sender: TObject);begin shape2.visible:=true; case n of 1: begin shape1.Visible:=false;end; 2: begin shape2.Visible:=false;end; 3: begin shape3.Visible:=false;end; 4: begin shape4.Visible:=false;end; 5: begin shape5.Visible:=false;end; 6: begin shape6.Visible:=false;end; end; k:=k+1; if k=2 then begin col2:=shape2.Brush.Color; k:=0; if col1=col2 then begin panel2.color:=clwhite; shape2.Visible:=false;; case n of 1: begin

panel1.color:=clwhite;shape1.Visible:=false;end; 2: begin

panel2.color:=clwhite;shape2.Visible:=false;end; 3: begin

panel3.color:=clwhite;shape3.Visible:=false;end; 4: begin

panel4.color:=clwhite;shape4.Visible:=false;end; 5: begin

panel5.color:=clwhite;shape5.Visible:=false;end; 6: begin

panel6.color:=clwhite;shape6.Visible:=false;end; end; end;end else begin col1:=shape2.Brush.Color; ;end; n:=2end;

Page 38: Уроки 46-50 (графіка) -  вправи

Завдання 13

Page 39: Уроки 46-50 (графіка) -  вправи

Завдання 13

Page 40: Уроки 46-50 (графіка) -  вправи

Завдання 13

Page 41: Уроки 46-50 (графіка) -  вправи

Завдання 13var

flag:byte;…procedure TForm1.Shape4MouseDown(Sender:

TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin Timer1.Interval:=300; timer1.Enabled:=true;

flag:=1; {червоне світло, таймер включено}

end;

procedure TForm1.Shape5MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);begin Timer1.Interval:=300; timer1.Enabled:=true;

flag:=2; {зелене світло, таймер включено}end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin if flag=1 then begin {} image1.Left:=image1.left+10; image2.Left:=image2.Left-10; end; if flag=2 then begin {} image3.top:=image3.top+10; end;end;

Page 42: Уроки 46-50 (графіка) -  вправи

Завдання 14

Page 43: Уроки 46-50 (графіка) -  вправи

Завдання 14

Visible=false

Page 44: Уроки 46-50 (графіка) -  вправи

Завдання 14if checkbox1.Checked = true then begin shape1.shape:=stcircle; shape2.shape:=stcircle; shape3.shape:=stcircle; shape4.shape:=stcircle; shape5.shape:=stcircle; end; …if radiogroup1.ItemIndex=0 then begin shape1.brush.color:=clred; shape2.brush.color:=clred; shape3.brush.color:=clred; shape4.brush.color:=clred; shape5.brush.color:=clred; end; ….if radiogroup2.ItemIndex=0 then begin shape1.brush.style:=bsSolid; shape2.brush.style:=bsSolid; shape3.brush.style:=bsSolid; shape4.brush.style:=bsSolid; shape5.brush.style:=bsSolid; end; …

x:=strtoint(edit1.text)+250; y:=strtoint(edit2.text)+100; shape1.left:=x; shape1.top:=y; shape2.top:=y; shape3.top:=y; shape4.top:=y; shape5.top:=y; randomize; k:=random(4)+1; kr:=random(40)+10; ; for i:=1 to k do begin case i of 1:begin shape1.left:=x+i*kr;shape1.Visible:=true;end; 2:begin shape2.left:=x+i*kr;shape2.Visible:=true;end; 3:begin shape3.left:=x+i*kr;shape3.Visible:=true;end; 4:begin shape4.left:=x+i*kr;shape4.Visible:=true;end; 5:begin shape5.left:=x+i*kr;shape5.Visible:=true;end; end; end;

Page 45: Уроки 46-50 (графіка) -  вправи

Завдання 15Lazarus

Page 46: Уроки 46-50 (графіка) -  вправи

Завдання 15procedure TForm1.Button1Click(Sender:

TObject);begin form1.Canvas.Pen.Style:=pssolid; form1.canvas.Rectangle(120,25,160,125); form1.canvas.Rectangle(50,50,160,100); form1.canvas.moveto(120,50); form1.canvas.LineTo(120,100);

form1.canvas.moveto(180,50); form1.canvas.LineTo(220,25); form1.canvas.LineTo(260,50); form1.canvas.LineTo(260,100); form1.canvas.LineTo(220,125); form1.canvas.LineTo(180,100); form1.canvas.LineTo(180,50);;

form1.canvas.Ellipse(190,50,250,100);

form1.Canvas.Pen.Style:=psdashdot; form1.canvas.moveto(40,75); form1.canvas.LineTo(170,75);

form1.canvas.moveto(175,75); form1.canvas.LineTo(270,75);

form1.canvas.moveto(220,15); form1.canvas.LineTo(220,130);

end;

Page 47: Уроки 46-50 (графіка) -  вправи

Джерела1. Морзе Н.В., Барна О.В., Вембер В.П. Інформатика.підручник для 8

класу загальноосвітніх навчальних закладів. – К.:Оріон, 2016.2. http://intuit.valrkl.ru/course-1265/index.html#ID.3.section.4 –

Программирование на Lazarus. Ачкасов Вячеслав Юрьевич 3. Лисенко Т.С., Ривкінд Й.Я., Чернікова Л.А., Шакотько В.В.

Інформатика. Академічний рівень, профільний рівень. – К: Ґенеза, 2011.

4. Вовк Т. В. Готуємось до ДПА з інформатики. На допомогу вчителю та учням. - Днвпропетрівськ, 2011.

5. Бондаренко О.О. Інформатика. Visual Basic. 9 клас. – Шепетівка: ПП Шестопалов, 2009.

6. Дудзяний І. М. Програмування мовою Visual Basic/VBA. - Львів: Видавничий центр ЛНУ імені Івані Франка, 2004

7. http://visualbasic.at.ua/ - Початковий курс програмування Visual Basic8. http://urokinfo.ho.ua/view_post.php?id=146 - Iнформатика в школі.

Матеріали до уроків

1. Морзе Н.В., Барна О.В., Вембер В.П. Інформатика.підручник для 8 класу загальноосвітніх навчальних закладів. – К.:Оріон, 2016.

2. http://intuit.valrkl.ru/course-1265/index.html#ID.3.section.4 – Программирование на Lazarus. Ачкасов Вячеслав Юрьевич

3. Лисенко Т.С., Ривкінд Й.Я., Чернікова Л.А., Шакотько В.В. Інформатика. Академічний рівень, профільний рівень. – К: Ґенеза, 2011.

4. Вовк Т. В. Готуємось до ДПА з інформатики. На допомогу вчителю та учням. - Днвпропетрівськ, 2011.

5. Бондаренко О.О. Інформатика. Visual Basic. 9 клас. – Шепетівка: ПП Шестопалов, 2009.

6. Дудзяний І. М. Програмування мовою Visual Basic/VBA. - Львів: Видавничий центр ЛНУ імені Івані Франка, 2004

7. http://visualbasic.at.ua/ - Початковий курс програмування Visual Basic8. http://urokinfo.ho.ua/view_post.php?id=146 - Iнформатика в школі.

Матеріали до уроків