“Dasturlar BASICda tarmoqlanish va aylanish, massivlar bilan ishlash. Algoritmik tarmoqlanish tuzilishi (Visual Basic) Yangi materialni o‘rganish

To'liq va to'liq bo'lmagan shaklda filial buyrug'i (1-dars)

(“To‘liq va to‘liq bo‘lmagan shaklda shoxlash buyrug‘i” mavzusidagi dars ishlanmasi haftasiga 1 soatdan iborat; informatika fani faqat 10 va 11-sinflarda o‘qitiladi. 10-sinfda ushbu mavzuni o‘rganishdan oldin shuni ko‘rib chiqish kerak. "Algoritmning xususiyatlari va yozish usullari", "BASIC dasturlash tili" mavzusi.

Maqsad: filial buyrug'ini to'liq va to'liqsiz ko'rinishda ko'rib chiqing; tarmoqli buyruqlari bo'lgan dasturlardan foydalanib, sxemalar va sxemalar yordamida dasturlarni tuzish ko'nikmalarini rivojlantirish

Darslar davomida

I. Tashkiliy moment

II.Uyga vazifani tekshirish.

Sizning oldingizda sirli raqamlar yozilgan qog'oz parchalari. Har bir raqam ostida geometrik shakl tasvirlangan yoki operator yoziladi. Siz savollarga javob berishingiz, to'g'ri javobni topishingiz va jadvaldagi javobga mos keladigan raqamlarni yozishingiz kerak:

Geometrik shakllar va BASIC dasturlash tili operatorlari bilan varaqalar

18

10

20

14

Chop etish

KIRITISH

CLS

OXIRI

Savollar

1.Ushbu geometrik figura algoritmning boshi va oxirini ko'rsatish uchun sxemalarda qo'llaniladi.

2.Ushbu geometrik figura oqim sxemalarida har qanday hisobni ifodalash uchun ishlatiladi.

3.Ushbu operator BASIC tilida ma’lumotlarni ekranda aks ettirish uchun ishlatiladi.

4.Ushbu operator klaviaturadan ma'lumotlarni kiritish uchun ishlatiladi.

5.Bu operator BASIC tilida ekranni tozalash uchun ishlatiladi.

6.Bu raqam shartni tekshirish uchun ishlatiladi

7.Ma’lumotlarning ekranga kiritilishi va chiqarilishi ushbu geometrik raqam bilan ko‘rsatilgan.

8. Ushbu bayonot har qanday dasturni tugatadi.

Ikkinchi qatorda qanday raqamlar ketma-ketligini oldingiz? Ushbu ketma-ketlikda bitta so'z shifrlangan. Kalitni topishga harakat qiling va bu so'zni hal qiling. Ta'rif bering.

Javob:

1

13

4

16

18

10

20

14

A

l

G

O

R

Va

T

m

Algoritm - bu aniq va tushunarli ko'rsatmalarning (qoidalar, ko'rsatmalar, harakatlar) cheklangan to'plami bo'lib, ular o'xshash masalalarning ma'lum bir sinfidan har qanday aniq muammoni hal qilishga imkon beradi.

III Yangi mavzuni o'rganish.

Keling, ikkita mumkin bo'lgan harakatdan birini tanlashga olib keladigan algoritm nima ekanligini eslaylik? To'g'ri, shoxlanish. Bunday algoritm shartli ravishda shartni o'z ichiga oladi va shartning natijasiga qarab, harakat tanlanadi. Masalan: Agar ish kuni, Bu maktabga bor, aks holda dam olamiz. Agar ota-onalar pul beradilar Bu diskotekaga boraylik aks holda Biz televizor ko'ramiz. Bunday misollarni oddiy hayotdan, fandan ko‘p keltirishimiz mumkin. Masalan, matematika: Agar Teng tomonli to'rtburchak to'g'ri burchakka ega, Bu uni kvadrat deb ataymiz , aks holda Keling, uni romb deb ataymiz. Fizika: Agar elastik ta'sir , Bu tana vazni saqlanib qoladi , aks holda ommaviy o'zgarishlar

Keling, endi tarmoqlanish nima ekanligini aniqlaylik?

