|
Айнымалылар деп программаның орындалуы кезінде мәндері өзгеріп отыратын шамаларды айтамыз. Айнымалылар деректерді компьютер жадында сақтау үшін қолданылады. BASIC тілінде әрбір айнымалыға компьютер жадында арнайы ұя бөлінеді. Айнымалының аты осы айнымалының мәні сақталатын ұя адерісінің қызметін атқарады. Атын праграммада көрсету арқылы біздер жады ұясынан айнымалының мәнін ала аламыз. BASIC тіліндегі прграммада айнымалылардың аттары деректердің орнына жүреді. Айнымалының аты әріптен басталатын еркін алынған латын әріптері мен арап цифрларының тізбегінен тұрады. Бірақ бұлардың ішінде алғашқы екі символ дәл келеді, онда ол айнымалылар әр түрлі айнымалылар деп есептелмейді, яғни әр түрлі айнымалыларға алғашқы екі символды бірдей ат берсек, онда олар компьютер үшін бірдей айнымалы болып есептеледі. Мысалы,BL, BLO, BLP, BLKI
Қызметші сөздер айнымалының аты бола алмайды.
Айнымалылардың тұрақтылар сияқты үш түрі болады:
- бүтін айнымалы;
- нақты айнымалыны;
- символдық айнымалы;
Айнымалылардың түрі олардың қабылдаған мәндерінің түріне қарай анықталады және сол айнымалы атының соңғы символы арқылы беріледі:
· % - бүтін;
·!- дара дәлдікті;
· # - (немесе бос орын)-екі еселі дәлдікті;
· $ -символдық.
Мысалдар келтірейік:
· К1# -екі еселі дәлдікті сандық айнымалы;
· М2!-дара дәлдікті сандық айнымалы;
· Н%- бүтін сандық айнымалы;
· А1$- символдық айнымалы.
Айнымалының түрлерін арнайы операторлардың көмегімен хабарлауға болады;
· DEFINT <әріптер тізімі > - бүтін айнымалылар.
· DEFSNG < әріптер тізімі> -дара дәлдікті нақты айнымалылар;
· DEFDBG <әріптер тізімі>- символдық айнымалылар.
Бұл жағдайда айнымалының түрі әріптер тізіміне айнымалы атының бірінші әріп енетін оператормен анықталады: DEFINT А, В, С, айнымалылары бүтін айнымлылар болады.
Айнымалылардың типтері %,!, #символдары арқылы берілген жағдайда ғана жоғарыдағы ереже орындалмайды.
Нақты айнымалы латын әріптерімен немесе соңынан цифр келетін латын әріптерімен таңаланады. Мысалы, А,В5, С1, ZO,Y9.
Ол нақты тұрақты үшін рұқсат етілген кез- келген мәнді қабылдай алады.
Бүтін айнымалы да нақты айнымалы сияқты таңбаланады, бірақ % таңбасымен аяқталуы тиіс. Мысалы, A%, C8%, B%2, I%, Ол бүтін тұрақты үшін рұқсат етілген кез-келген мәнді қабылдай алады.
Символдық айнымалы соңынан $ таңбасы келетін әріппен –цифрмен таңбаланады. Мысалы, B%,C1$, A5$. Ол символдық тұрақты үшін рұқсат етілген кез-келген мінді қабылдай алады.
Аттары белгілі бір әріптен және цифрдан тұратын айнымалылар бола алады.
Мысалы:
· А5- нақты айнымалы;
· А5%- бүтін айнымалы;
· А5% -символдық айнымалы.
Айнымалы атының дұрыс жазылуының мысалдары:
8. 2С- цифрдан басталады;
9. Ю1-орыс әріптері рұқсат етілмейді;
10. $2- ақша бірлігінің символынан басталады;
11. %К – пайыз символынан басталады.
BASIC тілінде қарастырылған символдардан басқа индексті айнымалыларды да (кейін қарастырамыз) пайдалануға рұқсат етіледі.
BASIC тілінің стандартты функциялары
BASIC тілінде ең көп тарлған элементар математикалық функцияларды мысалы, синусты, косниусты, экспонентті, квадрат түбірі, логарифмді және т.с.с. есертеу үшін орналастырылған стандартты функциялар қолданылады. Оларды таңбалау үшін ереже бойынша үш әріптен тұратын аттар пайдаланылады. Функциялар аргументі міндетті түрде дөңгелек жақшаға алынады. Еркін арихметикалық өрнек функцияның аргументі бола алады. Функцияны шақырып жұмыс істеу үшін оның атын теріп аргументін көрсету керек.
BASIC тілінде пайдалынатын стандатты функциялар:
· SIN(X)- синус (sin) функциясы, х аргументінің синусын есептеу;
· COS(X)- косниус (cos) функциясы, х аргументінің косниусын есептеу;
· TAN(X) тангенс (tgx) функциясы, х аргументінің тангенсін есептеу;
· ATN (X)- арктангенс (arctgx) функцифясы ,-p/2п-ден+p/2 п аралығындағы х аргументінің арктангенсін есептеу;
· EXP(X)- дәрежесі х болатын е=2.718281828 санын беріді. Е саны натурал логарифмнің негізгі екендігіне назар салыңыздар, ал ЕХР және LOG функциялары өзара кері функциялар. Осылайша, LOG (EXP(X))=X= ЕХР(LOG(X))
· LOG(X)- нанурал логарифм (Inx) функциясы, х оң аргументінің нанурал логарифмін есептейді;
· SQR(X)- квадрат түбір () функциясы, х аргументінің теріс емес мәндерін береді, х аргументі оң сан немесе 0-ге тең боуы тиіс;
· ABS(X)- абсалютті шама ()функциясы, х аргументінің абсалюттік мәнін (модулін) есептейді.АВС(-4.3)=4.3;
· INT(X)- бүтін санды функция, х аргументінен артық емес ең үлкен бүтін санды береді, яғни онда N<=x+1;
· SGN(X)- таңба (sign x) функциясы. Төмендегі ережелерге сәйкес х- тың таңасын береді.
SGN(X)=
· RGN(X)-кездейсоқ сандар функциясы, 0-ден 1-ге дейінгі аралықта жататын кездейсоқ сандарды береді. х аргументінің міні жоққа шығарылады;
· FIX(X)*- х-тың сандық мәнінің бөлшек бөлігі алынып тасталады. Мына өрнекке: SGN(X)* INT(ABC(X)) баламалы және х-тың мәні болғанағы INT(X) функциясына сай келеді;
· CINT(X)- x-тың стандатты нақты мәнін бүтін типке түрлендіреді яғни; INT функциясының әрекетін іске асырады.Мұнда х-тың -32767-ден 32768-ге дейінгі аралықта болуын ескеру керек;
· CDBL(X)-x- тың стандарты нақты мінін екі еселі мәнге түрлендіреді. Мысалы, мына операторды А# = CDBL(364.57) орындау нәтижесінде А# айнымалысы 364.57 екі еселі дәлдікті мәнеге ие болады;
· CSNG(X)- x-тың екі еселі дәлдікті мәнін стандатты дара дәлдікті нақты мәнге түрлендіреді.
Тригонометриялық функциялардың аргументтері радианмен беріледі. Егер градуспен берілсе, онда оны мына формуламен радианға рудару қажет:
<радианға мәні >=<градустық мәні> * РІ/ 180
BASIC тілінің кейбір түрлерінде х санының натурал логарифмін есептеу үшін тек бір LOG(X) функциясы бар. Бірақ натурал логрифмді мына формуланы пайдаланып, кез-келген негізгі логарифмге оңай аударуға блады: log N= 1na/lna мұнда а негізі.
Бүтін санды INT(X) функциясы, х аргументінен артық емес оң үлкен бүтін санның мәнін есептейді.
Мысалы, INT(24.67)=24.
Берілген санды оған жақын бүтін санға дейін дөңгелектеуді орындау үшін INT(X+5) деп жазу жеткілікті. Мысалы, 3.9 саны да 4-ке дейін дөңгелектене,ал 4.3 саны да 4-ке дейін дөңгелектенеді. Мысалы, INT(5.9+5)= INT(6.4) =6, INT(1,3+5)= INT(1.8)=1.
INT(X) функциясын мына төмендегі өрнектің көмегімен кез-келген берілген ондық разрядқа дейін дөңгелектеу үшін пайдалануға болады:
INT((X*10D)+5)/10D. Мұнда, D –пайдаланушы беретін және дөңгелектеу дәлдігін анықтаушы бүтін сан.
RID(X) функциясының аргументі пайдаланылмайды және кез-келген сан бола алады. Функция кездейсрқ сандар генераторы ретінде жұмыс істейді, яғни таралудың бір қалыпты заңы бойынша (0.1) ауқымнан еркін сандарды шығарады. Кездейсоқ сандарды әр түрі ақуымда алуға болады. Мысалы, 0-ден 9-ға дейінгі кездейсоқ сандарды алу үшін мына өрнекті пайдалануға болады: INT(10* RID(0)).
Берілген аралықтағы кездейсоқ сандарды да алуға болады. Мысалы, (А,В) аралығындағы кездейсоқ сандарды алу үшін өрнек пайдалынады. (В-А)* RID(0)+А.
Арифметикалық өрнектер
Сандық тұрақтылармен айнымалылармен және стандартты функциялармен кәдімгі арифметикалық амалдарды орындауға болады.
Стандартты мәндердің есептелу ережесін білдіретін символдық жазуды арифметикалық өрнек дейміз. BASIC тілінде арифметикалық өрнектер жалпы қабыланған табиғи пішімге жазылады. Ол сандардан, айнымалылардың және функциялардың аттарынан арифметикалық амалдардың таңбаларынан және жақшалардан тұрады.
Арихметикалық амалдардың таңбаларына мыналар жатады:
· ^ - дәрежеге шығару;
· * - көбейту;
· / - бөлу;
· + -қосу;
· - - алу.
Өрнектерді жазуда мына мөмендегі ұсыныстар мен шектеулерді ескеру қажет:
1. Формулалар ешқандай төменгі немесе жоғары таңбаларсыз бір қатарға жазылуы тиіс:
Арихметикалық өрнекті жазудың мысалдары:
Математикалық жазылуы BASIC тілінде жазылуы
5 5
а А
в+5 В+5
3с 3* С
а+в
4+с (А+В)/(4+С)
2 Әсіресе өзіңе-өзің сенімсіздеу жағдайларда орындалтын амалдардың реттілігін көрсету үшін дөңгелек жақшаны пайдалану қажет. Жақша ішіндегілер бірнеще кезекте есептеледі. Егер жақшаға алынған өрнектің өзі жақшаға алынған болса, онда есептеу ішкі жақшадан басталады. Жақшаның ішінде амалдар солдан оңға қарай амалдардың дәрежесіне сәйкес орындалады:
· алдымен функцияның мәні есептеледі;
· одан соң барлық дәрежеге шығару амалдары;
· бұдан кейін көбейту мен бөлу;
· ең соңында қосу және бөлу;
Мысады, BASIC тіліндегі -2+А/В*С+3^2 өрнегі мына -2+А/В*С+3^2 математикалық өрнекке баламалы. Оны есептеу алгаритімі мынандай реттілікпен орындалады:
· Х= 32;
· Ү=(А/В)С;
· Z=-2+Ү+Х.
3. Арихметикалық амалдың екі таңбасын екі бірінің жаңына бірін қоюға және көбейгіштердің арасындағы көбейту таңбасын қалдырып кетуге болмайды. Мысалы, мына 8ху/-z математикалық өрнекті BASIC тілінде былай жазылады:8*Х*Ү/(-Z). типтері бірдей арихметикалық өрнектермен арифметикалық амалдар орындалғана сол типтегі нәтиже алынады. A%+ B% +10% = бүтін сан, С1* D= нақты сан.
4. Бүтін және нақты шамалармен орындалатын амалдар нақты нәтиже береді. Мысалы, А*В%= нақты сан, 5.4*3% =16.2
5. mju Бүтін дәрежеге шығару көптеген рет көбейту арқылы орындалады. Мысалы, A^ 3% =A*A* A C^ N%= C*C*… C. N рет
6. Егер дәреженің көрсеткіші нақты сан болса, онда нәтижені есептеу ЕХР және LOG функцияның көмегімен жүзеге асырылады: Х^ Y= EXP (Y*LOG(X)). Арихметикалық өрнектерді жазуда кететін қателіктер: 3А+В, 2*-В, SIN +В.
Логикалық өрнектер және операциялар
Кейбір жағдайдарда программада қандай әрекет жасау керектігін таңдау қандайда әрекет жасау керктігін таңдау бір айнымалының мәніне тәуелді болады. Мысалы, квадрат теңдеудің түбірлерін есептеу дискриминантының таңбасына байланысты әр түрлі орындалады.
Екі өрнектің мәнін салыстыру нәтижесіне ақиқат және жалған болатын логикалық өрнек алынады. BASIC праграммалау тілінде логикалық мәндер сан түрінде беріледі; нөлдік мән жалған ретінде ал нөл емес мән ақиқат ретінде қарастырылады. Егер праграмма екі өрнекті салыстыра отырып логикалық мәнді өзі есептеп шығаратын болса, онда- 1 мәні алынады.
BASIC праграммалау тілі алты салыстыру операциясын пайдалынылады. Осы операциялардың кейбіреуіне сәйкес келетін стандартты математикалық символдардың таңбалары стандартты пернетақтада болмағандықтан құрама таңбалар ретінде теріліп жазылады:
Таңба Операция
> үлкен
<> тең емес
>= үлкен немесе тең
<= кіші немесе тең
Мұнда «=» таңбасына ерекше назар аудару керек. Жоғарыда біздер бұл таңба таңба меншіктеу операциясын сипаттайды делік. Ал берілген жағдайда «=» таңбасы – бұл логикалық салыстыру операторы. Траслятор берілген таңбаны қалай пайдалану керек екендігін маңынасына қарай өзі анықтайды.
Логикалық өрнектерде пайдалынылатын операциялар логикалық операциялр деп аталынады.Санды пайдаланғанда нәтижесі де сан болатын арихметикалық операцияға ұқсас логикалық операцияларда логикалық өрнектер пайдалынылады және нәтижеде логикалық өрнектер алынады.
Логикалық операциялар праграммалауда кеңінен тараған және жиі пайдалынылады. Ол бір шарттың өзіне бірнеше талаптарды біріктіуге мүмкіндік береді.
BASIC тілінде праграммалауда қызметші сөздердің көмегімен мына төмендегідей алты логикалық операция жиі беріледі:
· AND- коньюнкция (логикалық көбейту);
· OR – дизъюнкция (логикалық қосу);
· NOT- логикалық теріске шығару;
· XOR – немесе емес;
· EQV- баламалық (бір мезгілде ақиқат немесе бір мезгілде жалған);
· IMP - импликация (бірнеше ақиқат болғанда мәні жалған, қалған басқа жағдайлардың бәрінде екінші жалған және ақиқат).
Біз осы келтірілген логикалық операциялардың ішінен (AND) логикалық көбейтуді; (OR) логикалық қосуды және (NOT) логикалық теріске шығаруды қарастырамыз. Бұл операциялардығ қолданылуы нәтижесін мына төмендегідей кестеден көреміз:
А В АAND В А OR В NOTА
Ақиқат Ақиқат Ақиқат Ақиқат Жалған
Ақиқат жалған Жалған Ақиқат
Жалған Ақиқат Жалған Ақиқат Ақиқат
Жалған Жалған Жалған Жалған
AND операциясы. Кестеде көрініп тұрғандай АAND В өрегі А және В операциялары ақиқат болғанда ақиқат болады. Сіз өзініз суретіңізді бөлмеңіздің қабырғасына іліп қойғыңыз келді дейік. Қағылатын шегені А аргументімен, ал болғаны В мен белгілейік. Оң нәтиже алу үшін (суретті қабырғаға ілу) сіздің қолыңызда шеге де және балға да болу керек. Егер сіз қолыңызда осы аталған екі нәрсенің біреуі ғана болса, онда сіздің бөлмеңізді әсемдей алмайсыз.
OR операциясы. Жоғарыда келтірілген кестеде егер А және В операндыларының кез келгенін мәні (немесе екеунің мәні де) ақиқат болса, А OR В өрнегінің мәні де ақиқат болатындығы көрінеді. Сіз аштығығыңызды аласыз. Ал егер сізді ешқайсы болмаса, онда сіз аш қаласыз. Мұның теріс нәтиже екендігіне келіспеу қиын.
NOT операциясы. Бұл операция қарастырылған операцияларды ішіндегі ең қарапайымы. Оның әрекеті логикалық өрнектің бастапқы мәнін теріске шығару. Басында ақиқат болса, онда NOT А-ның әрекеті жалған болады. Сіздің қолыңызда жоғары мысалда айтылғандай алмаңыз болсын дейік. Осы алманы жеп қойып сіз жағдайды өзгертесіз, нәтижеде сізде ешнәрсе болмайды, яғни жағдай теріске айналады.
BASIC тілінде программалау негіздері
BASIC тіліндегі нөмірленген қатарлардың (Q BASIC программалау тілінде нөмірлеуге де болады) тізбегінен тұрады. Әрбір қатарда бір немесе бірнеше операторлар болады. Олар бірінен – бірі («:») қос нүкте арқылы ажыратылып жазылады. Қатардың жазылу пішімі:
<Қатар нөмірі> <оператор> <ЕП> немесе <қатар нөмірі> <1-оператор>: <2-оператор>...<ЕП>
Ескерту: <ЕП> жазуы «Енгізу пернесі» дегенді білдіреді.
Оператор деп – BASIC тілінде жазылған компьютерге берілетін нұсқауды айтамыз. Ол компьютерлерге қандай әрекетті орындау керектігін көрсетеді. Оператор арнайы бөлініп алынған сөздерден және деректерден тұрады.
Оператордың жазылу пішімі:
<аты> <мазмұны>
Мұнда:
· <аты> -жазылуы қатаң белгіленген және компьютердің нені орындайтындығын білдіретін ағылшын тілінде жазылған арнайы сөз:
· < мазмұны > бұл операторлардың орындалуы үшін қажетті деректер. Мысалы, LET A=B
Атынан басқа операторлардың құрамына арнайы бөлініп алынған қызметші сөздер де енеді. Олар операторлардың орындайтын әрекеттерін нақтылай түсу қызметін атқарады. Кейбір операторлардың тек аты ғана болады. Мысалы, STOP.
BASIC тілінде бір қатар 255 символды қамти алады. Олай болса BASIC тілінің бір қатары экранда бірнеше қатарды алып жатады. Өйткені экрандағы бір қатарға 64 немесе 80 символ ғана сыяды. Программалау тілінен алғаш танысқанда программаның мазмұны түсінікті болу үшін әр қатарға бір оператордан ғана орналастырған жөн. Программаларды жазуда қатарларды 10 қадаммен өзгеретіндей етіп нөмірлеу қабылданған. Бұл жағдай программада қалып кеткен қатарларды қажетті қатар нөмірлері арасына ендіруге мүмкіндік береді. Программа қатарларының нөмірлерінің өсу ретіне қарай орындалады.
Операторлы қатарларды былай жазамыз:
· A=5
· B=7
· C=A+B
· PRINT C
· END
Мұнда А айнымалысына 5 мәні, В айнымалысына 7 мәнімен жіктеледі, ал PRINT операторы С айнымалысының мәнін баспаға шығару.
BASIC тілінің интерпретаторы және
оның командалары
Шын мәнінде компьютерге машина тіліндегі программаларды ғана түсінеді және орындайды. Ал осы BASIC, PASCAL т.б. программалау тілдерін түсінбейді. Бірақ осы аталған тілдерді компьютерге машина тіліне аударып беретін программалар болады. Мұндай программалар компьютердің программаның қамсыздандыруының құрамына енеді және компьютерлер зауытта алғаш жасалғанда оның тұрақты жадына жазылып жіберіледі. BASIC тілінде жазылған программаны аударуға арналған программаны жоғарыда айтқанымыздай BASIC тілінің интерпретаторы деп атайды.
Интерпретатор компьютердің белгілі бір түріне арналған болады және әр түрлі компьютерлерге арналған интерпретаторларының бірінен – бірінің мүмкіндіктері жағынан ғана айырмашылығы болуы мүмкін. Интерпретатор пайдаланушыға мына төмендегідей мүмкіндіктер жасайды.
· BASIC тілінде жазылған бастапқы программаның қателіктерін хабарлай отырып ендіреді және жөндейді;
· Бастапқы программаның құрылғысына шығарады;
· BASIC тілінің операторын таңдайды, тексереді және орындайды. Жұмыс программасы бойынша есептеу кезінде интерпретатор есептелу процесін бақылауды ұйымдастырады және кездескен қателіктер туралы хабарды экранға шығарады;
· Бастапқы информацияларды сыртқы тасмалдаушыларда сақтайды.
Компьютер операторды мынадай екі режімнің бірінде орындайды:
· Программалау режімі;
· Тікелей есептеу режімі.
Программалау режімінде программаның әрбір қатары оператордың орындалу реттілігін көрсететін нөмірден басталады.
10 К=1
· PRINT K
· K=K+1
· PRINT K
Бұл режімде оператордың орындалуы арнайы нұсқау бергеннен кейін басталады. Тікелей есептеу режімінде операторлар нөмірсіз теріледі. Мысалы,
К=1
PRINT K
K=K+1
PRINT K
Операторлар <ЕП> пернесін басқаннан кейін бірден орындалады. Бұл режім кәдімгі калькуляторлық режімге ұқсас болғандықтан оны кейде калькуляторлық режім деп де атайды. BASIC тілінің интерпретаторларының жұмыс істеуде жеңілдететін өзінің арнайы жүйелік командалары бар.
Жүйелік команда -әр түрлі әркеттерді орындау үшін интерпретаторға берілетін нұсқауды айтамыз. Мұндай командалар нөмірсіз жазылады.
Қажетті программаны компьютерге теріп енгізбес бұрын алдымен компьютердің оперативті жадын NEW командасының көмегімен тазартып алу керек. Ол үшін мынадай команда береміз: NEW <ЕП>
Сонда компьютер жаңа программаны енгізуге дайын тұрады, экранға интерпретатордың жұмысқа дайындық белгісі <ОК> шығады. Осыдан кейін программаның қатарларының нөмірлері мен операторларын пернетақтадан тере отырып программаны енгізуге болады.
BASIC тілінің интерпретаторында қатар нөмірлерін автоматты түрде нөмірлеуге мүмкіндік беретін арнайы AUTO командасы бар. Оның жазылу пішімі: AUTO N1, N2, N3.
Мұнда AUTO – команданың аты; N1, N2 - N1 нөмірінен бастап N2 қадаммен нөмірлеу. Мысалы, AUTO 10,5 командасын ендірсек компьютер программа нөмірлерін 10 – қатардан бастап әр қатардың арасына 5 қадам қалдырып нөмірлей бастайды.
Интерпретатор бұрын ендіріліп қойылған программа қатарларының нөмірлерін қайтадан өзгертіп нөмірлей алады, ол RENUM командсы арқылы жүзеге асырылады. Жазылу пішімі: RENUM N1, N2, N3.
Мұнда RENUM – команданың аты; N2 – нөмірден бастап, N3 қадаммен жаңа N1 – нөміргеалмастырылады. Интерпретатор программаның барлық қатарларын немесе кейбір қажетсіз деп есептелген қатарларын өшіріп тастай алады, ол DELETE командасы арқылы орындалады. Мысалы, DELETE N1 – N3 командасы программаларын N1 – нөмірлі көрсетілмеген болса, онда қатарлар программаның басынан бастап N3 нөмірге дейін, ал егер N3 нөмірі көрсетілмеген болса, онда N1 – ден бастап программа соңына дейін өшіріледі.
Программаны толық ендіріп болғаннан кейін оны орындау үшін жұмысқа қосуға болады. Ол <RUN> командасы арқылы жүзеге асырылады, нәтижеде программаны орындау жұмысы ең бастапқы нөмірден басталады. Егер бұл команда RUN N пішінінде берілетін болса, онда программаны орындау жұмысы N – нөмірден басталады.
Қатардың саны өте көп үлкен программаны компьютерге енгізгенде бүкіл экран толғаннан кейін оның ең жоғарғы қатары экраннан шығып, көрінбей кетеді, бірақ одан ол жойылып кетті деген ой тумауы тиіс, өйткені жадында сақтайды.
<LIST> командасын беру арқылы енгізілген программаның мәтінін экранға шығаруға және қателіктердің бар немесе жоқ екендігін тексеруге болады. Команданың жазылу пішімі: LIST N1-N4
Мұнда LIST – команданың аты; N1 және N4 экранға шығарылатын қатарлардың бастапқы және соңғы нөмірлері. Мысалы, LIST 10-40 командасын беру арқылы экранда нөмірлері 10-нан 40-қа дейінгі қатарларды шығаруға болады.
BASIC тілінің операторларын екі топқа бөлуге болады:
· орындалатын операторлар – бұл программалар интерпретаторға қандай әркеттің орындалуы қажеттігін көрсетіп программаларда жасалатын әркеттерді анықтайды.
· орындалмайтын операторлар – бұл деркетердің ерекшеліктерінің жаңа бір тәртіпке келуін сипаттайды, программаға түсініктеме түріндегі ерекшеліктер мен хабарларды ендіруге мүмкіндік береді.
Түсінік беру операторы
Мектептің информатика курсындағы алгоритм тақырыбында келесі деректер келтірілген;
· алгоритмнің аты;
· типтері көрсетілген аргументтер мен нәтижелердің тізімі;
BASIC тілінде алгоритмнің аты REM деп аталатын түсініктеме беру операторы арқылы сипатталады. Алгоритмдегі аргументтерді BASIC тілінде IUT операторының көмегімен енгізу қолайлы. Программаны толығымен құрып, компьютерге ендіріп орындалғаннан кейін, оның орындалу нәтижелерін экранға шығару қажет болады. Ол BASIC тілінде PRINT операторының көмегімен жүзеге асырылады.
Мысалы,
алг Мысал (нақ а, в, лит к)
берілгені а,в алгоритмнің
керек к тақырыбы
Басы
командалар тобы алгоритмнің
денесі
соңы
Осы алгоритмнің BASIC тіліндегі жазылуы:
10 REM Мысал
20 INPUT A!, B!
•
•
•
100 PRINT K
110 END
REM операторы программаға түсініктеме беру арқылы оның көрнектілігін арттыру үшін қолданылады.Түсініктеме – беру пернетақтадан енгізілген кез келген символдар тізбегінен тұрады.
REM операторы программаның орындалуына ешқандай әсер етпейді, өйткені програманы трансляциялау барысында ескерілмейді.
Сызықтық алгоритмнің BASIC тіліндегі жазылуы. Меншітеу операторы
Сызықтық алгоритм бірнеше меншіктеу операторынан тұрады. Мұндай алгоритмді BASIC тілінде жазудың ешқандай қиындығы жоқ. Тек өрнектердің BASIC тілінде қабылданған жазылу тәртібін сақтасақ жеткілікті. Мұндай операторлар бір қатарға орналаса алады. Бұл жағдайда олар “:” қос нүкте арқылы ажыратылып жазылады. Алгоритмдік тілде “;” нүктелі үтір арқылы ажыратылып жазылады.
Мысалы,
алг трапеция ауданы (нақ a, b, h, s)
берілгені a, b, h
керек s
Басы
s: =(a+b) /(2*h)
соңы
Бұл алгоритм BASIC тілінде былайша жазылады:
10 REM Трапеция ауданы
20 INPUT A!, B!, H!
30 LET S = (A+B) / (2*H)
40 PRINT “Трапетцияның ауданы S = ”; S
50 END
BASICтілінің операторларын мына төмендегідей мүмкіндіктерге ие топтарға жіктеуге болады.
- мәндерді есептейді және оларды айнымалыларға меншіктейді;
- информацияны ендіреді және нәтижелер мен хабарларды баспаға шығарады;
- есептеулердің орындалуын басқарады;
Компьютерде программаның орындалуы кезінде айнымалы шама әр түрлі мәндер қабылдауы мүмкін. Дербес жағдайда есептелетін арифметикалық өрнектің мәні меншіктеу операторы арқылы айнымалы шамаға меншіктеледі.
BASICтілінде бұл амал “ =” таңбасымен белгіленеді. Меншіктеу белгісінің сол жағына айнымалының аты, ал оң жағына арифметикалық өрнек жазылады. Бұл амалды орындайтын арнайы меншіктеу операторы бар.
Оператордың жазылу пішімі: к LET v = e
Мұнда к- қатар нөмірі; LET-оператордың аты; v- айнымалының аты; е-арифметикалық өрнек (жеке жағдайда сандық немесе литерлік тұрақты немесе сандық және литерлік айнымалы болуы мүмкін).
Меншіктеу операторының орындалуын екі кезеңге бөлуге болады:
· е өрнегінің мәні есептеледі;
· е өрнегінің есептелетін мәні v айнымалысына меншіктеледі, яғни v айнымалысына бөлінген жады ұяшығына жіберіледі.
Егер е сандық тұрақты немесе айнымалы болса,онда бірінші кезең орындалмайды.
Мысал келтірейік:
12.LET X%=1-бүтін айнымалы Х-ке 1 саны меншіктелед;
13.LET А=27,4- нақты айнымалы А-ға 27,4 саны меншіктелед;
14.LET А$ = «Мектеп» -символдық (мәтіндік) айнымалы А$-ға литерлік тұрақты «Мектеп» сөзі меншіктеледі.
Ал мына мысалдарды жоғарыда аталған бірінші кезең орындалады:
· LET Х=А* SIN(T)-нақты айнымалы х-ке а Sin t өрнегінің есептелген мәні меншіктеледі.
· LET C$=A$+B$ -символдық айнымалы C$-ға символдық айнымалылар A$ мен B$-ның ағымдағы мәндерінің қосылуынан пайда болған нәтиже меншіктеледі.
Осылайша LET операторының орындалар алдында "=" меншіктеу таңбасының оң жағындағы өрнектегі барлық айнымалылардың мәндері, басқаша айтқанда е өрнегі анықталған (есептелген) болуы тиіс. Мына төмендегі программада 10,20,30 – қатарлардағы операторлар орындалғанда бірінші кезең орындалмайды, ал 40,50-қатарлардағы операторлар орындалғанда бірінші кезең орындалады.
10 LET А=5
20 LET B=3
30 LET C=-2
40 LETD=B^2-4*A*C
50 LET K= «Дискриминантты есептеу»
60 PRINT"D=;K=;K
BASICтіліндегі "=" меншіктеу таңбасы мен кәдімгі математикадағы теңдік таңбасының арасында үлкен айырмашылық бар. Мысалы, математикалық жазуда мына Х=X+1 өрнегі дұрыс емес, ал BASICтіліндегі 30 LET Х=X+1 жазылуы дұрыс және мынадай мағына береді:
· жадтың Х атты ұясынан айнымалының мәні алынады;
· бұл алынған мән бірімен қосылады да Х+1- ге жаңа мән жасалады;
· осы пайда болған Х+1 мәні Х атты жады ұясына ондағы алғашқы мәнді өшіріп өзі орналасады.
Мысалы,
10 LET X=5
20 LET X=4
30 LET X=X+Y
программа үзіндісіндегі 30-қатардағы LET операторы орындалғанда Х айнымалысы 9-санын меншіктейді яғни жадтың Х аты ұясында алғашқы 5санының орнына 99саны пайда болады.
BASICтілінің көптеген түрлерінде оператордың орны LET сөзін қалдырып кетуге де болады. Мысалы, жоңғарыда келтірілген программа үзіндісі былай жазылады.
10 LET X=5
20 LET X=4
30 LET X=X+Y
Информацияны енгізу және
баспаға шығару операторлары
Компьютерде қандай да бір деректерді өңдеу үшін, ол деректер алдын-ала компьютердің жадына ендіріліп қойылуы тиіс. Компьютерге деректерді сыртқы құрылғылардан да енгізуге болады. Бұл деректер инфомацияның сыртқы тасымалдаушыларында мысалы, магниттік дискіде сақталады. Сыртқы тасымалдаушылардан деректерді қажет болғанда компьютерге енгізу үшін, программаға арнайы ендіру операторларын қосады.
Мүндай операторлар бірнеше болуы мүмкін және олар программаның кез келген жерінде орналаса алады.
BASIC тілі компьютермен диалог режімінде жұмыс істеуге мүмкіндік беретін өте қолайлы тіл. Мұнда барлық деректер компьютерге ендіру құрылғысынан келіп түседі. Бұл жағдайда деректің әрбір қатары пернетақта арқылы теріліп, экранда көрінеді. Келесі қатарды теру үшін, пернетақтадағы (ЕП) пернесін басу керек.
Басқау құрылғысының көмегімен пайдаланушы программаны түзетеді, программаның орындалуын басқарады. Экранға немесе баспаға шығару құрылғысына нәтижелер шығарылады. Олар сандар, кестелер, графиктер, суреттер немесе мәтіндер болуы мүмкін,
Енгізу операторы
Енгізу құрылғысынан деректерді енгізу үшін, INPUT (енгізу) операторы қолданылады.
Оператордың жазылу пішімі: к INPUT р1,р2,...,рп
Мұнда к-қатар нөмірі; INPUT–оператордың аты; р1, р2,..., рп – үтірмен ажыратылып жазылған аинымалылар тізімі.
Бұл оператор былайша орындалады. Программаны орындау барысында, компьютер INPUT операторын кездестіре сала, экранға сұрақ белгісін шығарады. Компьютер өз жұмысын уақытша үзеді, осы үзіліс кезінде пайдаланушы пернетақтадан айнымалының мәндерін үтірлермен ажырата отырып, теріп шығады да, <ЕП> пернесін басады. Сонда ендірілген мәндердің ішіндегі бірінші мән, ендіру ооператорының тізіміндегі бірінші айнымалыға, екінші мән тізімдегі екінші айнымалыға т.с.с. меншіктелген болады. Бірақ енгізілген мәндерді пернетақтадан терген кезде, олардың саны және типі айнымалылар тізімінде көрсетілген айнымалылардың саны мен типіне дәл келуін қадағалау керек. Егер оларды артығымен терсеңіз, онда артық сандар есепке алынбайды.
Ал егер ендірілген мәндердің саны жеткіліксіз болса, онда компьютер тағы да сұрақ белгісін шығарып, жеткіліксіз мәндердің енгізілуін күтеді.
Барлық деректер дұрыс және түгелімен ендіріліп болғанан кейін, компьютер INPUT операторынан кейінгі келесі операторы орындауға көшеді. Мысалы, программаның орындалуының белгілі бір кезінде компьютер жадына мынадай мәндерді енгізу керек болсын: 1.2,-0.004, 2-ші, мектеп және де бұл мәндер Х,Ү,Z$ K$ айнымалыларына меншіктелсін. Осы аталған әрекеттердің орындалуы үшін мына төмендегі программа үзіндісі жұмысқа қосылсын:
.
.
.
100 INPUT X,Y,Z$,K$
120 LET A=X+Y
125 LET В=K+Z
.
.
.
Компьютер осы программаның 100-қатарындағы INPUT операторын кездестіргеннен кейін, экранға сұрақ белгісін шығарады да, пайдаланушы пернетақтадан тиісті мәндерді енгізгенше күтіп тұтады. Пайдаланушы жоғарғыда айтылған? 1.5,-0.4 Е-2, "2-ші", "мектеп" мәндерін теріп, <ЕП> пернесін басады, осыдан кейін Х,Ү,Z$,K$ айнымалыларына осы мәндер меншіктеледі.
Баспаға шығару операторы
Компьютердің оперативтік жадынан, деректерді магниттік дискілерге, баспаға шығару құрылғыларына және экранға шығаруға болады. Деректерді баспаға шығару үшін PRINT операторы қолданылады.
Оператордың жазылу пішімі:
к PRINT <шығарылатын тізімдер>
Мұнда к-қатар нөмірі; PRINT оператордың аты; < шығарылатын тізімдер > -бірінен-бірі үтірмен немесе нүктелі үтірмен ажыратылып шығарылатын элементтердің тізімі.
Баспаға шығарылатын элементтерге мыналарды жатқызуға болады:
· сандар;
· айнымалылар;
· өрнектер;
· мәтіндер;
· ТАВ(Х) функциясы.
PRINT операторы былай орындалады. Егер қандай да бір сандарды баспаға
шығару керек болса, онда оларды жай ғана шығарылатын тізімге қосып қою керек. Тізімге айнымалылардың да аттарын көрсетуге болады. Айтарлық, мына PRINT 24,Х,А,5 операторын орындау кезінде Х және А айнымалылардың 7 және 8 мәндеріне ие болсын. Сонда PRINT операторы орындалғаннан кейін, экранға 24,7,-8,5 сандары шығады. Шығарылған тізімде өрнектер мен функциялар да кездесуі мүмкін. Бұл жағдайда алдымен олардың мәндері есептеледі, одан кейін сол мәндер экранға шығады.
Экранға орыс алфавитінің әріптерімен жазылғани кез келген мәтіндерді де шығаруға болады. Мәтіндер экранға шығу үшін PRINT операторынан кейін тырнақшаға алынып жазылады.Мысалы,
10 LETX=EXP(1)
20 PRINT"X=";X
.
.
.
программа үзіндісі орындалғанда экранда Х = 2.71828 мәтіні шығады.
Экранда шығарылатын деректердің орналасуы әр түрлі компьютерде түрліше болады. Егер әрбір шығарылатын санға 15 орын бөлінген болса, онда қатардың ең үлкен ұзындығына қарай экрандағы қатарға 4-5 санды сыйғызуға болады.
Айтарлық, қатарда 60- тан кем емес орын бар болсын. Онда оны 15 орыннан ұратын төрт аумаққа бөлуге болады. Әрбір аумаққа оның басынан бастап орналасатын бір санды жазуға болады. Ол үшін тізім элементтерін үтірмен ажыратып жазуымыз керек.
Мысалы, ΡRINT A, B, SQR (A^2+B^2) операторының орындалуы үш санды төмендегідей тәртіпен баспаға шығарады:
А – ның мәні В – ның мәні А+В
1 орыннан 16орыннан 31 орыннан 46 орыннан
Сандарды тұрақты нүктелі пішінде және жылжымалы нүктелі пішінде баспаға шығаруға болады: Бұл олардың шамаларымен түріне және компьютерге байланысты болады. Өйткені әртүрлі компьютерлер деректердің әртүрлі пішімдерімен амалдар орындайды, олай болса соған сәйкес сандарды жазып көрсету аралықтары да түрліше болады. Егерде шығарылатын тізімдегі элементтер саны 4-тен көп болса, онда лағашқы төртеуі 1-қатарда қалған төртеуі 2-қатарда т.с.с орналасады. Сонымен, аумақтың сол жақ шетнен бастап орналасатын болады. Сандарды баспаға шығаруға аумақтағы бірінші орын санның таңбасына бөлінеді. Егер санның таңбасы «+» болса онда ол орынды бос орын баспаға шығады.
Мысалы PRINT 15,26,34,45,50,62,70,83,30,98 операторының орындаллуы нәтижесінде сандар төмендегідей реттілікпен экранға шығады:
15 26 34 45
50 62 70 83
90 98
Осылайша, бөлгіш ретінде үтірді пайдалану, әр уақытта кезектегі санды келесі аумаққа шығарады. Алдыңғы қатардағы барлық аумақтар толып қалса, келесі қатардан бастап сандарды аумақтарға орналастырады. PRINT операторының шығару тізімінде бөлгіш ретінде нүктелі үтірді пайдалансақ, онда сандарды бұданда жиі (тығыз) етіп баспаға шығаруға болады. Бұл жағдайда келесі сан аумаққа емес, бір бос орыннан кейін баспаға шығады. Мысалы, PRINT 1; 2; - 3; -4; 5; 6; 7; 8; 9; 10; операторының орындалуы нәтижесінде сандар мынадай реттпен экранға шығады: 1 2 -3 -4 5 6 7 8 9 10.
Егер алдыңғы қатарда тізімнің кезектегі элементін баспаға шығару
үшін орын жетпейтін болса, онда ол келесі қатардың басынан бастап баспаға шығарылады.
Программа мәтіннің де бірнеше баспаға шығару операторы PRINT бола алады. Бұл жағдайда кезектегі баспаға шығару операторы жаңа қатардың басынан бастап баспаға шығару операторының тізімінде аяқталған бөлгішке (үтір, нүктелі үтір немесе таңбаның жоқ болуы) тәуелді болады:
Айнымалыларға мән беру операторы.
Дата добавления: 2015-08-05; просмотров: 1291 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Ассемблер | | | RESTORE операторы |