Сабақтың тақырыбы: Таңдау операторы

28

Байзақ ауданы

Түймекент ауылы

Түймекент орта мектебінің

информатика пәні мұғалімі

Байгонысова Азизат Маратовна

 

Сабақтың тақырыбы: «Таңдау операторы»

Сабақтың мақсаты:
Білімділік: Turbo Pascal программалау тілінің таңдау операторын қолдану тәртібін таныстыру, программалау ортасында  операторларды қолдану негізінде есептер құру жүйесін, шешу дағдыларын қалыптастыру
Дамытушылық: Оқушылардың алған теориялық білімдерін практика жүзінде орындау дағдыларын шыңдау. Оқушылардың таным белсенділігін, ақпараттық мәдениетін арттыра отырып, логикалық  ойлау қабілетін дамыту.
Тәрбиелік:  Оқушыларды тиянақтылыққа, жауапкершілікке, ізденімпаздыққа, шапшаңдыққа  тәрбиелей отырып білім беру. 
Сабақтың типі: аралас сабақ
Сабақтың әдістері: тестілеу, баяндау.
Пәнаралық байланыс: математика, ағылшын тілі, тарих пәндері.
Көрнекі құралдар: ДЭЕМ, проектор, Turbo Pascal 7.0 программалау тілі, презентация

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

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

 

Үй тапсырмасын тексеру: Презентацияда берілген бақылау сұрақтар мен тапсырмаларды әр компьютерде орындату негізінде үй тапсырмасын тексеру.

Үй тапсырмасын тексеру үшін берілетін сұрақтар:

  1. Тармақталу алгоритмі дегеніміз не? (Орындалуы қандай да бір шарттан тәуелді болатын алгоритм )
  2. Шартты операторы дегеніміз не? (Тармақталу алгоритмін программалау үшін  қолданылатын оператор)
  3. Шартты операторының жазылу үлгісі  (if  <шарт>  then оператор1 else оператор2 )
  4. Шартты операторының түрлері? (if  <шарт>  then оператор1 else оператор2; if  <шарт>  then оператор)
  5. а) A:=5; If a>0 then writeln (a,’-саны оң сан’) else writeln (a,’-теріс сан’)

Нәтижесі қандай?                                        (a-оң сан)

б) K:=1;   If (k<10) then begin a:=k+10; writeln(a);end else begin a:=k;

writeln (a);end;         Нәтижесі қандай?               (11)

в) S:=’algorithm’;  If s[4]=’a’ then writeln (s) else writeln (s[4]);  Нәтижесі қандай?(о)

  1. Шартты көшу операторы қай операторлар тобына жатады? (құрама)
  2. Егер then және else қызметші сөзінен кейін орындалатын операторлар саны көп болса ………( begin және end операторлар жақшасына аламыз)
  3. B:=13; If  ((b mod 2)=0) then b:=0 else b:=1; writeln (b);           Нәтижесі қандай?(1)

 

 

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

Жаңа тақырыпта өткен дәрістер бойынша алған білімдерді пысықтай  отырып, презентация негізінде Turbo Pascal программалау тіліндегі операторлардың бірі – таңдау операторын, оның қолданылу тәртібін, негізгі жазылу үлгісін түсіндіру және таңдау операторымен есеп құру жүйесін және шешу әдістерін үйрету.

Шартты операторда, егер шарт ақиқат болса, 1-жағдай, әйтпесе 2-жағдай орындалады. Бірақ көбінесе, мүмкін болатын жағдай екеу емес, одан да көп бола береді, яғни процесс көп тармақты болады. Мұндай жағдайларда шартты операторды пайдалану қолайсыз, себебі, ол программаның көлемін ұлғайтып жібереді.

Таңдау операторы (case) бірнеше операторлардың ішінен таңдау жолымен көп тарамды тармақталуды ұйымдастырады. Тармақталу берілген логикалық мәнге ие болатын өрнек түріндегі шартты тексеруден басталады, өрнек мәндері таңдап алынған типтердің бірі болатын бүтін, символдық, логикалық типтердің бірінде жазылады. Бұл өрнек оператор орындалар кезде белгілі мәнге ие болуы тиіс. Егер өрнектің есептелген мәні көрсетілген мәннің біріне сәйкес келсе, сол қатардың операторы орындалады.

CASE таңдау операторы көп тармақты алгоритмдерді барынша қарапайым және көрнекі түрде жазуға мүмкіндік береді. Оның құрамында селектор (selector — таңдау) деп аталатын өрнек және параметрлер тізімі болуы тиіс, әрбір параметрге сәйкес таңдау тұрақтылары болуы қажет

Таңдау операторының жазылуы:

Case <өрнек> of

<1-тұрақты>: <1-оператор> ;

<2-тұрақты >: <2-оператор > ;

………..

<n-тұрақты >: <n-оператор > ;

Else <n+1 — оператор >;

End;

Таңдау командасы былай орындалады. Алдымен, өрнек мәні есептеледі де, ол тұрақтылармен салыстырылады. Егер өрнектің мәні 1-тұрақтыға тең болса, онда 1-оператор орындалады, ал өрнектің мәні 2-тұрақтыға тең болса, онда 2-оператор, 3-тұрақтыға тең болса, онда 3-оператор т.б. тізімдегі тек бір ғана оператор орындалады да, таңдау командасы осымен аяқталады. Егер өрнектің мәні ешбір тұрақты мәніне тұрақты мәніне сәйкес келмесе, онда else сөзінен кейін тұрған оператор орындалады. Кейде оператор құрамында else қатары болмайды, ондайда end сөзінен кейінгі тұрған жол орындалады.

Case операторының орындалу тәртiбi:

  1. Алдымен <өрнектің> мәнi анықталады. Анықталған мән қай тiзiмге жатса, сол тiзiмге сәйкес келетiн оператор орындалады да, басқа операторлар орындалмай, case операторы жұмысын аяқтайды.
  2. Егер <өрнектің> мәнi тiзiмнiң ешбiреуiне жатпаса, онда else-де көрсетiлген <оператор> орындалады. Еlse болмаса, case операторы жұмысын аяқтайды.

Case  операторын пайдалану ережелерi:

  1. CASE сөзінен кейінгі өрнек мәні дискретті типке жатуы тиіс; бүтін санды тип үшін ол integer болады;

Өрнек пен тiзiмдегi мәндер бiр типтi болу керек.

 

 

  1. Тұрақтылар мәндері бір-бірінен айрықша болып, қайталанбауы тиіс, олардың мәні диапазонға сәйкес келгенде де, бір-бірімен қиылыспай өз аралықтарын ғана қамтуы қажет.
  2. Еlse тармағының болуы мiндеттi емес, кей жағдайда жазбауға да болады, егер else тармағы жазылса, алдыңғы  оператордан  соң  (;)     қойылады.
  3. Мәндер тiзiмiнде  үтiрмен  ажыратылған  жеке  мәндердi  немесе  бастапқы  және  соңғы  мәндерi  “..” ажыратылған   диапазонды  көрсетуге  болады.
  4. <Операторда> “;”-мен ажыратылған  бiрнеше  операторды жазуға  болады.
  5. Таңдау айнымалысы литерлiк, бульдiк және пайдаланушының типтерiнде болады.

 

Ескерту: String, real типтегi айнымалылар таңдау айнымалысы бола  алмайды!

 

Таңдау операторы (case)  бірнеше операторлардың ішінен таңдау жолымен тармақталуды ұйымдастырады.

 

 

1-мысал:

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

Program gyl1;                                      {программа тақырыбы}

Var gyl: integer;                                  { gyl  айнымалысын сипаттау}

Begin                                                   {программаның басы} 

        Write (‘Керекті жылды енгізіңдер:’);

        Readln(gyl);                                {жылды енгізу қатары}

        Write(gyl:4, ‘жыл’);     

Case (gyl mod 12) of         {таңдау операторы} {gyl  айнымалысының бүтін қалдығын анықтау} 

0:  write(‘жылан’);                 

1:  write(‘жылқы’);

2:  write(‘қой’);

3:  write(‘мешін’);

4:  write(‘тауық’);

5:  write(‘ит’);

6:  write(‘доңыз’);

7:  write(‘тышқан’);

8:  write(‘сиыр’);

9:  write(‘барыс’);

10:  write(‘қоян’);

11:  write(‘ұлу’);

End;                                                      {таңдау операторының соңы}

Writeln(‘жылы болады’);

END.                                                    {программаның соңы}

2- мысал:

Апта күндерінің реттік нөмірі бойынша олардың аттарын анықтайтын бағдарлама құру керек.

Program kyn;

Var kyn: integer ;

Begin

Write  (‘ күннің аптадағы реттік нөмірін енгізіңдер: ‘ );

Readln (kyn);

Case kyn of

1: writeln ( ‘дүйсенбі’);

2: writeln ( ‘сейсенбі’);

3: writeln ( ‘сәрсенбі’);

4: writeln ( ‘бейсенбі’);

5: writeln ( ‘жұма’);

6: writeln ( ‘сенбі’);

7: writeln ( ‘жексенбі

Else writeln ( ‘ 1… 7 аралығындағы сандарды енгізіңдер’);

End

End.

 

Бұл сабақтан оқушылар:

  • Турбо Паскаль тілі операторларының бірі – таңдау операторын;
  • Оның қолданылу тәртібін;
  • Таңдау операторын тиімді пайдалана отырып, есеп алгоритмін құруды меңгеруі тиіс.

 

Жаңа тақырыпты бекіту: Жаңа сабақ бойынша айтылған теориялық білім мен көрсетілген жұмысты қорытындылап, бекіту мақсатында төмендегі есептерді шешу, яғни құрылған алгоритмді Turbo Pascal программалау тілінде тестілеу :

1- есеп: 1990-1995 сандарын енгізгенде экранда қасындағы сөздердің шығу бағдарламасын құру:
1990- Егемендік туралы декларацияға қол қойған жыл
1991- ҚР тауелсіздік алған жыл
1992- Рәміздер бекітілді
1993- Теңге шықты
1994- Мұсабаев ғарышқа ұшты
1995- Ата заң қабылданды

2- есеп: 1-9 цифрларын  енгізгенде оның ағылшын тіліндегі аудармасын экранға шығаратын бағдарлама құру

 

Сергіту сәті Оқушылардың ойы мен көзін демалту мақсатында оқушыларға патриоттық тәрбие бере отырып сергіту сәтін ұйымдастыру

 

Сабақты қорытындылау: Жаңа сабақты өткен дәрістермен байланыстыра отырып қорыту мақсатында оқушыларға компьютерде тест тапсырмасын орындату.  Тапсырмада үй тапсырмасы және жаңа тақырып бойынша таңдау тесті беріледі. Таңдау тестінде берілетін тапсырмалар:

  1. Программалауда қойылған шартқа байланысты алгоритм тармағының саны көп болғанда қолданылатын оператор:
  2. шарт операторы
  3. бос оператор
  4. таңдау операторы
  5. Таңдау операторының жалпы жазылуы:
    1. if   then  else
    2. case  of end
    3. for  to  do
  6. Case  s   of

C1: оператор 1;

C2:оператор 2;

……………….

Cn:оператор n;

Else

Оператор;
End;

Мұндағы c1,c2,…,cn -?

  1. тұрақты
  2. айнымалы
  3. өрнек
  4. Case  s   of

C1: оператор 1;

C2:оператор 2;

……………….

Cn:оператор n;

Else

Оператор;
End;
Мұндағы S -?

  1. тұрақты
  2. айнымалы
  3. өрнек
    1. Таңдау операторында бірнеше тұрақтыға бір оператор сәйкес келсе тұрақтылар……
      1. (-) таңбасы арқылы жазылады
      2. (,) таңбасы арқылы жазылады
      3. (..) таңбасы арқылы жазылады
    2. Таңдау операторында бірнеше тұрақтылар диапазонын көрсеткенде …….
  4. (-) таңбасы жазылады
  5. (,) таңбасы жазылады
  6. (..) таңбасы жазылады
    1. Таңдау операторында өрнектің мәні бірде – бір тұрақтыға сәйкес келмесе…….
  7. else қызметші сөзінен кейінгі оператор орындалады
  8. end операторына көшеді
  9. ешқандай оператор орындалмайды.
    1. Case a of
      1: writeln (a+5);
      2: writeln (a+7);
      3: writeln (a+3);
      End;

Егер а=2 болса, нәтиже қандай болады?

  1. 7
  2. 6
  3. 9
    1. Case arip of
      ‘a’: writeln (‘algorithm’);
      ‘g’: writeln (‘geometrya’);
      ‘i’: writeln (‘informatika’);

End; Егер аrip:=’i’ болса, нәтиже қандай болады?

  1. аlgorithm
  2. geometrya
  3. informatika
    1. Таңдау операторы қандай алгоритмдерде қолданылады?
  4. тармақталған
  5. сызықтық
  6. циклдық

 

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

 

 

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