REM, LEN,PRINT, END операторлары. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

REM, LEN,PRINT, END операторлары.



Алматы 2013 жыл

5В011100 - «Информатика» мамандығының студенттеріне

оқу тәжірибесін өткізуге арналған оқу-әдістемелік нұсқау.

 

Құрастырғандар – Фархадов Т. – доцент, физика-математика ғылымдарының кандидаты; Шаяхметова А. – оқытушы, - Алматы, ҚазҰПУ, 2013 ж.

 

 

 

Мазмұны

КІРІСПЕ……………………………………………………………..……..5

1. БЕЙСИК ПРОГРАММАЛАУ ТІЛІ………………………………….....6

1.1. Алгоритм және оның өрнектелу түрлері…………………………6

1.2. Бейсикте жұмыс істеудің тікелей режимі…………………..…….7

1.3. Тұрақтылар мен айнымалылар. Идентификатор………………...8

1.4. Стандарттық функциялар. Өрнектердің жазылуы………………8

1.5. Программалық режим. AUTO командасы.

REM, LEN,PRINT, END операторлары…….……………………9

1.6.AUTO режимінен шығу. RUN, LIST, NEW,

STOP, SYSTEM командалары……………………………………11

1.7. Енгізу операторы. INPUT, READ, DATA, GOTO,

RESTORE операторлары. Сұхбаттық программа………………12

1. 8.Тармақталу командасы. IF операторы…………………………..15

1.9.ON-GOTO, WHILE - WEND операторлары…………..…….….16

1.10.Қайталау командасы…………………………………………….16

1.11. Көмекші программа. GO SUB, RETURN операторлары…......18

1.12. Пайдаланушының функциясы. DEF FN операторы…………....19

1.13. Кестелер. DIM операторы………………………………………..20

1.14. Мәтіндік шамалар және олар үстінде амалдар…………………22

1.15.Графикалық режим. SCREEN, COLOR, CIRCLE операторлары.24

1.16.PAINT, PSET, PRESET операторлары…………………………..27

1.17.LINE, DRAW операторлары……………………………………27

2. БЕЙСИК ТІЛІНДЕГІ ПРОГРАММАЛАР……..................……………28

2.1. Массивтің ең үлкен және ең кіші элементтерді анықтау…..……28

2.2. Көпмүшеліктің мәнін Горнер схемасы бойынша

есептеу………………………………………………………………28

2.3. Массив элементтерін реттеу………………………………………28

2.4. Матрицаны матрицаға көбейту…………………………………….29

2.5. Матрицаны векторға көбейту…………………………………….29

2.6. Көбейту кестесін орындау…………………………………………29

2.7. Шеңбер ішінде толық жатушы ақ және қара квадраттар санын анықтау……………………………………………………………..30

2.8. n+m дәрежелі теңдеулердің бүтін мәнді шешімдер санын анықтау……………………………………………………………30

2.9. Шеңбер бойында бірдей қашықтықта жайласқан n нүктелерді жылжыту…………………………………………………………..31

2.10. Сұрақ жауап тесті…………………………………………………32

2.11. Мәтіндегі әріп санын анықтау……………………………………33

2.12. Ондық сандардың екілік санау жүйесіндегі өрнегін анықтау…33

2.13. Сумманы есептеу………………………………………………….34

2.14. Аспан және сағатты бейнелеу…………………………………..34

2.15. Арифметикалық амалдардың орындалуын сынау…………….35

2.16. Жалақы және салықтарды есептеу………………………………36

2.17. Тармақталу командасын қолдану………………………………..36

2.18. Екілік санау жүйесінен ондық санау жүйесіне өткізу………....36

2.19. Екі санды бөліп нәтижені символ көрінісінде шығару………..36

2.20. Тест құру……………………………………………………………37

2.21. ON K GOTO операторы……………………………………………37

2.22. CIRCLE операторын қолдану……………………………………..38

2.23. TAB операторын қолдану. ……………………………………….38

2.24. DATA, READ операторларын қолдану…………………………..38

2.25. GOSUB операторын қолдану……………………………………..40

2.26. Бейсик тілінде программалауға тапсырмалар……………….….40

3. VISUAL BASIC ОРТАСЫНЫҢ СИПАТТАМАСЫ............................43

3.1. Visual Basic программалау ортасы жайлы………………………...43

3.2. Visual Basic программалау ортасын іске қосу…………………….43

3.3. Visual Basic Интегралданған ортасының элементтері…………..44

3.4. Программаның кодын жазу……………………………………….46

3.5. Жоба. Жоба терезесі……………………………………………….48

3.6. Visual Basic ортасының компоненттері………………………….49

3.7. Visual Basic ортасының қасиеттері……………………………….50

4. ЖОБАЛАР ҚҰРУ ӘДІСТЕМЕСІ…………………………………….53

4.1. Мәтінді жазу түрінде шығару (1-тапсырма). ………………….53

4.2. Пішінге мәтін енгізу (2-тапсырма). ……………………………..54

4.3. Арифметикалық амалдарды орындау(3-тапсырма). ……………55

3.4. Жылдамдықты есептеу (4-тапсырма)……………………………57

4.5. Квадрат теңдеуді шешу (5-тапсырма)... ………………………..58

4.6. Ең үлкен ортақ бөлгішті анықтау (6-тапсырма)……………….60

4.7. Индексті қолдану (7-тапсырма)………………………………….61

4.8. Екі санның үлкенін табу(8-тапсырма). ………………………….63

4.9. Пішіннен пішінге өту (9-тапсырма)……………………………..64

4.10. Сумманы есептеу (10-тапсырма)……………………………….66

4.11. Бөлме қабырғаларының ауданын есептеу (11-тапсырма)……67

4.12. Жеті қарақшы бейнесін жасау (12-тапсырма)…………………69

4.13. Функция графигін жасау (13-тапсырма)………………………..70

4.14. Visual Basic ортасында жобалар құруға тапсырмалар………..71

ӘДЕБИЕТТЕР………………………………………………………………77

 

КІРІСПЕ

Жоғары деңгейдегі программалау тілдерінің ішінде дүние жүзіне кең тараған тілдердің бірі Бейсик. BASIC – (Beginners all purpose Symbolic instructions Code) – “Жаңадан үйренушілер үшін символдық нұсқаулар түріндегі көп мақсатты тіл” сөйлемінің қысқартырылған сөз ретінде алынған түрі. Қазіргі кезде Бейсиктің 30 – дан аса түрі бар. Солардың ішінде компьютерге алғашқы енгізілген GW – Basic ті үйренеміз. Бейсикте 20 – ға жуық операторлары бар [1-5]. Басқа жоғры деңгейлі программалау тілдері сияқты Бейсиктің өз алфавиті мен синтаксисі (грамматикасы) бар.

Алфавит – программада пайдаланылатын түрлі символдар (әріптер, цифрлар, таңбалар және басқа белгілер). Синтаксис – машинаның іс әрекетін анықтайтын нұсқауларды (командаларды, операторларды), функцияларды, берілгендер мен өрнектерді жазу ережелері. Олар – компьютерге түсінікті шартты белгілерді пайдалана отырып жазылатын үлгілер.

Бейсик алфавитінің символдары:

1. Латын алфавитінің бас және кіші әріптері,

2. Орыс алфавитінің бас және кіші әріптері,

3. Араб цифрлары: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

4. Өрнек таңбалары: + (қосу), - (азайту), * (көбейту), / (бөлу),;^(дәрежелеу).

5. Қатнас таңбалары: =, <, >, >=, <=, <>.

6. Арнайы символдар:.,,,:,;,, (,),!,?, “, %, $, &.

Есептеу техникасының өте тез дамуы, программалық қамсыздандырудың ұтымды жасақтау құралдарына деген қажеттілік “тез жасақтау” деп аталатын программалау жүйесінің пайда болуына алып келді. Тез жасақтау жүйесінің немесе қосымшаларды тез жасақтау ортасы идеологиясының негізіне көріністі жобалау және оқиғалы обьектіге бағдарланған программалау технологиясы жатады.

Бұл технологияның мәні былай: жасақтау орнасы өзінің мойнына ең ауыр программалық кодты қалыптастыру жұмыстарын алады, ал программалаушыға сұқбат терезелерін құрастыруды (конструкциялауды) және оқиғаны өңдеу функциясын жасауды қарастырады. Осыған байланысты қосымшаларды тез жасақтау ортасы жүйесін пайдаланғанда программалау процессінің өнімділігі артып тамаша нәтижелер береді.

Қосымшаларды тез жасақтау ортасы жүйелерінің арасында әр түрлі қарапайым бір терезелі қосымшалардан бастап деректер қорын басқару программаларын жасауға мүмкіндік беретін Visual Basic ортасы ерекше орын алады.

Visual Basic ( VB, visual basic ) программалау тілі-кез келген тіпті қосымшаны дайындауға болатын жылдамдығы тез, түсінікті, қуатты тілдердің бірі. Оның алғашқы нұсқасы 1991 жылы дайындалып, 32 разрядты процессормен жұмыс істейтін жетілдірілген нұсқалары 1997(VB5.0), 1999 жылдары (VB 6.0) жарық көрді. GWBasic, QBasic сияқты Бейсик программалау тілдері түрлі сандық, мәтіндік, графикалық информацияны өңдеуге пайдаланылатын. Visual Basic-ке осы тілдер мүмкіндігі енгізіліп, орындайтын іс-әрекеттері сапалы түрде визуальды кеңейтілген. Мысалы, терезеде графикалық фигураны қолдан салу; жүріп тұрған жүйелік сағатты орнату; редактор мәзірі мен контексті мәзір құру, олармен жұмыс; word-та құрылатын құжат терезелері сияқты бірінің ішіне бірі орналасатын түрлі терезелер құрып, оларға қажетті пайдаланушы интерфейстерін орнату және олармен жұмыс; модульдік процедуралар құру, оларды пайдалану; берілгендер қоры кестесімен сұраныс құру, т.б.

