Жиымдар (Массивтер). Паскаль тіліндегі жиымдар

Сабақтың тақырыбы:  Жиымдар (Массивтер). Паскаль тіліндегі жиымдар

Сабақ мақсаты:

Білімділік: Оқушылардың Паскаль бағдарламалау тілі бойынша және оның ішінде жиымдар бойынша білімдерін жетілдіру.

Дамытушылық: Оқушылардың программа құруға деген қабілеттерін,жиымдар туралы ұғымдарын, ізденушіліктерін, қызығушылықтарын дамыту

Тәрбиелік: Оқушыларды дұрыс программа құра алуға, жиымдардың және Паскаль тіліндегі жиымдардың не екенін  білуге, үлкенді сыйлауға, сабаққа деген қызығушылықтарын арттыруға тәрбиелеу.

Сабақтың түрі: Дәстүрлі

Сабақтың типі: Аралас

Көрнекілігі: коипьютер, оқулық

Әдебиеттер: 1.9 сынып «информатика және есептеу техникасы негіздері»

Б.Бөрібаев, Б.Нақысбеков, Г.Мадиярова

  1. 9 сынып «Есептер және жаттығулар жинағы»

Сабақтың жоспары:

1Ұйымдастыру кезеңі                 2    мин

  1. Үй тапсырмасын сұрау 10 мин

3.Жаңа тақырып өту                    15  мин

4.Жаңа тақырыпты бекіту           10 мин

5.Сабақты қортындылау              3 мин        

Сабақтың барысы:

1.Ұйымдастыру кезеңі. Сәлеметсіңдер ме балалар? Отырыңдар. Сыныпта кім кезекші? Сыныпта кім жоқ?

  1. 2. Үй тапсырмасын сұрау. Тест тапсырмасы арқылы.

 

 

Тест

I – нұсқа

1.Символдық мәліметтерді өңдеуде символдық типті анықтайтын түйінді сөз.

  1. String
  2. Char
  3. Real
  4. Integer
  5. Символдық айнымалының компьютер жадынан алатын орны.
  6. 1 байт
  7. 2 байт
  8. 3 байт
  9. 4 байт
  10. Бүтін типтегі өрнекті символға түрлендіретін стандартты функция.
  11. Ord
  12. Pred
  13. Chr
  14. Succ
  15. символдық деректерді пернетақтадан енгізетін оператор.
  16. Writeln
  17. Input
  18. Read
  19. Output
  20. Сканерлеу кодын жүзеге асыратын функция.
  21. EOLN
  22. Readkey
  23. CRT
  24. NOT
  25. EOLN (end of line ) –
  26. Жол басы
  27. Программа соңы
  28. Жолдың соңы
  29. Программа басы
  30. Жолдың ұзындығын анықтайтын функция
  31. String
  32. Integer
  33. Single
  34. Real

8.Тіркестік өрнек дегеніміз не?

  1. Символдар саны 256 символдан асатын апостраф ішіне алынған символдар тізбегі;
  2. Мәліметтердің құрылымдық типі;
  3. Функцияларды, процедураларды, тұрақтыларды, айнымалыларды енгізуге арналған тіркестер;
  4. Амал белгілері, тіркестік тұрақтылар, айнымалылар, функция атауларынан құрылған , ұзындығы 256 символдан артпайтын тізбек;
  5. Біріктіру амалын орындайтын функция.
  6. Insert
  7. ConCat
  8. Pos
  9. Upcase
  10. Паскаль тілінің стандартты функциялары.
  11. CHR,ORD
  12. COPY,ConCat
  13. Length,Pos, Upcase
  14. Барлық жауап дұрыс

 

 

 

 

 

Тест

II – нұсқа

  1. символдық мәліметтерді шығару операторы .
  2. Write
  3. Read
  4. Input
  5. Output
  6. Кіші латын әріптерін бас әріпке айналдыратын функция.
  7. Ord
  8. Pred
  9. Succ
  10. Upcase
  11. Жолдық тұрақты жегеніміз не?

а)Символдар саны 256 символдан аcпайтын апостраф ішіне алынған символдар тізбегі;

b)Мәліметтердің құрылымдық типі;

c)Функцияларды, процедураларды, тұрақтыларды, айнымалыларды енгізуге арналған тіркестер;