Tarmoqlanish - biror shartning bajarilishi yoki bajarilmasligiga qarab, u yoki bu harakatlar ketma-ketligi bajariladigan harakatlarni tashkil qilish shakli.

Algoritmik tilda bir yoki bir nechta amallarni o‘z ichiga olgan, sxema ko‘rinishida va BASIC dasturlash tilida berilgan to‘liq va to‘liq bo‘lmagan shakldagi tarmoq buyrug‘ini ko‘rib chiqamiz. Keling, uni jadval shaklida tashkil qilaylik.

Tarmoqlanish

to'liq bo'lmagan shaklda

to'liq shaklda

I. Faqat bitta harakatni o'z ichiga oladi

1.Algoritmik til

Agar holat keyin harakat

Agar holat keyin harakat 1 boshqa harakat 2

II. Bir nechta harakatlarni o'z ichiga oladi

1. algoritmik til

Agar holat

Bu 1-harakat, 2-harakat,…

Hammasi

Agar holat

Bu 1-harakat, 2-harakat, ...

aks holda 3-harakat, 4-harakat, ...

Hammasi

2. Blok-sxema

3. BASIC dasturlash tili

f 40 Agar holat keyin 50

50 50 harakat 1

60 harakat 2

40 Agar holat keyin 50 boshqa 80

50 ta harakat 1

60 harakat 2

70 borish 100

80 harakat 3

Filial operatori