Мұнда Visual Basic ортасыныңнегізгі компоненттеріне қысқаша сипаттама берілген. Қалған компоненттердің түсініктемесін анықтама жүйесі арқылы табуға болады [6-9].

 

БЕЙСИК ПРОГРАММАЛАУ ТІЛІ

1.1. Алгоритм және оның өрнектелу түрлері.

Алға қойылған мақсатқа жету немесе берілген есепті шешу бағытында арнайы ережелер бойынша орындаушыға (адамға не компьютерге) жинақты түрде берілген нұсқаулар тізбегі алгоритм деп аталады.

Алгоритмдерге мысалдар келтіру керек.

Алгоритмнің негізгі қасиеттері

1. Алгоритмнің үздіксіздігі. Информацияны өңдеу процессі ретімен жазылған жеке-жеке нұсқаулардан тұратын тізбектен тұруы керек.

2. Алгоритмнің түсініктілігі. Орындаушы алгоритмді түсініп, орындай алатын болуы керек.

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

4. Алгоритмнің нәтижелілігі. Нұсқаулар шексіз көп болмай, қорытындысында оның нәтижесі болуы тиіс.

5. Алгоритмнің жалпылықтығы. Нұсқаулар жалпылық қасиетке ие болуы керек.

Алгоритм төмендегі түрлерде өрнектеледі:

1. Алгоритмнің сөздермен өрнектелуі,

2. Алгоритмнің формулаларда берілуі,

3. Алгоритмнің кестелерде берілуі,

4. Алгоритмнің бағдарлама көрінісінде берілуі,

5. Алгоритмнің алгоритмдік тілде өрнектелуі,

6. Алгоритмнің график көріністе берілуі.

Алгоритмнің график көріністе берілуін баяндайық.

 
 


- алгоритмнің басталуы немесе аяқталуын білдіреді.

 
 


- мән беру немесе көрсетпелерді орындау.

 
 


- ромб, шартты тексеруді белгілейді.

 

 

- мәліметтерді енгізу немесе шығару.

 

- көмекші алгоритмді шақыруды белілейді.

 

- қозғалысты белгілейді.

: = - мән беруді белгілейді.

 

1.2. Бейсикте жұмыс істеудің тікелей режимі

MS-DOS операциалық жүйесіндежұмыс істейтін қарапайым BASIC программалау тілі жарыққа шыққан соң-ақ ол тез дамытылып, көптеген жаңа күрделі нұсқалары пайда болды: GWBasic, Quick Basic, оның ықшамдалған QBasic нұсқасы, т.б. Одан әрі, MS DOS-тың графикалық кеңейтілуі – Windows тың және оның жеке операциалық жүйе түрінде жылдам жұмыс істейтін жетілдірілген нұсқасының жарыққа шығуы есептеуіш техника саласында күрделі өзгерістер туғызғаны белгілі.

Компьютердің Бейсикте жұмыс істеуінің т і к е л е й және п р о г р а м м а л ы қ режимдері бар. Тікелей режимде компьютерді, микрокалькулятор сияқты, арифметикалық өрнек мәнін есептеуге пайдаланылады.

Компьютерді қосқаннан соң, GW Basic те жұмыс істеу үшін gwbasic.exe файлы жүктеледі. Экранның жоғарғы жолында Бейсик варианты мен бос байттар саны жазылып қойылады да, олардың астынғы жағында OK (ок әй – дайын, бәрі реттеулі) сөзі мен курсор көрініп, экран тазаланады. Ол компьютердің т і к е л е й режимде жұмыс істеуге дайын болғаны. Осы режимде өрнек мәнін есептеу үшін пернетақтадан PRINT қызметші сөзін не сұрақ белгісін теріп алып, оған жалғастыра өрнекті Бейсик тілінің синтаксисін сақтап теріп шығу керек. Одан әрі ENTER пернесінің басылуы тиіс. (PRINT –басып шығару, көрсету. Оны клавиатурадан теру орнына ALT+P клавиштерін басуға да болады). Бұл кезде информация интерпретаторға беріледі де, ол өрнек мәнін процессордаң арифметикалық – логикалық құрылғысы арқылы бірден орындалып, нәтижені экранға шығарады. Мысалы,

1) PRINT 3*(4.5+2)/8 ENTER

2.4375

не? 3*(4.5+2)/8 ENTER

2.4375

2) x = 15

PRINT (x+8)*3.2 ENTER

73.6

3) x = 3.467

PRINT INT(x)+100 ENTER

 

1.3. Тұрақтылар мен айнымалылар. Идентификатор.

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

Тұрақтылар с а н д ы қ және м ә т і н д і к типті болып екіге бөлінеді. Сандық тұрақтылардың да екі типі бар: б ү т і н және н а қ т ы.

Мәтіндік тұрақты кез келген символдар тізбегінен тұрады да, тырнақшалар ішінде жазылады, мысалы, «Біз студенттерміз”, “A”, “”. Мұның екіншісі бір белгіден, үшіншісі бос белгілер тұр, оларды мәтіндік немесе символдық типтер деп атайды. Ж о л д ы қ тұрақтының ұзындығы 255-тен артық болмауы тиіс. Б ү т і н тұрақты ондық бүтін сандар. Олар соңына нүкте қойылмай жазылады. Н а қ т ы тұрақтылар – бөлшек түрінде жазылатын сандар.

Айнымалылар латын алфавитінің кез келген әрпімен не латын әрпінен басталған әріптер мен цифрлар арқылы белгіленуі мүмкін, мысалы, X, A2, X11, XY, ASAY, т.с.с. Мұндай белгілеулерді айнымалы атауы, не идентификатор деп атайды. Атаудың көп символдар тізбегінен тұруы да мүмкін.

Айнымалылардың ж а й және и н д е к с т е л г е н түрлері бар. Біріншісі – жоғарыда аталған атаулар, екіншісі – массив немесе кесте элементтері деп аталады. Айнымалылардың типтері оларға меншіктелген тұрақтылардың типтері арқылы анықталады. Сондықтан жай айнымалы бүтін, нақты, не мәтіндік типті болуы мүмкін. Бүтін типті айнымалы атауына - %, мәтіндік типті айнымалы атауына -$ белгі тіркестіріліп жазылуы тиіс. Бұл белгілер тіркестірілмеген болса, ол айнымалы нақты типті болады. %, $ - белгілерге айнымалылар типтерінің тікелей сипаттамалары делінеді. Мысалы,

X1%=425; x2=4.527; x3=7.; x4=5.67324584;

X5$=”Біз студенттерміз”.

 

1.4. Стандарттық функциялар. Өрнектердің жазылуы.

Бейсикте мәндерін компьютердің арнайы программалар арқылы автоматты түрде есептейтін функциялар бар. Оларды стандарт функциялар деб атайды. Олар 1 – кестеде көрсетулі. Стандарт функция аргументі кез келген өрнектен тұруы мүмкін, мысалы, SQR(x^2+5/8).

1 - кесте

Функция Түсініктеме
  SIN(X) Sinx (x радиандық өлшемде)
  COS(X) cosx (x радиандық өлшемде)
  TAN(X) tgx (x радиандық өлшемде)
  ATN(X) Arctgx (- <x<+ ) §
  ABS(X) х – тің абсолют шамасы
  SQR(X) х – тің квадрат түбірі (x>=0)
  LOG(X) Lnx (x>0)
  EXP(X) Көрсеткіштік функция (e^x)
  INT(X) x – тен артық емес max бүтін сан
  RND(X) (0; 1) аралығында өндірілетін кездейсоқ сан
  SGN(X) Сан таңбасы. Оның қабылдайтын мәндері: +1 (x>0 үшін), 0 (x=0 үшін), -1 (x<0 үшін).

 

RND(Х) – 0 мен 1 аралығында кездейсоқ нақты санды ендіретін функция. Мұнда Х – тің мәні үшін кез келген санды, мысалы бірді алуға болады, не оған сандық мән берілмеуі де мүмкін, RND функциясы стандартты функция болғандықтан, оның мәнін ендіру программасы Бейсик интерпретаторымен бірге тұрақты жазылып қойылған.

SGN(Х) функциясы Х санының таңбасын анықтайтын функция (мұны сигнум функция деб те атайды):

Кейбір тригонометриялық функциялардың стандартты еместігі кестеден көрініп тұр. Ондай функцияның мәндерін стандартты функциялар арқылы өрнектеп алу керек. Мысалы, ctg(x) = 1/tg(x).

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

өрнегінің Бейсикте жазылуы:

(x1^2+5*(a+2*(b+1.6))+sin(2*x))/(3+cos(x))

Мұндай өрнекті а р и ф м е т и к а л ы қ ө р н е к деп атайды.

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

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

 

1.5. Программалық режим. AUTO командасы.

END

 

1.11. Көмекші программа. GO SUB, RETURN операторлары.

Бір типті әрекеттерді қайталап орындайтын не айнымалылардың түрлі мәндерін есептейтін көмекші алгоритм программаның арнайы бөлімі (модулі) ретінде жазылып қойылады да, оны көмекші не қосалқы программа деп атайды. Бейсикте көмекші алгоритмге өту операторы GOSUB, ал одан шығу операторы –RETURN (goto sub – routine – көмекші программаға өту, return – қайту, оралу). GOSUB, RETURN – бірге орындалатын операторлар. Олардың программада жазылуын мынадай түрде бейнелеуге болады:

M GOSUB n

……………..

n REM көмекші программа

…….. S

n+k RETURN

 

Мұндағы m, n, n+k – жолдар номерлері,

S – көмекші программа денесі.

GOSUB n операторы басқаруды көмекші программа басталатын n – жолға өткізеді де, S орындалған соң көмекші программаның соңғы операторы болып енгізілетін RETURN операторы басқаруды GOSUB n – нен соң кездесетін бірінші операторға қайтарып береді.

n REM – көмекші программа тақырыбы ретінде пайдаланылатын түсініктеме жол. Кішігірім программа үшін оны программаға ендірмеу де мүмкін. Оның үстіне, GOSUB n операторын GOSUB n+10 түрінде жазып, басқаруды бірден S жазылған блоктың бірінші жолына өткізу де ықтимал.

Әдетте көмекші программаларды негізгі программа соңына (END операторынан соң) орналастырады.

5 – мысал. x1=1.7, x2=3.52, x3=32.4 үшін

y=3*x^4+sqr(5*x)-8 функциясының мәндерінің қосындысын табу керек (s=y(x1)+y(x2)+y(x3)?).

Программаның көмекші программаны пайдаланбай құрылған түрі:

10 REM Мәндер қосындысы

20 X=1.7: Y=3*X^4+SQR(5*X)-8: Y1=Y

30 X=3.52: Y=3*X^4+SQR(5*X)-8: Y2=Y

40 X=32.4: Y=3*X^4+SQR(5*X)-8: Y1=Y

50 S=Y1+Y2+Y

60 PRINT “S=”;S

70 END

RUN

S=3306479.6337699.

Программаның көмекші программаны пайдаланып құрвлған түрі:

10 REM Мәндер қосындысы

20 X=1.7: GOSUB 80: Y1=Y

30 X=3.52: GOSUB 80: Y2=Y

40 X=32.4: GOSUB 80

50 S=Y1+Y2+Y

60 PRINT “S=”;S

70 END

80 REM Есептеу

90 Y=3*X^4+SQR(5*X)-8

100 RETURN

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

Жалпы, программаны көмекші программалар арқылы модульді түрде құру бірден-бір жетілдірілген тәсіл.

 

1.12. Пайдаланушының функциясы. DEF FN операторы.

Бізге белгілі көмекші алгоритмді екі түрде құру мүмкін. Біріншісі жоғарыда келтірілген GOSUB операторы арқылы болса, екіншісі DEF FN операторы арқылы іске асады (define – анықтау, function – функция). Оның жазылу үлгісі:

DEF FN<әріп>(<параметр>) = < арифм. өрнек>

Мұндағы < арифм. өрнек> - мәні есептелетін кез келген өрнек (стандартты емес функция). Оны пайдаланушының функциясы, не анықталушы функция деп аталады;

<параметр> - функция аргументтері, олар үтір арқылы бөлініп жазылуы тиіс;

<әріп> - функция аргументтері болмайтын латын алфавитінің кез келген бас әрпі;

FN<әріп> - анықталушы функция аты (идентификатор).

Мысалы,

20 DEF FNZ(X,Y)=X^2+Y^2+3*X*Y-1

операторындағы анықталушы функция – FNZ(X,Y). Оның аталуы – FNZ.

DEF FN – анықталушы функцияны сипаттау операторы деп аталады.

Программада DEF FN операторы меншіктеу операторының оң жағындағы өрнекке, не PRINT операторының информациялық бөліміне енгізіліп анықталушы функцияны шақыру командасы бойынша ғана орындалады. Яғни мұндай программа алгоритм-функцияны пайдаланатын алгоритмге негізделген. Мысалы, үзіндісі

m DEF FNZ (X,Y)=X^2+5*X*Y+7

………………

n-k X=3.2: Y=5

………………..

n V=8+3*FNZ(X,Y)

түрінде берілген прграмманың n – жолынан компьютер FNZ шақыруын оқып шығады да, әріп үшін Z алынған DEF FN операторына өтеді. Осыдан соң 3,2 және 5 – ке тең нақты параметрлер бойынша анықталушы функцияның мәнін есептейді. Осыдан әрі, n – жолға қайтып келіп, есептелген мәнді шақыру командасының орнына қояды. Бұдан Бейсикте анықталушы функцияның sinx, cosx, т. б. Стандартты функциялар сияқты пайдаланылатынын байқау қиын емес.

DEF FN операторын программаның бас жағына ендіріп қою керек. Мысалы, 5 – мысалды шешу программасын мынадай түрде құру мүмкін:

10 REM Мәндер қосындысы

20 DEF FNY(X)=3*X^4+SQR(5*X)-8

30 S=FNY(1.7)+FNY(3.52)+FNY(32.4)

40 PRINT “S=”;S

50 END

 

Кестелер. DIM операторы.

Бейсикте бір өлшемді кестелер және матрицалармен жұмыс істеу мүмкін; кесте элементтері осы кестенің атымен белгіленіп, оның қатарына элементтің нөмері (индексі) жай жақшаларға алынып жазылады және элементтерді нөмерлеу әдетте 0 – ден басталады. Мысалы, төрт нақты сандардан тұратын сызықтық А – массиві элементтерінің белгіленуі: A(1), A(2), A(3), A(4). Мұндағы 1, 2, 3, 4 – элемент нөмерлері.

Кестелермен жұмыс істеу программасына оларды сипаттайтын DIM операторын алдын ала енгізіп қою керек. Оператордың сипатталу үлгісі:

DIM <айнымалы> (индекстер)[,<айнымалы>(индекстер)] …

<айнымалы> - кесте аты, оның соңына элементтер типін сипаттау символы енгізілуі тиіс (%, $,); индекстер. Мысалы, DIM A%(15), B$(20), C(24). Мұнда үш сызықтық кесте бір DIM операторы арқылы сипатталған. Компьютер

DIM A%(15) сипаттамасын 0қып шығып, жадыыдан бүтін типті A% кестесі үшін қатар орналасқан, әр қайсысы 2 байттық 16 ұяшық қалдырып кетеді.

Егер бүтін типті кесте шағын программаға енгізілсе, оның атауына % сипаттамасын тіркемей тастап кету де мүмкін.

Бейсикте жолдары мен бағандарының саны n, m болатын А матрицасының элементтері A(k,j) түрінде белгіленеді (k =1,2, …, n; j =1,2, …, m). Мысалы,

матрицасының элементтері: A(1,1) = 1, A(1,2) = 4, …, A(2,3) = 15.

6-мысал. Мәндері 5, 8, 4, 10, 14, 2.6, 9.8 болатын сызықтық А кестесі элементтерінің қосындысын және 0.001 дәлдік бойынша олардың орта мәнін табу керек.

10 REM Қосынды, орта мән

20 INPUT “n=”; N: DIM A(N): S=0

30 FOR K=1 TO N

40 PRINT “A(“K”)=”;: INPUT A(K)

50 S=S+A(K)

60 NEXT: ORTMAN=S/N

70 PRINT:S=”; S

80 PRINT “Орта мән=”;

90 PRINT USING “##.###”:ORTMAN

100 FOR J=1 to N

110 PRINT A(J);

120 NEXT

RUN

n=? 7

A(1)=? 5

A(2)=? 8

...........

A(7)=? 9.8

S=53.4

Орта мән=7.629

5 8 4 10 14 2.6 9.8

Соңғы программаны READ-DATA операторлары арқылы құру үшін

40-жолды 40 READ A(K) түрінде жазып, программаға

130 DATA 5, 8, 4, 10, 14, 2.6, 9.8 жолын қосса болғаны.

7-мысал. Көпмүшелік мәнін Горнер схемасы бойынша есептеу программасын құру керек.

a(0)*x^n+a(1)*x^(n-1)+ … +a(n-1)*x+a(n) көпмүшелікті Горнер схемасы бойынша мынадай түрде

(...(a(0)*x+a(1))*x+a(2))*x+... +a(n-1))*x+a(n)

түрлендіріп алып, еселіктерін (коэффициенттерін) бір өлшемді (сызықтық) кесте элементтері ретінде қарастыруға болады.

Программа мынадай түрде болады.

10 REM Горнер схемасы

20 INPUT “n,x=”; N,X: DIM A(N): Y=0

30 FOR K=0 TO N

40 PRINT “a(”K “)=”;: INPUT A(K)

50 Y=Y*X+A(K)

60 NEXT K

70 PRINT “Y(“X”)=”;Y

80 GOTO 20

Мысалы, х1=2 үшін y=5*x^3-6*x+8 мәні:

RUN

N,X=? 3.2

a(1)=? 5

a(2)=? 0

a(3)=? -6

a(4)=? 8

y(2)=36

N, X=?

8-мысал. y=3*x^2+5*B(k) функциясының мәнін есептеу керек, мұндағы B(k) – B массивтің элементтері (k=1, 2,..., 15), x аргументі B(k) мен бір кезде x1 мәнінен бастап h қадам бойынша өзгереді.

10 REM Бір кезде өзгеретін бірнеше

20 REM параметрлі циклде есептеу

30 DIM B(15)

40 FOR K=1 TO 15

50 PRINT “B(”k “)=”; INPUT B(k)

60 NEXT

70 INPUT “x1, h=”; x1, M: x=x1

80 FOR K=1 TO 15

90 Y=3*x^2+5*B(k)

100 PRINT “x=”;X; “B(“k”)=”: “Y=”; Y

110 X=X+h

120 NEXT

130 END

 

1.14. Мәтіндік шамалар және олар үстінде амалдар.

a). LEN, MID$, LEFT$, RIGHT$ функциялары.

Мәтіндік тұпақты компьютерге таныс кез келген белгілер тізбегінен тұрады да, тырнақшалар ішінде жазылады, Мысалы, “Біз студенттерміз”, “A”, “”. Мұның екіншісі бір символдан, үшіншісі бос символдан тұр. Оларды мәтіндік типті деп атайды. Мәтіндік тұрақтының ұзындығы 255-тен артық болмауы тиіс.

Компьютердің жадында мәтіндік тұрақтылар ендірілетін арнайы блок бар. Мәтіндік айнымалыға меншіктелген әр текст осы блоктың бір адрестен тұратын ұяшықтар тобына ендіріледі. Мысалы, компьютердің A$=”Біз бейбітшілік үшін” командасын орындауы нәтижесінде A$ адресіне осы тұрақты жазылып қойылады.Мәтіннің ұзындығы LEN(A$) функциясы арқылы есептелінеді (length-ұзындық).

Мәтіндермен біріктіру (жалғастыру) және қиып (ойып) алу амалдарын ғана орындау мүмкін. Жалғастыру амалының таңбасы – плюс (+), ол екі мәтінді бір мәтін түрінде біріктіреді. Мысалы,

 

10 A$=”Бейбіт”

20 B$=”шілік”

30 PRINT A$+B$; B$+A$

RUN

Бейбітшілік шілікБейбіт

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

10 A$=”Біз”; B$=”студенттерміз”

20 PRINT A$+” “+B$

30 PRINT A$; “ “; B$

программасында 20,30-жолдардың орындалу нәтижелері бірдей: Біз студенттерміз.

Ойып алу операциясы мәтінден бір шама үзінді бөліп алады. MID$, LEFT$, RIGHT$ функциялары арқылы орындалады. (mid-орта, left-сол, right-оң). Мұндағы MID$(A$,M,N) – A$ айнымалысы мәнінің m –символынан бастап n символын, MID$(A$,M) – A$ мәнінің M-символынан басталған үзіндісін, LEFT$(A$,N) – A$ мәнінің сол жақ n символын, RIGHT$(A$,N) – A$ мәнінің оң жақ n символын бөліп алатын функциялар. Мысалы, A$=”Математика” болса,

A ның ұзындығы: LEN(A$)=10

A[3:6]: MID$(A$,3,4)=”тема”,

A[1:5]: LEFT$(A$,5)=”Матем”,

A[7:10]: RIGHT$(A$,4)=”тика”,

A[1:5]: MID$(A$,1,5)=”Матем”,

A[7:10]: MID$(A$,7)=”тика”.

Келтірілген мысалдардан MID$ функциясын кейде LEFT$ не RIGHT$ функцияларының орнына пайдалануға мүмкін екені көрініп тұр.

9-мысал. Берілген мәтіннің құрамында кездесетін “а” әріптерінің санын есептеу керек.

10 REM a әріптерінің саны

20 INPUT “A$=”; A$: I=0

30 L=LEN(A$)

40 FOR K=1 TO L

50 IF MID$(A$,K,1)=”a” THEN I=I+1

60 NEXT

70 PRINT STRING$(33,”-“)

80 PRINT “a әріптерінің саны=”; I;

90 PRINT “, Мәтін ұзындығы.=”; L;

100 END

RUN

A$=? Бастапқы қадам

A әріптерінің саны=4. Мәтін ұзындығы=14

 

б)VAL, STR$, INSTR функциялары. Рекурсия.

· VAL(A$) – мәтіндік тұрақты түрінде берілген санды негізгі андық тұрақтыға алмастыру;

· STR$(N) – сандық тұрақтыны мәтіндік тұрақтыға алмастыру (VAL функциясына кері функция);

· INSTR(1,X$,Y$) – Y$ мәтіндік тұрақтысының X$ мәтіндік тұрақтысына енетінін анықтап, 1-символдан есептегендегі реттік орнын көрсету функциясы, Мысалы,

VAL(“427”)=427; STR$(427)=”427”;

INSTR(1,”Азамат”, “за”)=2;

INSTR(1,”Азамат”, “мен”)=0.

Бір көмекші программа орындалып болған соң оның өзін қайталау не болмаса көмекші программаны шақыру жағдайлары күрделі программаларда жиі кездеседі. Әдетте мұндай кұрылымды рекурсия деп атайды (recursion – қайту, оралу)

10-мысал. Рекурсияны пайдаланып, бір жолға енген Бос орын символдарын алып тастау керек.

10 REM Тексті қысу

20 INPUT “Жолды енгізіңіз=”;A$

30 B$=” “

40 GOSUB 60

50 PRINT A$: END

60 REM Қысу

70 K=INSTR(1,A$,B$)

80 IF K<>0 THEN A$=LEFT$(A$,K-1)+

RIGHT$(A$,LEN(A$)-K) ELSE GOTO 100

90 GOTO 60

100 RETURN

 

1.15.Графикалық режим. SCREEN, COLOR, CIRCLE операторлары.

Дербес компьютерінің мониторына түрлі түске боялған мультипликациялық суреттер шығарып, олармен әртүрлі ойындар ұйымдастыру да мүмкін.

SCREEN – IBM Бейсикте экранның текстік не графикалық режимін орнататын және кескіннің түстілігін қалыптастыратын оператор (screen-экран). Оның жазылу үлгісі:

SCREEN <режим>,<түс>

<Режим> - монитордың жұмыс істеу режимін орнататын код: 0, 1, 2;

0 – текстік алфавитті-цифрлық) режім. Бұл режимде экран сыйымдылығы 80 х 25 (әр жолға 80 символ сиятын 25 жол);

1 – стандартты (шешімді) графикалық режим. Мұнда монитор типіне қарай экран сыйымдылығы 320 х200 пиксель (“нүкте”) не одан да үлкен болуы мүмкін;

2 – жоғары шешімді графикалық режим сыйымдылығы (640 х200 нүкте).

<Түс> - 0 не 1 –ге тең код. Ол таңдап алған режимде кескіннің түске боялып көрсетілуін, не болмауын (бір түстілігін) орнатады. Мысалы, SCREEN 0, 0 – текстік режим, кескін бір түсті;

SCREEN 0, 1 – текстік режим, кескін түрлі түсті;

SCREEN 1, 0 – стандартты графикалық режим, кескін түрлі түсті; экран – 320 х200;

SCREEN 1, 1 – стандартты графикалық режим, кескін бір түсті;

SCREEN 2, 0 – жоғары шешімді графикалық режим, кескін бір түсті (қара экранда ақ түсті кескін); экран – 640 х200.

Программаға SCREEN операторы енгізілмесе, экран SCREEN 0, 0 режимінде жұмыс істейді (текстік режим).

COLOR – стандартты графикалық режимде экран және кескін түсін қалыптастыратын оператор. Оның IBM Бейсикте жазылу үлгісі:

COLOR C, P

C – экран түсінің коды: C= 0, 1, 2, …, 15 (2 – кесте).

COLOR C командасы арқылы экранды 16 түске бояп шығу мүмкін. Оны мына программаны орындау арқылы көз жеткізу қиын емес:

10 SCREEN 1, 0

20 FOR C=0 TO 15

30 COLOR C

40 FOR I=1 to 20000:NEXT

50 NEXT C

2 - кесте

Код(C) Экран түсі Код(C) Экран түсі
  Қара Көк Жасыл Көгілдір Қызыл Күлгін көк Сары Ақ   Сұр Көгілдір Ашық жасыл Ашық көгілдір Қызғылт Ашық күлгін Ашық сары Сұрғылт

 

P – палитра коды: P=0, не P=1 (палитра кескінді бояйтын түстер қоспасы). P=0 етіп алынса, кескінді жасыл, қызыл не сары түске бяп көрсету мүмкін, P=1 етіп алынса, кескінді бояуға болатын түстер: көгілдір, күлгін көк не ақ

(3-кестеде кескін түсінің коды Т арқылы белгіленген. Ол кескін сызатын оператордың параметрі ретінде белгіленеді).

 

 

3 - кесте

Палитра коды Кескін түсінің Коды (T) Түс
    Жасыл Қызыл Сары
    Көгілдір Күлгі көк Ақ

 

Графикалық режимде (x,y) координаталар жүйесінің х осі көлденең оңға, y осі төмен бағытталып, кескіндер “нүктелер” арқылы сызылады. Кескіндерді сызуға арналған “арнйы қаламұш” (сәуле) бар, ол алғашқы кезде координаталар жүйесінің бас нүктесінде орналасулы тұрады. Оны “графикалық қаламұш” деп те атайды.

CIRCLE – шеңбер, эллипс және олардың доғаларын сызатын оператор. Оның жазылу үлгісі:

CIRCLE (X, Y), R, T, b1, b2, E

(X, Y) – шеңбердің не эллипстің орталық нүктесі;

R=Rx – абсцисса осі бойынша радиус;

T – сызылатын сызық түсінің коды (палитра кодына байланысты);

b1, b2 – фигураның радиан арқылы берілетін шектелу бұрыштары. Олар жазылмаса, b1=0, b2=6.28318 деп қабылданады (сызу бағыты сағат тілінің қозғалу бағытына қарсы);

E = Rx/Ry (E<1 болса, y осі бойынша, ал E>1 болса, х осі бойынша сызылу. Оператор E енгізілмеген кезде E=1 деп қабылданады; Бұл кезде сызылатыны шеңбер). Мысалы,

10 SCREEN 1, 0

……..

100 CIRCLE (160, 100), 80,,,,0.7

программасында 100-оператор көгілдір экранда орталық нүктесі (160,100), Rx=80, E=0.7 болатын ақ түсті эллипс сызады.

11-мысал. Көк түсті экранда периодты түрде көрініп, өшіріліп тұратын мынадай фигураларды сызу керек:

1) қызыл түсті шеңбер ((x,y)=(100,60); R=40);

2) сары түсті эллипстің жоғары бөлімі

((x,y)=(200,120); Rx=50, b1=0; b2=3.1415; E=4/7).

SCREEN 1, 0: COLOR 1, 0

20 CIRCLE (100,100), 40, 2

30 CIRCLE (200,120), 50,, 0, 3.1415, 4/7

40 FOR K=1 TO 10000: NEXT

50 CLS: GOTO 20

 

20 – жолдағы енгізілген 2 саны кескінді қызыл түске бояу коды (p=0; t=2). Мұндағы CIRCLE операторына басқа параметрлер енгізілмегендіктен, b1=0; b2=6.283,…, E=1.

30 – жолда кесіндіні бояу түсі көрсетілмеген.

CLS – экранды тазалау операторы.

 

1.16.PAINT, PSET, PRESET операторлары.



Поделиться:


Последнее изменение этой страницы: 2016-04-23; просмотров: 1121; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 44.200.74.73 (0.251 с.)