d)Амал белгілері, тіркестік тұрақтылар, айнымалылар, функция атауларынан құрылған , ұзындығы 256 символдан артпайтын тізбек;

  1. Тіркестік айнымалының мәніндегі символдар санын қай функция арқылы анықтаймыз?
  2. Upcase
  3. Pos
  4. conCat
  5. Length
  6. S= ‘ ДЭЕМ IBM’ берілген, delete (S,1,4) болғанда нәтиже қандай?
  7. ‘ДЭМ’
  8. ‘IBM’
  9. ‘ЭЕМ’
  10. ‘ЭM IBM’
  11. «Информатика» сөзінің ұзындығы нешеге тең?
  12. 13
  13. 11
  14. 14
  15. 12
  16. ‘MS-DOS’<’ MS-dos’ амалы орындалғанда нәтижесі …
  17. False
  18. True
  19. String
  20. Single
  21. Паскаль тілінің сөз тіркесмтерін өңдейтін процедуралар.
  22. CHR, ORD, COPY, CONCAT
  23. DELETE, INSERT, STR, VAL
  24. LENGTH, INSERT, ORD, COPY
  25. UIPCASE, STR, CHR, CONCAT
  26. Символдық айнымалының компьютер жадынан алатын орны.

a)1 байт

b)2 байт

c)3 байт

d)4 байт

10.Тіркестік өрнек дегеніміз не?

a)Символдар саны 256 символдан асатын апостраф ішіне алынған символдар тізбегі;

b)Мәліметтердің құрылымдық типі;

c)0Функцияларды, процедураларды, тұрақтыларды, айнымалыларды енгізуге арналған тіркестер;

d)Амал белгілері, тіркестік тұрақтылар, айнымалылар, функция атауларынан құрылған , ұзындығы 256 символдан артпайтын тізбек;

 

 

 

 

Жауаптары:

 

I – нұсқа                                                                        II – нұсқа

 

1.b                                                                1.a

2.a                                                                2.d

3.c                                                                3.a

4.c                                                                4.d

5.b                                                                5.b

6.c                                                                6.b

7.a                                                                7.b

8.d                                                                8.b

9.b                                                                9. a

10.d                                                             10.d

 

3.Жаңа тақырып түсіндіру.

 

Енді бүгінгі біздің өтетін жаңа тақырыбымыз Жиымдар (Массивтер) және Паскаль тіліндегі жиымдар деп аталады. Дәптерлеріңе бүгінгі күн мен жаңа тақырыпты жазып қойыңдар. Сонымен бүгінгі жаңа тақырыбымызға көшсек.

Мәліметтерді ұйымдастырудың кестелік тәсілі. Бұған дейін біз алгоритм құрастыру жйында айтқан едік, бірақ оған қатысатын объектілер туралы айтылған жоқ болатын. Негізінде, алгоритмді қарастыруда оған керекті деректер қалай ұйымдастырылғаны туралы: реттелген, нөмірленген т.б. білуіміз керек. Тек оператор мен командаларды ғана емес, оларға қажет деректерді де дұрыс орналастыра білу керек.

Мәліметтерді ұйымдастыру тәсілдерінің кең тараған түрі – кестелік тәсіл. Кестелік мәліметтермен күнде жұмыс істейміз десек, артық болмас. Шахмат турнирінің естесі, сынып журналы, көбейту кестесі, көрермендер залындағы орындар схемасы – барлығы да мәліметтерді кестелік түрде ұйымдастыру тәсілінің мысалы.

Мысалы, 9 «а» — сынып оқушылары әдебиеттен шығарма жазды делік, солардың ішіндегі Байжанов Д. қандай баға алғанын білгіміз келсе, «Әдебиет» пәні бетін ашып, Байжанов Д. деп жазылған жолды тауып, алған бағасын қараймыз. Жол мен бағана қиылысындағы іздеген бағаны тауып аламыз.

Сабақтан соң театырға барындар делік. Билетке сәйкес залдағы орынды қалай табасың? Алдымен тура жүріп, өз қатарымызды, сонан соң қатар бойымен жылжып керекті орынды табамыз.

Осы мысалдардың ұқсас екені айтпаса да түсінікті. Сынып журналындағы баға мен театр залындағы әр түрлі болғанымен, олардың орналасуы өте ұқсас: ұзындықтары бірдей бірнеше қатарлардан (жолдардан) тұрады. Мәліметтерді осылай орналастыру тәсілі кестелік деп аталады. Кесте бір – ақ жол болуы да мүмкін. Мұндай кесте сызықтық деп аталады. Бірнеше жолдан тұратын кесте тіктөртбұрышты кесте деп аталады.

Сызықты және тік төртбұрышты кесте элементтерімен жұмыс істеу үшін оларды бір ережеге сәйкес (жүйелік тәрттіппен) белгілеп қолданылады. Кесте жолдарын жоғарыдан төмен қарай, ал бағаналарды солдан оңға қарай белгілеу  қабылданған. А сызықтық кестенің і – орынында тұрған элементі А[і] болып жазылады, ал итіктөртбұрышты Х кестесінің і-ші жолы мен j – ші бағанасының қиылысында орналасқан элемент Х  [і j] болып белгіленеді. Мысалы төмендегі А кесіндісінде:

7                            2                                 3                                 34

4                            5                                 0                                 – 3

1                            3                                 8                                 1.2

А [1,1]=7,             А [2,3]=0,                   А [1,3]=3,                   А [2,4]=3.2.

Программалау тілдерінде кестелік мәліметерге жиымдар (массивтер) сәйкес келеді.

әр түрлі программалау тілінде жиымдарды жазу ережесі әр түрлі бола береді. Мысалы, бір сыныптағы N оқушысының бойлары алгоритмдік тілде бірөлшемді жиыммен былай беріледі: нат R(N). N –– осы жиым элементтерінің мүмкін болатын ең үлкен макксимальді нөмірі. Бұл жиым Паскаль тілінде  R(N) болып жазылады. Жиым эелементтері нөмірленген (индекстелген) айнымалылар болып табылады. Айнымалы аты жиым атымен бірдей болады. сынып оқушыларының бойларфы жиым түрінде берілсін делік. Сонда R(N) жиымы эелементтрін әрқайсысы үшін ашып жазуға болады: R(N)=[156, 162, …., R[i], …, 164], мұндағы индекстер (тік жақша ішінде) жиым элементтері нөмірін анықтайды;  R[i] – жиымының і –ші элементі.

Жоғарғы мысалда бірөлшемді (сызықтық) жиым берілген, екіөлшемді жиымның мысалы ретінде көбейту кестесін нат Т[1:9, 1:9] қарастыруға болады. оның әр бір элементі Т[i,j] индекстерінің көбейтіндісіне тең болады. екіөлшемді жиым индекстері: і – жол нөмірі, j – бағана нөмірі. Алгоритімдік тілде ол былай болып жазылады: кесте бүт G[I:N].

Төмендегі кесте алты бағанадан тұрады. әрбір бағана – бірөлшемді жиым. Оларды реттеп алгоритмдік тілде жазып шығайық.

5.1 кесте.

Фамилиясы

F[I:N]

Туған жылы G[I:N] Бойы

R[I:N]

Салмағы

W[I:N]

Спорт

S[I:N]

1 Байженов 1991 156 52,2 0
2 Бақытұлы 1990 162 61,5 1
Серіков 1991 164 59,4 0

 

Бірінші жиым – тізімдегі оқушылар нөмірі. Бұл натурал сандар қатары, нат. N[1:N]

Екіншісі – оқушының аты – жөні – литерлік (символдық, жолдық) шамалар жиымы лит F [1:N]

Үшінші, төртінші жиымдар – туған жылы мен бойларының ұзындығы – бүтін сандар жиымы бүт G [1:N]  және бүт R [1:N]

Бесінші – оқушылар салмағы – нақты сандар жиымы нақ W [1:N]

Соңғы, алтыншы жиым – олар айналысатын спорт түрі. Бұл логикалық шамалар жиымы, лог S [1:N]

Кесте жолдарында берілген мәліметтер – жазба болып табылады.

 

Паскаль тіліндегі жиымдар

Жиым – бұл бір атаумен белгіленіп біріктірілген біртекті элементтер жиыны. Жиындардың негізгі параметріне оның типі (сандық, символдық, логикалық), өлшемі (бірөлшемді, екіөлшемді т.с.с) және көлемі (жиымдардың әрбір өлшемдегі элементтерінің саны) жатады.

Паскаль тілінде қарапайым айнымалылармен қатар жиым түрінде біріктірілген айнымалылар да жиі кездеседі. Мысалы, нақты сандардан құрылған төмендегі тізбекті

1.6, 14.9, -5.0, 8.5, 0.46, 2.25, -9.85, 6.27, 5.7, -3.2

бірөлшемді жиым деп, оған А деп атау беруге болады. жиымның әр элементі жиымның атымен белгіленеді де, тік жақша ішіне оның индексі қойылады. Математикада жиым вектор түріндекөрсетіледі де, А1, А2, …,Аn немесе жалпы түрде Аi, i=1, 2, …, n болып өрнектеледі. Индекстер нақты типтен басқа кез келген скаляр (реттелген) тұрақты немесе өрнек күйінде бола береді. Жиым элементтерінің саны оның индексінің мәнімен және олардың өзгеру аралығымен анықталады.

Жиымды сипаттау үшін array of тиімді сөз қолданылады.

Оның жазылу пішімі:

Type <тип аты> = array [<индекс типі>] of <элемент типі>;

Var  <идентификатор, …>:<тип аты>;

мұндағы  array (жиым), of (-дан, -ден, -тан, — тен) – түйінді сөздер; [<индекс типі>] – real, integer базалық өзге кез келген стандартты тип, яғни индекстің типі ретінде шектеулі саналатын, логикалық және литерлік типтер пайдаланылады; <элемент типі> Құраушылар типі, яғни Паскаль тілінде пайдалануға болатын жиым элементтерінің типі.

Программада жиым пайдаланылатын болса, онда ол VAR айнымалы бөлігінде немесе TYPE бөлігінде қажет екені көрсетіледі. TYPE бөлігінде жиымның типі көрсетіледі де, однан соң айнымалы VAR бөлігінде осы типке жататын жиымдар немесе олардың тізімі көрсетіледі. Мысалы, программада нақты 40 элементтен тұратын А жиымы пайдаланылатын болса, онда оны тип бөлігінде былай сипаттайды:

Type        m=array []1..40[ of real;

Var          a,b,c,d: m;

мұның артықшылығы программада типі m болатын бірнеше жиым бір ғана жолмен сипатталып тұр.

Жиым типтер бөлімінде көрсетілмей, бірден айнымалылар бөлімінде былай да анықтала береді:

var  <идентификатор, …>: array [<Индекс типі>] of

[<элемент  типі>]

мысалдар:

type

Klass = (K1, K2, K3, K4);

Znak = array [1..255] of char;

Var

M1: Znak;{Znak типі типтер бөлігінде анықталмаған}

M2: array [1..60] of integer; {M2 жиымын тікелей сипаттау}

M3: array [1..4] of Klass;

Mas: array [1..4] of integer;

Lit: array [char] of real;

Ogr: array [5..15] of char;

Bol: array [boolean] of integer;

A: array [1..5] of real;

Aj: array [қаңтар, …, желтоқсан] of integer;

Бірөлшемді жиымды көбінесе сызықты жиым дейді, оларды типі бөлігінде сипаттаудың тағы да бірнеше мысалын қарастырайық.

Type

S1 = array [1..n] of real;

S2 = array [1..M] of integer;

S3 = array [1..K] of char;

S4 = array [0..20] of boolean ;

Var A,B: S1;

L,G: S4;

C    : S2;

D   : S3;

Программада «индекс» және «индекс типі» ұғымдарын шатастыруға болмайды.

Индекс типі жиымды сипаттағанда пайдаланылса, индекс жиым элементтерін белгілеу үшін операторлық бөлікте пайдаланылады. Индекс өрнек, айнымалы немесе тұрақты түрінде берілуі мүмкін. Сондықтан да көбінесе жиымдарды индексті айнымалылар деп те атайды. Ал индексіз айнымалыларды жиымдардан ажырату үшін қарапайым айнымалылар деп атайды.

Паскаль тілінде жиымдарға =, <> және меншіктеу амалдарын қолдануға болады. Кесте. Ал жиым элементтері үшін олардың типіне сәйкес кез келген амал орындала береді.

Мысалы: А және В жиымдары былайша сипатталса:

VAR A, B: array [1..10] of real

онда пайдаланылған амалдар төмендегідей нәтиже береді.

Өрнек Нәтиже
А = В

 

А <> В

 

 

А := В

А жиымының әр элементінің мәні В жиымының сәйкес элементінің мәніне тең болса, онда нәтиже ??? болады.

А жиымының ең аз дегенде бір элементінің мәні В жиымының сәйкес элементінің мәніне тең болмаса , онда нәтиже  ?? болады.

В жиымының барлық элементтері А жиымының сәйкес элементтеріне айналады.

Жиым элементтері өрнектерде read, readln, write, writeln тәрізді операторлардың параметрі міндетін атқара отырып, циклдік операторларда пайдаланылады немесе айнымалыларға басқа мән меншіктеуге  операнд (аргумент) ролін атқарады.

Мысалы, А жиымы элементтерін пернетақтадан енгізу үшін:

For I :=1 to n do

Read(a[i])

А жиымы элементтерін экранға шығару үшін

For I :=1 to n do

Write(a[i])

операторлары қолданылады.

Жаңа сабақты бекіту:

  • Жиым дегеніміз не?
  • Паскаль тіліндегі жиымдарды қалай түсінесің?
  • Жиымдар программа барысында қалай жазылады?

Қорытындылай келе бүгін біз жиымдар және Паскаль тіліндегі жиымдар туралы өттік. Олардың әрқайсысына тоқталып, сипаттадық. Енді бүгінгі тақырып бойынша қандай сұрақтарың бар?

 Бағалау. Үй тапсырмасына және өтілген тақырып сұрақтарына жауап берген балалар бағаланады.

Үйге тапсырма «Жиымдар. Паскаль тіліндегі жиымдар» 125 – 130 беттерді оқып келу.

Сабақ аяқталды! Сау болыңдар!