Tarmoq (shartli o'tish) operatori mantiqiy shartlarga qarab ma'lum dastur buyruqlarini bajarishga imkon beradi. Visual Basic da filial operatori ikki shaklda qo'llanilishi mumkin: chiziqli va blokli.

Talabalar ishlarining Internet almashinuvi">

1-misol

Masalan, a > b Unda max = a Else max = b.

Agar bir nechta bayonotni bajarish kerak bo'lsa, ular ikki nuqta bilan ajratiladi.

2-misol

Masalan, a > 0 bo'lsa, b = a + 1: c = a\2.

Blok sintaksisi ko'proq imkoniyatlarni taqdim etadi, yanada tuzilgan va o'qilishi mumkin.

Blok sintaksisi:

Shart - qiymat qabul qila oladigan mantiqiy ifoda To'g'ri(to'g'ri), Yolg'on(noto'g'ri) yoki Null ga teng Yolg'on. Blok bo'limining operatori bajarilganda, shart tekshiriladi va agar rost bo'lsa, keyingi operator bajariladi. Keyin. Agar shart to'g'ri bo'lmasa, u tekshiriladi shart 2, orqasidan keladi ElseIf. Haqiqiy qiymat topilsa, quyidagi bayonot_at_true2 bajariladi Keyin, shundan so'ng dastur o'chadi EndIf(ya'ni, keyingi ElseIf, agar ular mavjud bo'lsa, tekshirilmaydi). Agar haqiqiy shartlar bo'lsa ElseIf topilmadi, bayonot noto'g'ri_shart ostida bajariladi.

Shakl 3. Blok sintaksisiga misol. Author24 - talabalar ishlarini onlayn almashish

Tanlash operatori

Case tanlash operatori Tekshirilayotgan ifoda yoki o'zgaruvchining qiymatlari to'plamiga qarab aniq iboralarni bajaradi. Operator sintaksisini tanlang:

4-rasm. Operator sintaksisini tanlash. Author24 - talabalar ishlarini onlayn almashish

Qiymat bir yoki bir nechta shartlarga nisbatan sinovdan o'tgan o'zgaruvchi yoki ifodadir. Qiymatlar ro'yxati vergul bilan ajratilgan, qiymatlar diapazoni funktsiya so'zi yordamida belgilanadi Kimga(masalan, 5 dan 9 gacha).

3-misol

Yilning oy raqamidan foydalanib, ko'rsatilgan oy yilning qaysi vaqtiga tegishli ekanligini ko'rsatadigan xabarni ko'rsating.

Ushbu bo'limda biz BASIC tilida tarmoqlanuvchi dasturlar qanday yozilishini ko'rsatamiz. Dasturni bajarishning tabiiy tartibini o'zgartiradigan eng oddiy buyruq bu GOTO buyrug'i (GO TO - "o'tish ..."). Bu buyruq shunday ko'rinadi

bu erda N - dastur qatori raqami. Ushbu buyruq yordamida kompyuter N buyruq raqamini bajarishga kirishadi.

Siz shoxlarni yozishning ikkita usuli bilan tanishsiz - to'liq bo'lmagan va to'liq. To'liq bo'lmagan shaklda filial quyidagicha yozildi:

Agar Q bo'lsa, u holda: P Filialning oxiri

(bu yerda Q shart, P esa shart rost bo‘lganda bajarilishi kerak bo‘lgan buyruqlar ketma-ketligidir).

Belgilanishning bu shakli BASIC tiliga turli usullar bilan tarjima qilinishi mumkin. Agar P bitta harakatdan iborat bo'lsa, u holda tarjima:

AGAR Q bo'lsa, P

(IF so'zi "agar" degan ma'noni anglatadi va THEN so'zi "keyin" degan ma'noni anglatadi). Masalan:

10 AGAR X>0 bo'lsa, Y = LOG (X) 20 ...

Agar o'zgaruvchining qiymati x>0 bo'lsa, u holda kompyuter ln x ni hisoblab chiqadi va natijani y o'zgaruvchiga beradi va keyin 20-raqamli buyruq bajariladi Agar x ning qiymati noldan oshmasa, u holda 20-sonli buyruq bajariladi darhol ijro etilishi.

Keling, P ketma-ketligi bir nechta amallardan iborat deb faraz qilaylik. Keyin shoxlanishning qisqartirilgan shaklini yozish qiyinroq bo'ladi. Masalan, P 6 ta amalni o'z ichiga oladi P 1, ..., P 6, filial 120-satrdan boshlanishi kerak va filialdan keyingi buyruq 150 raqamiga ega bo'lsin. Bu shuni anglatadiki, agar Q shart bajarilmasa, siz 150 buyrug'iga o'tish kerak. Shuning uchun yozuv quyidagicha bo'ladi:

120 AGAR YO'Q (Q) keyin 150 ga o'ting

. . . . . . . . . .

Bu erda EMAS (Q) Q shartining inkorini bildiradi (NOT - “yo'q”). Misol uchun, NOT (X = Y, va NOT (X = Y) XY degan ma'noni anglatadi.

Shakl satrlarida ham e'tibor bering

AGAR... KEYIN BOSHING

bu erda K - satr raqami, GOTO yoki THEN so'zlaridan biri, ya'ni uchta buyruq qoldirilishi mumkin.

AGAR ... BO'LSA, AGAR GA ... GA O'TING IF ... keyin esa TO TO

xuddi shu narsani anglatadi.

Masalan, maksimal ikkita raqamni topish algoritmi:

So'rov A, B. M ni A qiymatini belgilang. Agar M

BASIC da siz buni quyidagicha yozishingiz mumkin:

10 KIRISH A,B 20 M = A 30 AGAR M

Xuddi shu algoritmni BASIC ga boshqa yo'l bilan tarjima qilish mumkin:

10 KIRISH A,B 20 M = A 30 AGAR N0T(M

Keling, BASIC tilida filial buyrug'ini to'liq shaklda qanday yozishni ko'rsatamiz:

Q bo'lsa, u holda: P Aks holda: T Filialning oxiri.

Avvalgisiga o'xshab, agar P va T bitta harakatdan iborat bo'lsa, unda quyidagi tarzda tarjima qilish qulay:

AGAR Q BO'LSA P BOSHQA T

(ELSE - aks holda).

Agar P yoki T bir nechta harakatlardan iborat bo'lsa, unda quyidagi tarzda tarjima qilish qulayroqdir (masalan: P uchtadan, T - to'rtta buyruqdan iborat bo'lsin, filial 530-qatordan boshlanadi, filialdan keyingi qator 600 raqamlanadi. ):

530 AGAR Q KEYIN 536 531 T 1,532 T 2,533 T 3,534 T 4,535 GOTO 600 536 P 1,537 P 2,538 P 3,600 ...

Tekshiringki, ushbu fragmentni bajarishda Q shart bajarilsa, kompyuter P 1, P 2, P 3 buyruqlarini, Q bajarilmasa, T 1, T 2, T 3, T 4 buyruqlarini bajaradi. Va keyin tegishli buyruqlar seriyasini bajargandan so'ng, kompyuter 600-qatorda yozilgan buyruqni bajarishga kirishadi.

Funktsiya qiymatini quyidagi qoida bo'yicha hisoblash uchun misol dasturini ko'rib chiqamiz:

10 KIRISH X 20 AGAR X>=2 BO‘LSA Y=SQR(X) BOSHQA Y=ABS(X) 30 PRINT”Y="Y 40 ENDI

Bu dastur ham shunday yozilishi mumkin:

10 KIRISh X 20 AGAR X>=2 BO'LSA 50 30 Y=ABS(X) 40 GOTO 60 50 Y=SQR(X) 60 OKI

Keling, quyidagi “artilleriya” masalasini yechish uchun matematik model va dastur tuzamiz.

Vazifa. To'pdan ma'lum masofada devor mavjud. Qurolning moyillik burchagi va o'qning dastlabki tezligi ma'lum. Snaryad devorga tegadimi?

Birinchidan, odatdagidek, biz soddalashtiruvchi taxminlarni qilamiz. Biz o'qni moddiy nuqta deb hisoblaymiz, biz havo qarshiligini va qurolning o'lchamlarini e'tiborsiz qoldiramiz. Albatta, biz ham Nyuton qonunlari qanoatlantirilishiga ishonamiz. Muammoning shartlaridan dastlabki ma'lumotlarning nima ekanligi ayon bo'ladi: bu burchak a, dastlabki tezlik v, S devorgacha bo'lgan masofa va devorning balandligi h. Natijada, "urilgan" yoki "muvaffaqiyatsiz" xabarlardan biri. Dastlabki ma'lumotlar tabiiy cheklovlarga bog'liq: 00, h>0, 0

Bu shuni anglatadiki, L ni aniqlash uchun formulani olishimiz kerak. Fizika kursidan ma'lumki, snaryadning t vaqt ichida gorizontal va vertikal harakatlari mos ravishda tengdir:

x = (v cos a) t; y = (v sin a) t-gt 2/2,

bu yerda g - tortishish tezlashishi (9,8 m/s 2). Snaryadning S masofani qancha vaqt bosib o‘tishini aniqlaymiz:

t = S/(v cos a).

Ushbu t qiymatini y ifodasiga almashtirsak, L qiymatini olamiz:


Albatta, ushbu formula yordamida hisoblangan L qiymati ham manfiy bo'lishi mumkin. Bu snaryad devorga etib bormasligini anglatadi. Agar L h dan katta bo'lib chiqsa, u holda snaryad devor ustidan uchadi. Mana, matematik model qurilgan.

KOMPYUTER uchun algoritm tuzamiz:

Hisobot "Snaryadning dastlabki tezligini, devorgacha bo'lgan masofani, devor balandligini kiriting." So'rov v, S, h. Hisobot "Qurol barrelining burchagini kiriting." A soʻrovi. Agar Vn≤0 boʻlsa, unda: “Tezlik ijobiy boʻlishi kerak” deb xabar bering. STOP. Dallanishning oxiri. Agar vn≥1000 bo'lsa, unda: "Tezlik juda yuqori" deb xabar bering. STOP. Dallanishning oxiri. Agar S≥0 bo'lsa, unda: "Masofa ijobiy bo'lishi kerak" deb xabar bering. STOP. Dallanishning oxiri. Agar h≤0 bo'lsa, u holda: "Devorning balandligi ijobiy bo'lishi kerak" deb xabar bering. STOP. Dallanishning oxiri. Agar A≤0 bo'lsa, unda: "To'pponcha erga o'q otmasligi kerak" deb xabar bering. STOP. Dallanishning oxiri. Agar A≥3.14/2 boʻlsa, u holda: “Toʻpponcha devorga qaratilmagan” deb xabar bering. STOP. Dallanishning oxiri. L qiymatini belgilang Agar L>h bo'lsa, u holda: "Snaryad devorga tegmadi..." deb xabar bering. STOP. Dallanishning oxiri. Agar L

Endi ushbu algoritmni BASIC ga tarjima qiling (biz ko'p ishlarni allaqachon bajarganmiz).

Savollar

1. Kompyuterni hech qanday shartlarni tekshirmasdan, harakatlar tartibini o'zgartirishga majburlash uchun qanday buyruq ishlatilishi mumkin?

2. BASIC tilida tarmoqlanish qanday shakllanadi:

a) to'liq bo'lmagan shaklda;

b) to'liq shaklda?

3. “Artilleriya” masalasini yechish algoritmida birinchi 28 qator nima uchun kerak?

Mustaqil bajarish uchun topshiriqlar

1. 8-§dan 5-7 va 9-§dan 1-7-masalalarni yechish algoritmlarini BASIC tiliga tarjima qiling.

2. Quyidagi sonning kvadrat ildizini topish dasturidagi xatolarni toping va tuzating:

10 INPUT X 20 AGAR X> = 0 KEYIN 30 30 PRINT SQR(X) 40 GOTO 60 50 PRINT. "Ildizni hisoblab bo'lmaydi" 60 END

3. Kvadrat tenglamaning ildizlarini topish uchun quyidagi dasturda tajovuzkor 100 buyrug'ini o'chirib tashladi:

10 KIRISH A,B,C 20 AGAR A 0 KEYIN 50 30 PRINT “Bu tenglama kvadratik emas” 40 STOP 50 D=B^2 - 4∗A∗C 60 AGAR D

4. Quyidagi masalani yechish uchun BASIC tilida matematik model, algoritm va dastur tuzing.

Vazifa. To'p tepasida suzayotgan paytda do'l bulutining harakat yo'nalishi bo'yicha o'q uzadi. Barrelning moyillik burchagi, snaryad tezligi, bulutning uzunligi va tezligi, bulutning harakatlanish balandligi ma'lum. Snaryad bulutga tegadimi?

Visual Basic dasturidagi kod qatori dastur bayoni deyiladi. Dastur bayonoti Visual Basic kalit so'zlari, xossalari, funktsiyalari, arifmetik yoki mantiqiy operatorlari va belgilarning kombinatsiyasi bo'lib, ular birgalikda Visual Basic kompilyatori tomonidan tan olingan haqiqiy bayonotni tashkil qiladi.

93. Massivlar va sikl operatsiyalari

22-dars. sikl operatorlari For...Next va For Every

VB.NET dagi tsikllar boshqa dasturlash tillaridagi sikllarga o'xshaydi. Ushbu darsda biz ikki turdagi sikllarni ko'rib chiqamiz - For...Next va For Every tsikllari. For...Keyingi sikllar ma'lum bir necha marta bajariladi. Ya'ni, agar siz siklingiz necha marta bajarilishi kerakligini oldindan bilsangiz, u holda biz For...Keyingi sikldan foydalanamiz. For Every tsikli to'plamlar va massivlar elementlarini takrorlash uchun ishlatiladi. Masalan, For Every dan foydalanib, siz formadagi barcha elementlarni sanab o'tishingiz (o'tish) yoki ma'lumotlar bazasidagi barcha qatorlarni qayta ishlashingiz mumkin.

For...Next operatoriga misol:

Dim A(10) Butun son sifatida

Dim i Integer

"Masivni kvadratchalar bilan to'ldiring

"Masiv elementlarini olish

Console.WriteLine(A(i))

Bu misolda 10 ta butun sonli massiv avval raqamlar kvadratlari bilan to'ldiriladi, so'ngra massivning elementlari ekranda ko'rsatiladi. Chiziq o'rniga

Siz yozishingiz mumkin

For...Keyingi sikllarida sikl hisoblagichi (bu holda i) avtomatik ravishda o'zgaradi.

Berilgan misolda, har safar tsikl o'tganda hisoblagich 1 ga oshiriladi. Agar sizga boshqa qadam kerak bo'lsa, biz qadam bilan konstruktsiyadan foydalanamiz:

i = 0 dan 9 gacha 2-bosqich

“Biz nimadir qilyapmiz

Ushbu tsikl 5 marta bajariladi.

Keling, For Every tsiklidan foydalangan holda misolni ko'rib chiqaylik:

Dim z Butun son sifatida

Dim A(10) Butun son sifatida

"A massivini to'ldiring

Har bir z In A uchun

Agar z > 10 bo'lsa

Console.WriteLine(z)

Ko'rib turganingizdek, biz siklimizda A massivdagi barcha elementlardan o'tamiz (buni In A konstruktsiyasidan ko'rish mumkin). Agar massiv elementi 10 dan katta bo'lsa, biz uni ekranda ko'rsatamiz.

Odatda, For Every tsikllari turli to'plamlardagi elementlarni sanab o'tish uchun ishlatiladi (masalan, formadagi elementlar yoki Windowsdagi barcha shriftlar).

Muammolarni hal qilishda ma'lumotlar to'plamidan foydalanish. VB dagi massivlar. Indekslangan o'zgaruvchilar. Massivlarning tavsifi. Massiv indekslarining quyi va yuqori chegaralarini belgilash tartibi. Boshqaruv massivlari. Boshqaruv massivlarini yaratish tartibi. Massiv indekslangan o'zgaruvchini saqlash uchun ajratilgan xotira kataklari qatori bo'lishi mumkin. X1,Y2, Zt+1, Mi,j+1 – indeks o‘zgaruvchilari. => X(1), Y(2), Z(i+1), M(I, f+1) – YAPVUda sonlar qatori bilan ishlash uchun moʻljallangan. dlina (1), dlina (2), dlina (3) - bir o'lchovli massiv. Dim dlina (1 dan 3 gacha) As Integer – dasturdagi massivning tavsifi, 1 qatorning pastki chegarasi, 3 qatorning yuqori chegarasi. Massivlarni indekslash 0 yoki 1 dan boshlanishi shart emas. Index xossasi yordamida Index xossasini belgilash orqali boshqaruv elementlari massivi hosil bo ladi, biz kompyuterga bu ob ekt massiv elementi hisoblanishini aytamiz; Boshqaruv massivi - bu raqamlangan ob'ektlar qatori. Yaratish usuli: 1) Dizayn bosqichida Index xossasini belgilash. 2) Win-ga nusxalash orqali (nusxalash/joylashtirish). 3) Dasturiy ravishda (1(1) matnni yuklash - usul). Load formaga Text1(1) nomli obyektni yuklaydi. Ikki o'lchovli massivlar. Ular bir o'lchovlilarga o'xshash tarzda belgilanadi: Dim dlina (1 dan 3 gacha, 1 dan 4 gacha) Integer sifatida, ikki yo'nalishdagi chegaralar vergul bilan ajratilgan qavs ichida ko'rsatilgan, birinchi (1 dan 3 gacha) chegaralar vertikal va ikkinchisi gorizontal (1 dan 4 gacha). Ikki oʻlchovli massiv elementiga kirish: dlina(1,3) – birinchi qatordagi element, uchinchi ustun.

Ma'lumotlar massivlari bir nechta o'zgaruvchan qiymatlarni saqlash uchun ishlatiladi:

Statik x(2) Butun son sifatida (x=0,1,2).

Agar massivning o'lchamini oldindan aniqlash mumkin bo'lmasa, u holda dinamik massiv ishlatiladi:

Dim Y() butun son sifatida.

Kalit so'z doimiylarni aniqlash uchun ishlatiladi:

Const Pi = 3.142.

Massiv protsedura parametri sifatida

Rem Program_2.5 – massiv protsedura parametri sifatida

Dim n Integer

Dim yolg'iz

Dim x(2) Yagona

x(1) = 5: x(2) = 15: s = 0

Sumir(x(), n, s) ‘ ga qo‘ng‘iroq qiling ‘ massiv elementlarini yig‘ish protsedurasini chaqiring

MsgBox "s = " & Str(lar)

Sub sumir (x() Yakka, n Butun son, s Yakka)

Dim i Integer

Funksiya deganda asl nom ostida birlashtirilgan operatorlar guruhi tushuniladi. Funktsiya nomidagi oxirgi belgi u qaytaradigan qiymat turini belgilaydi.

Foydalanuvchi tomonidan aniqlangan funksiyalar (foydalanuvchi tomonidan tuzilgan kutubxona funksiyalari emas) kodni tahrirlash oynasiga Function kalit soʻzidan iborat sarlavha va undan keyin qavslar ichidagi kerakli argumentlar bilan funksiya nomini kiritish orqali eʼlon qilinadi. Shundan so'ng, quyidagi shablon avtomatik ravishda paydo bo'ladi:

FUNCTION_NAME funksiyasi

Funksiya nomi va End Function kalit so'zlari orasidagi bo'shliqqa kerakli iboralar kiritiladi.

Agar funktsiyani chaqirayotganda unga har qanday qiymatlar (argumentlar) berilishi kerak bo'lsa, unda funktsiya nomidan keyin sarlavhada tegishli o'zgaruvchilar vergul bilan ajratilgan holda ro'yxatga olinishi kerak.

Funktsiyani aniqlashning umumiy sintaksisi:

FUNCTION_NAME funksiyasi(PARAMETER_1[, PARAMETER_2]...)

OPERATOR_1

[OPERATOR_2]

FUNCTION_NAME = ISFODA

bu yerda PARAMETER – funksiya chaqirilganda unga uzatiladigan ma’lumotlar elementi; Statik - agar ushbu kalit so'z funksiya deklaratsiyasida mavjud bo'lsa, funktsiya tanasida e'lon qilingan mahalliy o'zgaruvchilar ushbu funktsiyaga qo'ng'iroqlar orasida o'z qiymatlarini saqlab qoladilar.

Funksiyalarni chaqirish usullari: X = fun1(Y), yoki fun1 Y chaqirish.

Agar funktsiya belgi (string) qiymatini qaytarishi kerak bo'lsa, uning nomidagi oxirgi belgi $ belgisi bo'lishi kerak.

Har bir funktsiya har doim faqat bitta qiymatni qaytaradi.

Funktsiyalarga misollar:

1. Funksiyadan parametrni uzatish

Rem Program_2.6 – Funksiyadan parametrni uzatish

Dim x Single, y As Single, s As Single

s = sumir(x, y) ‘ ikkita sonni yig‘ish funksiyasini chaqiring

MsgBox "s = " & Str(lar)

Funktsiya yig'indisi! (x!, y!) ‘ ikki sonni yig‘ish funksiyasining ta’rifi

sumir! = x! +y!

Oddiy o'zgaruvchilarga qo'shimcha ravishda siz qiymatlarni saqlash uchun massivlardan foydalanishingiz mumkin. Massiv - bir xil nomli va turli indekslarga ega bo'lgan o'zgaruvchilar to'plami. Har bir bunday o'zgaruvchi massiv elementi deb ataladi. Massivda saqlanadigan elementlar soni massivning o'lchami deyiladi. Massivning o'lchami RAM miqdori va massiv elementlarining ma'lumotlar turi bilan chegaralanadi. Barcha massiv elementlari bir xil turga ega. Biroq, agar massiv tipli variant bo'lsa, u holda alohida elementlar har xil turdagi ma'lumotlarni o'z ichiga olishi mumkin. Masalan, ba'zi elementlar raqamlar bo'lishi mumkin, boshqalari qatorlar yoki ob'ektlar bo'lishi mumkin. Visual Basic-da qat'iy o'lchamli massivlar va dinamik massivlar mavjud. Ruxsat etilgan o'lchamli massiv e'lon qilinganida ko'rsatiladigan qat'iy o'lchamga ega. Dinamik massivlar bajarilish vaqtida hajmini o'zgartirishi mumkin. Ikki o'lchovli massiv nima? Bu bir xil turdagi ma'lumotlar to'plami bo'lib, ularning har bir elementining joylashuvi bitta indeks bilan emas, balki ikkita bilan belgilanadi. Masalan, bolaligidan "dengiz jangi" o'ynaganlar uchun o'yin maydonining har bir katagi ikkita belgi - harf va raqam bilan belgilanishi kashfiyot bo'lmaydi, masalan, A5 - "o'tkazib yuborilgan", I10 - "urdi", Z7 - "o'ldirildi" ". Faqat BASICda indeks sifatida butun sonlardan foydalanish odatiy holdir. Ikki o'lchovli massivlardan foydalanishning hayotiy misoli - kino yoki teatr chiptalari, har bir tomoshabin uchun ikkita koordinata - qator va o'rindiq.

Shunga o'xshash massivlar BASIC tilida bir xil dim operatori yordamida tasvirlangan, shundan so'ng massivning ikki o'lchami qavs ichida ko'rsatilgan - qatorlar soni va ustunlar soni.



 

O'qish foydali bo'lishi mumkin: