русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Процедуралар мен функциялар тарауы.


Дата додавання: 2014-11-27; переглядів: 1142.


Бүл тарауда қосалқы программалар мен функциялар жарияланады. Қосалқы программаларды кейде ішкі программа деп атайды олар белгілі бір атауы бар жөне программаның кез келген жерінен осы аты бойынша шақыруға болатын жеке программалар болып табылады. Мысалы, sіп, соs, аb - олар ішкі стандартты программалар және Паскаль тілінің негізгі элементтерінің бір бөлігі болып саналады да алдын ала жариялауды немесе анықтауды қажет етпейді, ал пайдаланушының өзі қүрастырған ішкі программасы міндетті түрде сипаттауды қажет етеді.

Паскаль тілінде осындай ішкі программаларды процедура деп атайды. Процедуралар мен функциялар жеке - дара программа болғандықтан, олардың да құрылымы жаопы Паскаль тілінде жазылған программаның құрылымындай болады. Ерекшелігі — тек процедура мен фукцияның тақырыбында. Ішкі программа Ргосеdure және Function қызметші сөздерімен басталады және соңын көрсететін End қызметші сөзінен кейін ";" символы қойылады.

Процедуралардың жазылу жалпы түрі:

Procedure <процедура аты> {[параметрлері]}

<сипаттама бөлімі>

<операторлар бөлімі>

End;

Функциялардың жазылу жалпы түрі:

 

Function <аты > {[параметрлері]}

<сипаттама бөлімі>

<операторлар бөлімі>

End;

Операторлар тарауы.Паскаль тіліндегі программа денесін қүрайтын немесе программада орындалатың операторлар бөлімі, жоғарыда айтып кеткеніміздей, негізгі бөлім болып табылады. Бұл тарауда бұрынырақ сипатталған таңба, айнымалы, тұрақты, функция, процедуралар көмегімен орындалатын әрекеттердің бәрі іске асырылады. Бүл бөлім begin қызметші сөзінен басталып, сонан сон, операторлар тізбегі келтіріледі. Операторлар тізбегі міндетті түрде end қызметші сөзімен аяқталып, бұл сөзден кейін программа текстінің соңьн белгілейтін "." (нүкте) символы қойылады. Бұл жердегі begin де, end те Паскаль тілінің сөйлемдеріне жатпайды, сондықтан да бұлардың соңынан «;» символы қойылмайды. Паскаль тілінде сөйлемдер тізбегін begin қызметші сөзі ашып, end қызметші сөзі жауып тұрса, бұл жағдай тұтас құрмалас сөйлем ретінде қарастырылады. Ал әр сөйлем (жай немесе құрмалас) Паскаль тілінде жеке оператор болып танылады. Операторлар бөлімінің жазылуы:

begin

<1 оператор>;

.....

<2 оператор>;

end .

Программада begin мен end қызметші сездері арифметикалық өрнекте ашылатын жәе жабылатын жақша сияқты роль атқаратынын айтып кеу керек.

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

 

3.3. Түсініктеме (коментарийлер)

Түсініктемелердің негізінен атқаратын қызметі программа құрушыға, программаны пайдаланушыға программаның құрулы барысы туралы түсік беру, программаның кейбір сәттерін еске түсіруге көмектесу.
Түсініктемелерді программаның мақсатын түсіндіру үшін әр программаның басында, сондай ақ оның басқа бөлімдерінде де қолдануға болады. Түсініктеме программаның кез келген қажетті жерінде жазылады да, екі жағынан { } жақшалармен немесе (* *) символдарымен шектеледі. Түсініктеме шектігі белгілерінің арасына латын, орыс тілі әріптері, цифрлар және де Паскаль тілінің басқа символдарын жазуға болады.

Енді Паскаль тілінде жазылған толық бір программа құрастыруын қарастырайық.

1-мысал.

Program provl;(*1-ден 15-ке дейінгі сандардың квадратын баспаға шығару*)

var

number, sgnumber: integer;

begin

for number:= 4 tо 10 dо

begin

sgnumber:=number*number;

Writeln (number, sgnumber);

end; {*for циклының соңы*}

end. [*prov1*}

Программаның мақсатын көрсету үшін және endқызметші сөзінің қандай оператордың соңын көрсетіп тұрғанын анықтау үшін, түзілген программада түсініктеме 3 жерде қолданылды.

Бақылау сурақтары

1. Жүйелі программалаудың ерекшеліктері мен артықшылығы неде?

2. Паскаль-программасының негізгі құрылымы қандай?

3. Программаның сипаттау бөлімі қандай тараулардан тұрады?

4. Сипаттау бөлімінің тараулары белгілі бір ретпен орналасу міндетті ме?

5. Программа операторлары қандай тәртіппен орналасады, оны бұзу үшін Паскаль тілінде

қандай мүмкіндіктер бар?

6. Белгілі бір шаманы бірнеше тарауларда сипаттауға сипаттауға болады ма?

7. Таңбаларды программада қолдану үшін не істеу керек?

8.Операторлар тарауының программа денесінде негізгі бөлім бөлу себебі не?

Бүл тақырып бойынша келтірілген материал Паскаль тіліндегі программаның құрылымымен танысып және жүйелі программалау тілдеріне сәйкес болып табылатын қарапайым программалау технологияларын игеру.

Жаттығулар

1. Келесі өрнектердің айырмашылығы барма және нәтижесі неге тең болады?

1) 12 + 3 * 4 / 2;

2) (12 + 3) * 4 / 2;

3) (12 + 3) * 4 / 2;

4) 12 + 3 * (4 / 2).

2. Төмендегі приоритеттердің қайсысы дұрыс келтірілген (бұл жерде приоритет — операциялардың орындалу реттілігі)?

1) ' *' операциясының приоритеті ' + ' операциясынан жоғары;

2) not - ең жоғарғы приоритетті операция;

3) ' + ' операциясының приоритеті '-' операциясынан жоғары;

4) ' *' операциясының приоритеті ' /' операциясымен бірдей.

 

3. Егер Kyn айнымалысы 1-ден 31-ге дейінгі бір айдағы күндерді қабылдаса, айдағы жүмыс күндерін (JumKyn) және демалыс күндерін (DemKyn) анықтайтын программаның сипаттау бөлімін жазыңыз?

4. Төмендегі нәтижелердің қайсысы дұрыс табылмаған?

1)(3>2)AND(5>6) = Тгue? ',

2)(60>70)OR(100<90) = Тпue?

3) ('а'<'Ь') ХОR (1>0) = Тrue?

4)NOT(30>10) = False?

5) 50>>25 = Тrue?

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

6. Темендегі нәтижелердің қайсысы дұрыс табылмаған?

1) 24 / 12 = 2?

2) 11 div 5 = 1?

3)10 div3 = 3?

4) 15 + 21 div2 = 25?

5) 2 div 3 = 1?

6) 6 * 5 = 30?

7) 11 mod 5=1?

8) 14 mod (5+3) = 2?

9) (12 -2) mod 5 = 2?

10)(15-2) div (7-2) = 2?

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

 

а) мұндағы х=4, у=3;

 

 

б) y = мұндағы a=1.15, b=7;

 

в) y = sin x = cos

 

г) y = ax2 + bx + c - │x + ax2│;

 

д) а =

 

9. Квадраттық тсңдеуді шешетін программаның сипаттау бөлімін жазыңыз.

10. Төмендегі өрнектердің мәні неге тең (Тгue, False)?

1) 48 >91?

2) 12>-11?

3) 128 > -128?
4) -341.5< -41.5

 

4. ПАСКАЛЬ ТІЛІНІҢ НЕГІЗГІ ОПЕРАТОРЛАРЫ


<== попередня лекція | наступна лекція ==>
Стандартты функциялар мен процедуралар. | Меншіктеу операторы


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн