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

1. Кестелік шамалар, алгоритмдегі кестелік шамаларды Паскалда программалау жолы мен әдісдері туралы түсінік қалыптастыру. ARRAY опреторы арқылы программалауды үйрену, пысықтау. Бір және екіөлшемді жиымдар туралы ұғым қалыптастыру.
2. Программаны математикалық модел құру арқылы сапалы жазу дағдысын қалыптастыру. Жиым элементі, элементті берілген қасиеті бойынша іздеу, сұрыптау туралы түсініктер қалыптастыру. Есептерге программалар жазып компьютерде орныдау.
3. Программа мәтінін экранға және дәптерге жазудың эстетикасын сақтау.
барысы:
(3 мин)
Ұйымдастыру.
- Оқушыларды түгелдеу, журнал толтыру, оқушылардың дәптерлерін, оқулықтарын қарап шығу.
- Сынып, тақта, парта тазалығын қарап шығу, қажет болса ескертулер жасау.
- Оқушылардың назарын сабаққа аудару.
Жаңа сабақ
(20 мин)
1-сабақ лекция.
Кестелер
1. Алгоритм құру, программа жазу барысында оған қатысатын кең тараған негізгі обектілердің бірі кестелер. Оның мысалдары:
Натурал сандар тізімі 1, 2, 3, . . . , N жазылуы N[1. . N]
Нақты сандар 2, 3. 5, -7, 11, 0, 91, 0, 9, -75, 0, . . . , 0. 005 NC[1. . N]
Оқу орындары мектеп, лицей, колледж, университет, . . . , магистратура ok[1. . n]
Бұл мысалдарда тізімде кілең біртекті элементтер жазылған. Асты сызылған сөздер тізбектік атауларын береді. Атауды латын әрптер тізбегімен де көрсетуге болады.
Сонымен, Жиым деп белгілі атауы бар, біртекті элементтерден тұратын кестені айтады. Нақты сандар кестесін қарастырайық.
мұндағы nc[i] -жиым элементі, і - жиым элементерінің реттік нөмірі, оны индекс деп те атайды.
Мысалы: nc[3] =>3. 5, nc[4. . 6] =>{0, 91, -75}
Кестенің екі түрі бар:
Сызытық кесте - элементтері бірінен кейін-бірі (жол бойында) немесе бір-бірінің астына (баған бойына) орналасады. (математикадағы прогрессиялар, оқушылар тізімі . . . )
Тік төртбұрышты кесте- элементтері баған мен жолдың қилысында ұяшықтарда орналасады. (көбейту кестесі, сабақ кестесі . . . )
Біз әзірге сызықтық кесте элементтерін программалап үйренеміз.
Паскал тіліндегі жиымдар.
Жиымның негізгі параметрлері мыналар: типі (сандық, символдық, логикалық), өлшемі (бірөлшемді, екіөлшемді . . . ) және көлемі (жиымдағы элементтердің саны) .
Бірөлшемді жиымды Паскалда былай жазады:
<atay> : array [1. . n] of <элемент типі>
Мұндағы: <atay> - жиым (кесте) атауы, 1 алғашқы элемент нөмірі, n- ақырғы элемент нөмірі, <элемент типі>-integer, real немесе string…болатын элемент типі, array- (жиым) операторды белгілеуге арналған Паскалдың қызметші сөзі.
Сабақты бекіту
(10 мин)
Жетелеу : 7 оң санба теріс сан ба?, -9 оң санба теріс сан ба?, 5, 5 оң санба теріс сан ба?, х оң санба теріс сан ба?
Есеп. 10 элементтен тұратын нақты сандардың жиымы берілген. (Кестеге қараңдар) . Осы кестеде қанша оң сан бар екенін анықтайтын программа жазыңыз.
Математикалық модель.
1. Не белгілі? элемент нөмірі белігілі і- бүтін сан,
кесте белгілі nc[1. . 10] - типі нақты .
2. Не істеу керек? Оң сандар санын табу s - бүтін сан.
3. Қалай есептейміз?
Алдымен кесте элементтерін for операторы көмегімен енгіземіз. Тағы да сол оператор көмегімен барлық элементтердің оң екендігін тексереміз.
Сонымен i=1 … 10 дейін өзгереді кесте элементтерін енгіземіз
Тағыда i=1 … 10 дейін өзгереді, әр жолы егер nc[i] >0 болса s мәнін 1-ге арттырып отырамыз.
Нәтижені экранға шығарамыз. Сонда Pascal ABC-тегі программамыз былай болып шығады.
program keste01_54;
var nc: array [1. . 50] of real;
i, s:integer;
begin
s:=0;
write ('арасын бөліп 10 нақты сан енгіз ') ;
for i:=1 to 10 do
read (nc[i] ) ;
for i:=1 to 10 do
if nc[i] >0 then s:=s+1;
writeln;
writeln ('Кестеде ', s, ' оң сан бар') ;
end.

