Қызылорда  қаласы
№ 197  қазақ орта  мектебі
Информатика пәні  мұғалімі
Абдрахманова  Айгерім  Сагатбекқызы

Пән аты:   Информатика
Класы:  9
Сабақтың тақырыбы  Қызметтік программалар.
Программалық               Жұмыс орнын пайдалануды есепке алу журналы. Қауіпсіздік техникасы                         
дидактикалық                 бойынша нұсқау алуды тіркеу журналы. Өрт сөндіру құралдары.
қамтылуы:                       Жұмыс  дәптері.
Сабақ мақсаты:1.Компьютерлік желілерде ақпараттық қауіпсіздікті сақтау
                                          2. қызметтік программалармен жұмыс жасауды үйрену
                                          3. Оқушыларға эстетикалық тәрбие беру.
Сабақтың типі:               Практикум элементтері бар көрсетіп  түсіндіру сабағы.                   
Білім мен білікке        Оқушы білуі тиіс:
қойылатын талаптар      -  қызметтік программалармен жұмыс жасауды үйрену;

- компьютер сыныбындағы іс-әрекет ережелерін;
- қауіпті жағдайдағы іс-әрекет ережелерін.               
Оқушының меңгеруі тиіс білігі:
                                            -  көз талғандағы жаттығуларды жасауды;
                                            -  өрт сөндіргішті қолдануды;
                                            - жұмыс орнын пайдалануды есепке алу журналын толтыруды;
                                            - статикалық кернеу әсерін кетіру жаттығуларын орындауды.

Сабақтың барысы:         I. Ұйымдастыру кезеңі
      II. Үй тапсырмасын тексеру
                                             III. Жаңа сабақты түсіндіру

Программаны түрлі тәсілдер бойынша құруға болады, бірақ оған қойылатын негізгі талап – оның сапалы және пайдаланушыға түсінікті болуында. Әдетте бұл үшін күрделі информация алдын ала тұжырымды бірнеше бөліктерге бөлініп алынады да, олардың әрқайсысына арналған жеке-жеке программа құрылады. Осыдан соң олар көмекші программалар ретінде қарастырылып, түрлі жолдармен құрылады. Программалаудың бірнеше жолдарын қарастыруға болады:
• «Жоғарыдан төмен» (декомпозиция)
• «Төменнен жоғарыға» (синтез)
• «Құрылымды программалау»
Құрылымдық программалау  - программалық өнімнің модулдік құрылыммен және түрлі программалық модулдердің стандартты типтік басқару алгоритмінде  негізделген.
Дайындалған программаның дұрыс жұмыс істеуі де жеткіліксіз. Алдымен ол пайдаланушының оқуына түсінікті түрде құрылуы қажет. Мұның бір тәсілі – программа аралықтарына (әр блоктардың басына) түсініктемелер енгізіп және көшу операторын шектен тыс пайдаланбау.
Кейде дайын программаға қосымша жаңа бөлімдер қосу (өзгерістер енгізуі) қажет болады. Сондықтан программаның қатесіз, түсінікті құрылуының үстіне, оңай өзгертіле алатын болуы тиіс. Сапалы программалар құру бағытында пайдалынатын тәсілдер программалау технологиясы делінеді.
Сонымен құрылымдық программалау концепциясы келесі тұжырымдарда:
1. Күрделі есептерді қарапайым бөліктерге  бөлу мақсатында оларды алдын-ала  талдау;
2. Алгоритмнің барлық  бөліктерін қарастырып олраға сәйкес көмекші программалар құру;
3. Көмекші программаларды құру барысында үш базалық құрылымдарды қолдану: сызықтық, тармақталу, циклдық;
4. Шартсыз өту операторын мүмкінінше аз қолдану;
5. Көмекші программаларды құру үшін программистердің ұжымын қолдану.

Алгоритм құру барысында негізгі үш - сызықтық, тармақталу, қайталану (цикл) негізгі күрылымдар қолданылады. Осыған сай алгоритм  сызықтық, тармақталған және қайталанған  қүрылымды алгоритм болуы мүмкін. Күрделі мәселелерді шешу алгоритмдері  аталған негізгі үш қүбылыстың есептің жеке бөліктеріне сәйкес келетін тізбектерінен түрады.
Сызықтық құрылымды алгоритм - әрбір нұсқауы көрсетілген тәртібімен бірінен соң бірі, тізбектеліп  орындалатын алгоритм.
1-мысал. a, b, c арқылы өрнектелген үш нақты санның арифметикалық және геометриялық  ортасын анықтау керек.
Шешуі: Берілген сандардың арифметикалық ортасын y,  геометриялық ортасын  z арқылы белгілейік. Онда  бұл есепті ЭЕМ-де шешудің қарапайым алгоритмінің блок-схемасын төмендегінше көрсетуге болады: 
Ыңғайлы болу үшін әрқашан  алгоритмнің басы мен соңын білдіретін міндетті екі блоктан өзге  негізгі блоктар нөмірленген. Блок-схемада көрсетілген 1-4 блоктар бірінен соң бірі, тізбектеліп орындалады, демек бұл - сызықтық алгоритмнің мысалы, мүнда 2-ші және 3-блоктардың орнын ауыстыруға да болады, бұл есептің дұрыс нәтижесін алуға кері әсерін тигізбейді.
Есепті шешу барысында алдын ала берілген немесе есептеу барысында пайда болған қандай да бір шарттың орындалу/орындалмауына байланысты алгоритмде көрсетілген кейбір нұсқаулар орындалатын/орындалмайтын жағдайлар, яғни тармақталу құбылысы жиі кездеседі. Мұндай алгоритмдерді тармақталған құрылымды алгоритм деп атайды. Тармақталуды   блок-схема тілінде жазуда логикалық шартты тексеру үшін ромб қолданылады: ромбыдан екі бағыттың  (“ия”- шарт орындалса,  “жоқ”- шарт орындалмаса) бірімен жылжуға болады, себебі тармақталу барысында бір тармақ қана орындалады (3-сурет). Тармақтың саны есептің шартына байланысты 2-ден көп болуы да мүмкін (4-сурет). Логикалық немесе жәй ғана шарт деп екі өрнек арасындағы  қатынасты айтады. Шартты -  “ия” немесе “жоқ” деп жауап қайтаратын сұраулы сөйлем  мағынасында түсінуге болады. Шарттың орындалмағаны - оған қарама-қарсы шарт орын алатындығын білдіреді, мысалы, x>0 орындалмаса, х0 болғаны, D=0 шарты орындалмаса, D<0 немесе D>0 орындалғаны. Қарама-қарсы шарттардың біреуін тексерсе жеткілікті, екіншісі соның салдары болып табылады.
Тармақталуды  толық және ықшам екі түрде  үйымдастыруға болады (5, 6-суреттер).


6-сурет. Тармақталудың ықшам түрі
2-мысал. Белгілі екі санның кішісін табу алгоритмін құру керек.
Шешуі: Есептің шартын u=mіn {a, b} тұрінде жазуға болады, мұндағы u айнымалысы a немесе b ұяшықтарындағы  мәндердің кішісі.
Программалауда алгоритмде қолданылған әрбір айнымалы компьютердің  жедел жадының жеке бір  ұяшығының адресін білдіреді. Мәліметтер ұяшықтарда сақталып, программа алгоритмі бойынша өңделеді.  Алгоритмдегі (программадағы) х=5 нұсқауы х ұяшығына 5 санын меншіктейді. Сондықтан блок-схемадағы меншіктеуді ‘=’ (теңдік)  белгісі арқылы емес, “:=” меншіктеу белгісі арқылы белгілеген дұрысырақ болады.  Мысалы, QBasіc тілінде меншіктеу операторы х=5 түрінде жазылса, TurboPascal  тілінде -  х:=5 түрінде жазылады. Программадағы х:=у нұсқауы  х ұяшығына у-тің мәнін меншіктесе, х:=х+1 ( х-тің мәнін бірге арттырады, ал х:=х*х ( х ұяшығындағы мәнді оның квадратымен ауыстырады. Меншіктеу барысында ұяшықтағы алдыңғы мән дереу өшіріліп, соңғы меншіктелген мән сақталады. Мысалы,
y:=2
х:=8
х:=у
х:=х*х
х:=х+1
y:=y-1
нұсқауларын көрсетілген ретімен орындағанда х-тің алғашқы мәні 8, келесісі 2, одан 4,   ақырғы  мәні 5 болса,  ал у-тің мәні 2-ден 1-ге  өзгереді.
х:=х+1 ( х  айнымалысын 1-ге арттыру нұсқауы қайталанған құрылымды алгоритмдерді құрғанда цикл параметрінің мәнін өзгерту үшін жиі қолданылады.
a мен b  ұяшықтарына  берілген мәндерін енгізген соң оларды өзара салыстырып, кішісін   а немесе b - u ұяшығына меншіктейтін алгоритмді суретте  көрсетілген  схема арқылы үйымдастыруға  болады. Бұл - тармақталған құрылымды алгоритм, мұнда  тармақталудың толық схемасы қолданылған.

Бақылау сұрақтары.
1. Құрылымдық программалаудың концепциясы неде?
2. Композиция, альтернатива және итерация деген қандай түсінікті білдіреді?
3. Айнымалы түсінігі.
4. Сызықтық алгоритм деген не?
5. Тармақталған алгоритм деген не?
6. Тармақталған алгоритмдердің қысқаша және толық түрлерінің айырмашылығы неде?