Автор работы: Пользователь скрыл имя, 10 Июня 2014 в 09:27, курс лекций
Информация. "Информация" термині латынның түсіндіру, баяндау, білу деген ұғымынан туындаған ағылшынның іnfоrтаtіоп сөзінен шыққан, дәл анықтамасы жоқ кең ұғым. Информацияны біз ауызша естиміз, жазбаша түрде оқимыз, қимыл не қозғалыс түрінде көреміз. Кез келген керекті информацияның мағынасын түсініп, оны басқаларға жеткіземіз. Қарапайым түрде айтқанда, информация - белгілі бір нәрсе туралы таңбалар мен сигналдар түрінде берілетін мағлұматтар. Мысалы, қоңыраудың соғылуы сабақтың басталғанын не аяқталғанын білдіретін информация. Ағаштың бүршік атып, гүлдеуі көктем мезгілінің келгенін білдіретін информация. Ақпарат құралдары арқылы берілетін хабарлар мен ғылыми-техникалық жаңалықтар да информация түрлерінің бірі.
Қоғам өмірінің сандық заңдылығын бейнелейтін статистикалық информация өте күрделі. Онымен айналысатын арнайы ұйымдардың жыл сайын немесе тоқсан сайын дайындаған информациясын басшылыққа алмай, ел экономикасын ғылыми түрде басқаруды ұйымдастыру мүмкін болмас еді. Ұшу траекториясына әсер ететін бүкіләлемдік тартылыс заңын, денеге үйкеліс әсерін және т.б. қажетті информацияны білмей, ғарыш кемесін ұшыруға болмайтыны да белгілі.
Программа тақырыбы;
Сипаттау бөлімі;
Bеgіn
Орындалатын бөлімі;
End.
• Программа тақырыбы рrоgrаm қызметші сөзінен басталады. Ол программа атынан және параметрлерден тұрады. Мысалы:
Ргоgram еsер1 (іnрut, оutput);
Мүндағы esep1
- программаға берілген
атау. Программалаушы программа атын өз
қалауынша бере алады.
Программа атауы оларды
екінші бір программадан
ажыратуға қажетті көрсеткіш.
ЕСКЕРТУ! Программа атауының оның мазмұны сақталынған файл атауына еш қатысы жоқ.
Іnput, оutput - стандартты енгізу, шығару файлы.
• Сипаттау бөлімінде программада кездесетін барлық берілгендердің атауы, типі, мүмкін болатын мәндері, т.б. хабарланады.
• Орындалатын бөлімде Ьеgіn және епй қызметші сөздері арасына операторлар тізбегі жазылады. Сол себепті, веgіn (ашылатын) және еnd (жабылатын) қызметші сөздерін операторлар жақшасы деп атаса да болады. Оператор -нүсқаулардың машиналык тілде жазылуы. Сонда әрбір оператор орындалуға қажетті әрекетті машинаға түсінікті түрде сипаттайды. Программаның бір жолына бірнеше операторларды жазуға болады. Олардың арасына (;) нүктелі үтір таңбасы, ал программаның соңын көрсететін епсі сөзінен кейін (.) нүкте қойылады. Программаның орындалатын бөлімінде жазылған операторлар тізбегін - программа денесі деп атаймыз.
6.2 Программа бөлімдері
ТuгЬо Раsаl тіліндегі программа төмендегі бөлімдерден түрады:
• Программа тақырыбы;
• Берілгендерді сипаттау:
• Белгілерді хабарлау бөлімі;
• Тұрақтыларды хабарлау
• Типтерді хабарлау;
• Айнымалыларды сипаттау
• Процедура-функцияны
• Орындалатын бөлім:
Веgіn
Программа денесі (операторлар
тізбегі);
End.
Сонда, программа қүрылымы мына түрде болады:
Рrоgrаm программа аты;
Uses
Модуль аты;
Label
Белгі;
Const
Түрақты атауы=тұрақты мәні;
Туре
Тип атауы = тип сипаттамасы;
Var
Айнымалылар атауы: типі;
{Пайдаланушылар процедурасын және функциясын хабарлау};
Begin
Операторлар тізбегі;
End.
Uses бөлімінде стандартты және пайдаланушылар модулі жарияланады. Мысалы,
Uses crt;
Begin clrscr; {экранды тазалауды іске қосу}
• Кез келген операторды белгілей отырып, gоtо операторы арқылы программаның орындалу ретін өзгертіп, белгіленген операторға тікелей көшуге болады. Белгі атауы символдар тізбегі және бүтін оң сандармен қойылады. Оператор мен белгі арасына (:) кос нүкте таңбасы жазылады. Белгілерді хабарлау бөлімі Lаbеl кызметші сөзінен басталады. Программада кездесетін барлық белгі ІаЬеІ бөлімінде хабарлануы қажет.
LаbеІ белгі, белгі2, белгіЗ;
Мысалы,
LаbеІ 1, 15, SUM,АС;
• Тұрақтыларды сипаттау бөлімі соnst (латынның соnstants - тұракты деген сөзінің қысқартылуынан алынған) қызметші сөзінен басталады. Бұл бөлім программада төмендегідей жазылады:
Сonst
Тұрақты атауы=тұрақты мәні;
Мысалы,
Сonst
G=9.8;
• Туре бөлімде
пайдаланушылар тарапынан
Туре
Тип атауы= сипаттамасы;
Мысалы,
Туре
Маtris = аrray[1..3, 1..2] оf геаІ;
Бұл мысалда тип атауы –Маtris кесте берілген, оның жол бойынша 3, ал бағана бойынша 2 элементі бар. Кестенің элементтерінің тегі нақты - геаl.
• Программада кездесетін барлық айнымалы vаг (ағылшынның vагіаЫе- айнымалы деген сөзінің қыс-қартылуы) бөлімінде хабарлануы керек. Vаг бөлімінде айнымалының атауы, типі хабарланады. Программанын орындалуы барысында, айнымалы оған тағайындалған атауы бойынша шақырылады. Айнымалының мәні ұаг бөлімінде анықталмағандыктан оған бастапқы мән берілуі кажет.
Егер, программада типтері әр түрлі бірнеше айнымалы болса, үаг деп бірнеше рет жазудың қажеті жок. Яғни, vаг сөзі бірақ рет жазылып, айнымалылардың тізімдері толык көрсетіледі. Айнымалылар бөлімінің жазылуы:
Vаг
Айнымалылар атауы: типі;
Мысалы,
Vаг
a,b,c: integer;
D,х1,х2: геаl;
у:сһаr;
flag: boolean;
Мүндағы
а,Ь,с - айнымалылар атаулары, олардың
типтері бүтін(integer). Ал, D,х1,х2 - нақты(геаl),
у - символдық (сһаr),
flag -логикалық (Ьооlеап) айнымалылар.
• Программалауды жеңілдетуде бір программаны бірнеше кішкене бөліктерге бөлуге болады. Программаның осындай бөліктері - көмекші программа (ішкі программа немесе подпрограмма) деп аталады. Көмекші программа екіге бөлінеді: процедуралар және функциялар. Процедуралар мен функциялардың екі түрі бар: стандартты және пайдаланушылар. Стандартты функциялар мен процедуралардың атауы, аткаратын қызметтері алдын-ала анықталғандықтан, оларды программаның басында хабарлаудың қажеті жоқ. Ал, пайдаланушылар процедурасы мен функцияларын программаның арнайы бөлімінде хабарлау керек. Бұл бөлімде пайдаланушы процедурасы мен функцияларына атау беріледі. Оларды осы атауы бойынша программаның негізгі бөлімінде шақыруға болады.
Процедураны хабарлау бөлімінің жалпы жазылуы;
Procedure атауы (формальды көрсеткіштері);
Begin
Процедураның орындалатын бөлімі;
End;
Функцияны хабарлау бөлімінің
жалпы жазылуы:
Function функция атауы (формальды көрсеткіштері)
:
нәтиже типі;
Веgin
Функцияның орындалатын бөлімі;
End;
Процедуралар және функциялар туралы толығырақ келесі тарауларда берілген.
• Программанын орындалатын бөлімін - операторлар бөлімі деп атаймыз. Операторлар бөлімі - программаның негізгі бөлімі. Бұл бөлімде программаның сипатгау бөлімінде хабарланған тұрақтыларға, айнымалыларға, функция мәндеріне түрлендіру операциялары қолданылып, қойылған мақсатта программа жазылуы керек.
Операторлар бөлімі Ьеgіn қызметші сөзінен басталып, орындалатын операторлар (нұсқаулар) бірінен кейін бірі жазылады. Программаньвд бір жолына бірнеше операторларды жазуға болады. Олардың арасын ; (нүктелі үтір) таңбасымен бөлеміз. Бұл бөлімді епсі қызметші сөзі аяқтайды. Бүл сөзден кейін . (нүкте) таңбасы койылып, программаның соңын көрсетеді.
Операторлар бөлімінің жазылуы:
Begin
1-оператор;
2-оператор;
...
n-оператор
End.
Операторлар жазылу реті бойынша жоғарыдан төменге қарай орындалады. Жазылуы көлемді болатын оператор бірнеше экранның жолын алуы мүмкін.
6.3. ТURBO PASCAL ТІЛІНІҢ ОПЕРАТОРЛАРЫ
Оператор - программадағы нұскаулардың (бұйрықтар, алгоритмдер) машиналык тілде жазылуы. Яғни, берілген есепті шешу мақсатында орындалатын іс-әрекеттердің машинаға түсінікті түрде жазылуы. Сонда, программа денесі бірінен кейін бірі жазылған операторлар тізбегінен тұрады. Операторлар арасына нүктелі үтір (;) белгісі қойылады.
Операторлар қарапайым және күрделі (құрама) операторлар болып екі топқа бөлінеді. Егер оператор кұрамында басқа операторлар болмаса, онда ол карапайым оператор деп аталады. Бұл топқа: меншіктеу, процедураны шақыру, шартсыз көшу - Gоtо, бос орын операторлары жатады.
Күрделі(құрама) оператор бірнеше қарапайым операторлардан тұрады.
.
Меншіктеу операторы
ТuгЬо
Раsсаl-дың негізгі
айнымалы атауы := өрнек;
Мысалы: X := 2*Ү + Z.;
Z:=А + В;
Мұндағы := меншіктеу белгісінің оң жағындағы өрнек есептелініп, сандық мәні оң жақтағы айнымалыға меншіктелінеді.
.. Меншіктеу (:=) белгісінің әдеттегі теңдіктен (=) айырмашылығын түсіндірейік. Мысалы: зшп:=2 болғанда, 8шп:=зит + 5 өрнегінің нәтижесі 7, яғни, зерденің зшп атаулы ұяшығындағы 2 санына 5-ті қосып, шыққан 7 санын зшп ұяшығына қайта орналастыру. Ал, өрнекті 8шп=8ит+5 түрінде жазсақ оның мағынасы болмайды.
Символдық мәндерді меншіктеуде апостроф (') таңбасын қолданамыз.
Мысалы: К:='Информатика';
Тuгbо Раsсаl-да бірнеше айнымалы мәні бірдей болса, мән меншіктеуді і:=]:=1с:=5 түрінде жазуға болмайды. Ол үшін меншіктеу операторын жеке-жеке жазған дүрыс: і:=5;j:=5; k=5
Меншіктеу операторы көмегімен логикалык өрнектің нәтижесінде айнымалыға меншіктеуге болады. Мысалы:
R1:=(k>0) аnd (k<10)
Мүндай өрнектің нәтижесі акиқат (true) немесе жалған (false) сөздері, ал R1 айнымалысы типі логикалық (Вооlеап) болады.
Есептелінген өрнек нәтижесі
мен оны меншіктейтін айнымалы
типтері сәйкес болуы
қажет. Мысалы: а
айнымалысының типі бүтін (Integer),
ал, оған меншіктелінетін өрнек
нәтижесі нақты (Real) болатын программа
бөлігі берілген:
.Vаг а: Integer; b,с: Real
Begin
'
а:=Ь+с;
Бұл жағдайда экранға қатені хабарлайтын мәлімет шығады:Type mismatch (тип сәйкессіздігі).
ЕСКЕРТУ! Меншіктеуде айнымалы нақты (Real) ал, өрнектің нәтижесі бүтін (Integer) типте және айнымалы типі жолдық (String) ал өрнек символдық (Сһаr) болса, бұл қатеге жатпайды.
Берілгендерді енгізу операторы
Программадағы орындалатын алғашқы іс-әрекет -берілгендерді енгізу. Берілгендерді енгізу - программадағы алғашқы берілгендерді компьютердің жедел жадысына өңдеуге жіберу болып табылады. Енгізудің негізгі қүрылғысы - пернетакта және дискілік файл. ТuгЬо Раsсаl-да берілгендерді енгізуге геаd - "оқу", геаdln (геаd Ііnе) -"жолды оқу" операторлары қолданылады. Енгізу операторының жалпы жазылуы:
Read (х1, х2, ...,хn);
Readln (х1,х2,...,хn);
Мұндағы х1,х2,..,хn- мәні пернетақтан енгізілуге тиісті айнымалылар тізімі.
Енгізу операторы орындалғанда программаның орын-далуы уақытша тоқтатылады. Тізімде көрсетілген айныма-лылардың сандык мәні пернетақтадан теріліп, Епіег пернесі басылғанда орындалу әрі карай жалғасады. Тізімдегі айнымалылар санынан енгізілген мәндер саны кем болмауы керек.
Айнымалылар мәнін енгізгенде арасына бос орын қоямыз немесе ТаЬ және Еnter пернелерін қолданамыз.
Енгізілген айнымалылар мәні типіне сәйкес болуы қажет.
Мысалы: y=2i+g функциясын есептеу программасы берілсін.
Program esep;
\/аг у,і: іnteger;
g:геаІ;
begin
readln(і,g); ,
у:=2*і+g;
writeln('у=',у)
end.
Программаның басында сипатталғандай і тек бүтін сандарды қабылдай алады. Ал, g айнымалысына нақты сандармен қатар бүтін сандарды да енгізуімізге болады. Себебі, нақты сан құрамына бүтін сан енетін болғандықтан, бүтін санды компьютер нақты санға айналдырып алады. Бұл программадағы қатеі: у-ті есептеу өрнегіндеg
айнымалысының мәні нақты болса, нәтиже де нақты. Сондыктан у айнымалысының мәні типіне сәйкес емес.
Егер, мәндерді енгізуде тип сәйкессіздігі болса экранға төмендегідей қате хабарланады: Еггог 106: Іnvalid numeric format (Қате 106: Сандық формат дұрыс берілмеген).
Мәліметтерді экранға шығару операторы
Мәліметтерді шығару - компьютердің жедел жадысын-дағы өңделінген мәліметтерді сыртқы қүрылғыларға (экран, принтер) беру. Тuгbо Раsсаl-да мәліметтерді экранға шығару үшін write "жазу", writeln (write Ііпе) "жолды жазу" операторы қолданылады. Бүл. операторлардың жалпы жазылуы мына түрде: write(у1,у2,...,уп);
Мұндағы; у1,у2,...,уп - сандық мәні экранға шығарылатын айнымалылар тізімі. Шығарылған мәліметтер туралы түсініктеме тексті апостроф ішіне жазса да болады.
Мысалы есептелінген фигура ауданы 25-ке тең болса, шығару операторы мына түрде жазылсын Writeln('Аудан =',S). Экранға шыққан нәтиже: Аудан =25.
Сонда, мәліметтерді экранға шығару операторы орын-далғанда апостроф ішіндегі түсініктеме текст өзгеріссіз шығады. Ал, тізімдегі айнымалылардың орнына олардың сандық мәні экранға беріледі.
Егер, шығару операторына өрнек берілсе өрнек есептелініп, соңғы нәтиже экранға шығады.Мысалы: берілген а, в, с үш санның қосындысынжәне көбейтіндісін есептеу программасын жазайық.