Сынып жұмысы
(10 мин)
Тапсырмаларды дәптерге орындаңдар;
Жоғарыдағы программаны жиымдағы
№1. теріс элементтердің санын шығаратындай;
№2. 0-дерді санап шығатындай;
№3. оң сандардың қосындысын есептейтіндей;
№4. теріс сандардың қосындысын есептейтіндей етіп өзгертіңіз.
Үйге тапсырма
5 мин.
Үй тапсырмасымен жұмыс
10 мин.
1. Үй жұмысының орындалуын тексеру, есепке алу
Үй жұмысы орындалған, бірақ дұрыс емес - 1 ұпай,
жартылай дұрыс - 2
толық дұрыс - 3
жоқ - 0
2. Қысқаша сұрақ-жауап. (1-2 ұп)
- Жиым дегеніміз не?
- Жиым параметрлеріне сипаттама бер.
- Жиымға мысалдар келтір(сандық, символдық, жолдық) .
- Кестелердің қандай түрлері бар, мысал келтір.
- МЕКТЕП жиымында қандай біртекті элементтер болуы мүмкін?(оқушы, ұстаз, кіпхана, кітап, . . . )
- АСПАН жиымында қандай біртекті элементтер болуы мүмкін
- Паскаль тілінде жиымдар қалай жазылады. Сипаттама бер.
- Қайталау параметрі деген не?(қайталау санын көрсететін, әр қайталау сайын 1-ге артып отыратын натурла типті шама)
- Шарт деген не?(жауабы «иә» немесе «жоқ» болатын ұйғарым)
- Үй тапсырмасының әр жолын талдап шық.
Журналдағы тізім бойынша әр оқушы бір сұраққа жауап береді. Сұрақтар бітіп қалғанда басынан бастап қайтадан қойыла береді. Әр қайталанған сайын сұрақтар күрделене береді. Бір дұрыс жауапқа бір ұпай.
Бірөлшемді жиым.
Компьютерде атқарылатын өңдеу жұмыстарының 90% қасиеттері бойынша сұрыптау әрекеттерінен тұрады деседе болады. Қарапайым сұрыптауға жиымның ең үлкен нмесе ең кіші элементін табу программалары жатады.
Бұл программалардың идеясын анықтап көрелік.
-Массасы әртүрлі бір топ темір шарлардың ең ауырын қостабақты тараз көмегімен гирлерсіз қалай анықтауға болады? (Тараздың екі табақшасына екі шар саламыз. Жеңілін қалғанына қоспай бөлек тастап, басқа шарды саламыз. Шарлар таусылғанша осы әрекетті қайталай берсек ақырында табақшада ең ауыр шар қалады. )
- Ұзындығы әртүрлі жіптердің ең қысқасын өлшеу құралдарынсыз қалай табуға болады?
- Кім осы тәріздес сұрақ қоя алады?
Есеп: 5 сөзден тұратын сөздер тізбегі берілген. Ең ұзын сөзді анықтайтын программа жазыңыз.
1. сөз жиымы белгілі sz[1. . 5] типі жолдық,
жиымдағы сөз нөмірі і - бүтін сан.
2. ең ұзын сөзді анықтау керек sz[x] -типі жолдық және оның нөмірін x - (бүтін), символдар санын анықтау,
3. Ең ұзын сөзді табу үшін алғашқы сөздің ұзындығын max (бүтін) деп алып, оны келесі сөздің ұзындығымен салыстырамыз, егер ол сөзін ұзын болса ауыстырамыз, болмаса тексеруді ары жалғастырамыз. Ең соңында ұзын сөз анықталады.
program maxsimvol;
var sz:array[1. . 5] of string;
i, x, max:integer;
begin
write('әр жолға бірден 5 cөз енгіз ') ;
for i:=1 to 5 do
read(sz[i] ) ;
max:=length(sz[1] ) ; x:=1;
for i:=2 to 5 do
begin
if max<length(sz[i] ) then begin max:=length(sz[i] ) ; x:=i; end;
end;
writeln;
writeln('Ең ұзын сөз ', sz[x] ) ;
writeln('Рет нөмірі ', x) ;
writeln('Сөздегі әріптер саны ', length(sz[x] ) ) ;
end.
Екіөлшемді жиым.
Төртбұрышты кестені екіөлшемді жиым немесе матрица дейді. Оның элементі екі индекспен берілетіні түсінікті. Baga[i, j] екіөлшемді жиымының i-жолы мен j-бағанының қилысында тұрған элементтің белгіленуі.
Паскалда жазылу түрі:
<atauy>:array[1. . m, 1. . n] of <элементтер типі>;
ЕСЕП: Оқушылар үш топқа бөлініп, 5 сұрақ бойынша білім сайысына түсті. Топтардың жинаған ұпайларын есептеп, экранға матирца түрінде басып шығаратын программа жазыңыз.
Математикалық моделі
1. Екі өлшемді жиым top[1. . 5, 1. . 3] элементтер типі нақты сандар;
жиым жолының нөмірі i және бағанның нөмірі j бүтін сандар.
2. Топ ұпайлар саны s1, s2, s3 нақты сандар;
топтың орны n - бүтін.
3. Қалай есептейміз немесе есептеу идеясы:
Кесте тақырыбына топтардың аттарын жазамыз, сұрақ нөмірлерін write операторының көмегімен келтіреміз.
і 1-ден 5-ке дейін, j=1… 3 дейін өзгереді, әр топтың әр сұрақ бойынша алған ұпайларын енгіземіз.
і 1-ден 5-ке дейін, j=1… 3 дейін өзгереді, баған бойынша әр топтың ұпайын есептейміз, s1, s2, s3 анықталады.
s1, s2, s3 өз ара салыстырып топтардың орындарын анықтаймыз.
Программа мәтіні:
program jarys;
uses Crt;
var i, j:integer;
top:array[1. . 5, 1. . 3] of real;
s1, s2, s3:real;
begin
writeln('Кесте элементтерін жол б-ша пробел арқылы енгізіңіз енгізіңіз ') ;
s1:=0; s2:=0; s3:=0;
for i:=1 to 5 do
for j:=1 to 3 do read(top[i, j] ) ; {кесте енгізу}
for i:=1 to 5 do
begin
for j:=1 to 3 do
begin
if j=1 then s1:=s1+top[i, j] ; {ұпай есептеу}
if j=2 then s2:=s2+top[i, j] ;
if j=3 then s3:=s3+top[i, j] ;
end;
end;
ClrScr;
write(' 1-топ', ' 2-топ', ' 3-топ') ; writeln;
for i:=1 to 5 do {кестені экранға шығару}
begin
write(i, '-сұрақ') ;
for j:=1 to 3 do
begin write(top[i, j] :10:2) ; end;
writeln;
end;
{нәтижелерді экранға шығару}
writeln('ЖИНАҒАН Ұ П А Й Л А Р Ы:') ;
writeln(s1:18:2, ' ', s2:8:2, ' ', s3:6:2) ;
end.
Сынып жұмысы
20 мин.
Осы программаны компьютерде теріп орындаңыз. Программаны
- ең қысқа сөзді табатындай, (5 ұпай)
- сөздер орынына бүтін сандар алып ең үлкен санды, оның нөмірін анықтайтындай, (10 ұпай)
- Нақты сандар үшін ең кіші және ең үлкен санды табатындай,
етіп өзгертіңіз. (15 ұпай)
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz