Dolzarbligi bizni fanni chuqur o'rganishning etakchi shakllaridan biri bo'lgan informatika fani bo'yicha tanlov kurslarini tashkil etish mavzusini o'rganishga murojaat qilishga undaydi. Ilmiy yangilik va nazariy ahamiyati


"Protseduralar va funktsiyalar" amaliyoti


Download 307.3 Kb.
bet17/18
Sana18.06.2023
Hajmi307.3 Kb.
#1554260
1   ...   10   11   12   13   14   15   16   17   18
Bog'liq
kurs ishi io‘m fakultativ dars

"Protseduralar va funktsiyalar" amaliyoti


1

3-mavzu: Matn bilan ishlash

7.

Matn chiqishi. Raqamli qiymatlarni chiqarish.
Shriftlar. Matnni tekislash.



1

8.

"Matn bilan ishlash" seminari

1

4-mavzu: Rang va palitrani sozlash

to'qqiz.

Joriy palitra haqida ma'lumot olish. Grafik chiqish tartiblari uchun rangni o'rnating. Yangi fon rangini o'rnatish.

1

10.

"Rang va palitra bilan ishlash" seminari

1

5-mavzu: Grafik shakllarni qurish

o'n bir.

To'rtburchaklar qurish: 1D, 3D va to'ldirilgan to'rtburchaklar. Bino poligonlar.


1

12.

"To'rtburchaklar qurish" ustaxonasi


1

13.

Yoylar va doiralarni qurish:


Doira
Yoy elliptik yoy
to'ldirilgan ellips
Sektor
Ellipsdagi sektor

1

o'n to'rt.

"Yon va aylanalarni qurish" seminari


1

15.

"Grafik shakllarni qurish" seminari

1

o'n olti.

Shaxsiy topshiriqlar bo'yicha hisobot

1

6-mavzu: Tasvir parchalari bilan ishlash

17.

Fragment tasvirini saqlash uchun zarur bo'lgan xotira miqdori.
Fragment tasvirini xotirada saqlash. Buferdan ekranga ekranning belgilangan maydonining ikkilik tasvirini chiqaring.

1

o'n sakkiz.

"Tasvirlar bo'laklari bilan ishlash" seminari

1

7-mavzu: Harakatlanuvchi tasvirlarni yaratish

o'n to'qqiz.

Harakatlanuvchi tasvirlarni yaratishning turli usullari.

1

20.

Harakatlanuvchi tasvirlarni yaratish " seminari .

3

8-mavzu: Funksiyalarni displey ekranida chizish

21.

Funksiya grafiklarini tuzish algoritmlari

1

22.

"Funksiyalar grafiklarini qurish" seminari.

3










9-mavzu: Individual loyihani ishlab chiqish

23.

Loyihani ishlab chiqish

1

24.

Loyiha yarating

3

25.

Loyihani himoya qilish

1

10-mavzu: Qiziqarli masalalar yechish

26.

Fraktallar algebraik, geometrik

2

27.

Sxolastik fraktallar

2


2.3 "Grafik dasturlash" ixtiyoriy kursi uchun qiziqarli topshiriqlarga misollar


Fraktal tasvirlarni yaratishga qaratilgan qiziqarli vazifalar taklif etiladi, chunki ular ixtiyoriy sinflarda o'rganish uchun etarlicha qiziqarli.


Sierpinski salfetkasini qurish
Keling, teng tomonli uchburchakni olaylik va uni uchta median chizig'i bilan to'rtta teng uchburchakka ajratamiz. Biz o'rta uchburchakning ichki qismini o'chiramiz va qolgan uchta yopiq uchburchak bilan biz yuqorida tasvirlangan jarayonni takrorlaymiz, ya'ni ularning har birini o'rta chiziqlar bilan to'rtta teng uchburchakka bo'lamiz va yana o'rtadagilarning ichki qismini o'chirib tashlaymiz. Shubhasiz, jarayonning n bosqichidan so'ng bizda 3 ^ n ta uchburchak bo'ladi. Ularning ballarining birlashishi n - darajali Sierpinski peçetesi deb ataladi.
Sierpinski salfetkasini qurish:
dastur Sierp ;
Graph, crt foydalanadi;
turi
TComplex = Yozish
X : Haqiqiy;
Y : Haqiqiy;
oxiri;
Const
iter = 50;
maksimal = 127;
Varz
: TComplex;
x, y, n: Butun son;
gd, gm : Integer;
mx, my : Integer;
Boshlash
gd := Aniqlash;
InitGraph(gd,gm,'');
Mx := GetMaxX div 2;
Mening := GetMaxY div 2;
y uchun:= -my to my do
x := -mx dan mx gacha bo'lgan qiymatlar uchun Boshlang
n := 0;
zx := X * 0,005;
zy := Y * 0,005;
(sqr(zx) + sqr(zy) < max) va (n < iter) Boshlashda
Agar zy>0,5 bo'lsa, boshlang
zx:=2*zx;
zy:=2*zy-1;
Boshqasi
Agar zx>0,5 bo'lsa, boshlang
zx:=2*zx-1;
zy:=2*zy;
Boshqasi
Boshlash
zx:=2*zx;
zy:=2*zy;
oxiri;
Inc(n);
oxiri;
PutPixel(mx + x,my + y,16 - (n mod 16));
Klaviatura bosilsa, keyin Break;
oxiri;
o'qish tugmasi ;
Grafikni yopish ;
oxiri .
Koch egri chizig'ini qurish
Biz asosiy segmentdan boshlaymiz : uning o'rta uchinchi qismini o'chiring va uni teng qirrali uchburchakning tomonlari bilan almashtiring.
Agar taglikning uzunligi 1 ga teng bo'lsa, u holda fragment har biri uzunligi 1/3 va bo'lgan to'rtta segmentdan iborat bo'ladi. shuning uchun umumiy uzunlik 4/3 ni tashkil qiladi. Keyingi bosqichda biz 16 ta segmentdan iborat bo'lgan va umumiy uzunligi 16/9 bo'lgan singan chiziqni olamiz va hokazo.
Koch egri chizig'i cheksiz uzunlikka ega. Bundan tashqari, Koch egri chizig'i to'rtta teng qismdan iborat bo'lib, ularning har biri o'xshashlik koeffitsienti 1/3 bo'lgan butun egri chiziqqa o'xshaydi. Koch egri chizig'i o'ziga o'xshaydi: har bir qism butunning miniatyura nusxasidir. Koch egri chizig'ini qurish uchun biz p yaqinlashuv darajasini aniqlaymiz . Bu shuni anglatadiki, biz " p " o'zgarishlarini "tayanch" ga qo'llaymiz. Agar taglik segment bo'lsa, natijada teng uzunlikdagi segmentlardan tashkil topgan singan chiziq bo'ladi . Biz segmentlarni 0 dan inklyuzivgacha raqamlaymiz. Har bir qadam uchun (indeks n ga to‘g‘ri keladi ) segment, aniqrog‘i vektor chizilishi kerak.
Koch egri chizig'ini qurish:
dastur Kox ;
CRT, Grafikdan foydalanadi;
const
p=5;
var gd, gm: Integer;
i, j: butun son;
x, y, l: Haqiqiy;
a: haqiqiy;
n, m, k: Butun son;
boshlash
gd:=Aniqlash;
InitGraph(gd, gm, 'c:\bp\bgi');
x:=0;
y:=400;
l:=640/(exp(p*ln(3)));
MoveTo(Round(x), Round(y));
for i:=0 to Round(exp(p*ln(4)))-1 boshlanadi
a:=0;
n:=i;
k:=0;
takrorlang
m:=n mod 4;
n:=n div 4;
hodisa m
0: a:=a+0;
1: a:=a-pi/3;
2: a:=a+pi/3;
3: a:=a+0;
oxiri;
inc(k);
k>=p gacha;
x:=x + l*cos(a);
y:=y + l*sin(a);
LineTo(Round(x), Round(y));
oxiri;
ReadKey;
Grafikni yopish ;
oxiri .
Fraktal xochni qurish
Biz nuqtalarning tasodifiy ketma-ketligini hosil qilamiz , , , ... Har bir nuqta oldingisidan L yoki R o'zgarishini oldingisiga qo'llash orqali olinadi , bu erda




Bundan tashqari, ushbu o'zgarishlarning har biri 0,5 ehtimollik bilan tasodifiy tanlanadi.


Masalan, =2,8 bo'lsin. Bu erda L — nuqtaga nisbatan aylanish
(0, 0) va R - markazdan masofaga (0, 1) bog'liq bo'lgan o'zgaruvchan indikator bilan nuqta (1, 0) atrofida cho'zish. Natijada fraktal "xoch"
"Xoch" fraktalini qurish
dastur Rnd ;
CRT, Grafikdan foydalanadi;
Var
gd,gm : Butun son;
chizish tartibi;
const
iter = 70000;
a = 2,8;
Var
t, x, y, p : Haqiqiy;
k : LongInt;
mx, my, rad : Butun son;
Boshlash
mx := 320;
mening := 240;
rad := 200;
tasodifiy qilish;
x := 0,0;
y := 0,0;
k uchun:= 1 Takrorlash uchun Boshlang
p := Tasodifiy;
t := x;
Agar p <= 1/2 bo'lsa, boshlang
x := -y;
y := t;
oxiri
Boshqa
Boshlash
x := 1+(a*(x-1))/(sqr(x-1)+sqr(y)+1);
y := a*y/(sqr(t-1)+sqr(y)+1);
oxiri;
PutPixel(mx + Round(rad * x), my - Round(rad * y), 2);
oxiri;
oxiri;
Boshlash
gd := Aniqlash;
InitGraph(gd,gm,'');
chizish;
ReadKey ;
Grafikni yopish ;
oxiri .



Download 307.3 Kb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   18




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling