Командалардың орындалу реті геометриялық фигураларды қосатын стрелкалар арқылы белгіленеді. Алгоритмнің осындай геометриялық фигуралар арқылы берілуін- блок-схема деп те атайды.
алг өрнек
арг а,х,в
нәт у
басы
егер ах және хв
у0
у1
онда у1
әйтпесе у0
бітті
соңы.
Таңдау командасы
таңдау
жағдай 1-шарт: 1-серия
жағдай 2-шарт : 2-серия
жағдай N- шарт : N- серия
бітті.
Таңдау командасы былай орындалады. Алдымен орындаушы 1- шарт сақтала ма, жоқ па соны тексереді.Егер шарт сақталса, онда орындаушы 1- серияға енетін командаларды орындайды, таңдау командасының орындалуы осымен аяқталады.Егер шарт сақталмаса, онда орындаушы 2- шарт сақтала ма,жоқ па соны тексереді. Егер тексерілетін шарт сақталса, онда орындаушы 2-серияға енетін командаларды орындайды, осымен таңдау командасының орындалуы аяқталады. Егер 2- шарт та сақталмаса, онда орындаушы 3- шартты тексереді. Егер бұл шарт сақталса, онда орындаушы 3- серияны орындайды және тағы сол сияқты.
Басқаша айтқанда, орындаушы сақталатын алғашқы шартты іздеп тапқанға дейін, команданың барлық шарттарын біртіндеп тексеріп шығады. Осындай алғашқы шартты тауып, орындаушы мұнан кейінгі командалар сериясын орындайды, таңдау командасы осымен аяқталады. Мысалы әлгі таңдау командасын орындар алдында 2- шарт та және 3- шартта сақталатын болса, онда атқарушы (орындаушы) бәрі бір тек 2- серияны ғана орындайды.
Таңдау командасы шарттарының бірде-біреуі сақталмайтын жағдайда орындаушы басқа ешбір әрекет жасамай таңдау командасын орындауын аяқтайды.
Егер біз осы жағдайда да қандайда бір әрекет қарастырғымыз келсе, таңдау командасын мына түрде жазуымыз керек.
таңдау
жағдай 1-шарт: 1-серия
жағдай 2-шарт : 2-серия
жағдай N- шарт : N- серия
әйтпесе серия
бітті.
Таңдау командасын осылай жазып, біз шарттардың ешқайсысы сақталмайтын жағдайда орындаушыны әйтпесе деген сөзден кейінгі тұрған серия командаларын орындауға мәжбүр етеміз.
Мысалы: х2=а теңдеуі түбірлерінің санын а-ға байланысты анықтайтын алгоритм жазу керек.
алг түбірлер саны (нақ а, лит у)
арг а
нәт у
басы
таңдау
жағдай а0 : у:=”түбірлері жоқ”
жағдай а=0 : у:=”бір түбір”
жағдай а>0 : у:=”екі түбір”
бітті
соңы.
2-мысал: Мектеп бағаларының сөздік атауын жазуға, яғни олардың мәндерін литерлік шамалар түрінде көсетуге мүмкіндік беретін алгоритм жазу керек.
алг бағалар атауы (бүт х, лит у)
арг х
нәт у
басы
таңдау
жағдай x=5 : y:=”өте жақсы”
жағдай x=4 : у:=”жақсы”
жағдай x=3 : у:=”қанағаттанарлық”
жағдай x=2 : у:=”қанағат-сыз”
жағдай x=1 : у:=”нашар”
әйтпесе у:=”мұндай баға жоқ”
бітті
соңы
Тармақталу командасын таңдау командасының дербес жағдайы деп қарастыруға болады.
Егер шарт таңдау
Онда 1-серия жағдай шарт: 1- серия
әйтпесе 2-серия әйтпесе 2- серия
бітті. Бітті
егер шарт таңдау
онда серия жағдай шарт : серия
Лекция 4
Таќырыбы: Таблицалық шамалар мен жұмыс істеу алгаритмі.
Жоспар:
-
Сызықтық таблица
-
Сызықтық таблицаны сипаттау
-
Тік төртбұрышты таблица
-
Тік төртбұрышты таблицаны сипаттау
5.Таблицалық шамаларға мысал
Пайдаланылѓан єдебиеттер:
Е.Валтухов, П.А. Рыбалко, В.С.Савченко
“Основы информатики и вычислительной техники”
А.П. Ершов, В.М. Монаков
“информатика және есептеуіш техника негіздері”
Адам есеп шығарған кезде – бастапқы берілгендерді жазу, анықтамалық информациаларды алу т.с.с.- таблицаларды өте жиі қолданады. Таблицалар әр түрлі болады, бірақ ең жиі кездесетіндер- сызықтық және тік төртбұрышты таблицалар.
Сызықты таблицаны құрайтын мәндер қағазға жазылған кезде жолға немесе бағанға орналастырылады. Таблицаның әрбір мәніне немесе элементіне оның реттік нөмірі сәйкс болады және керісінше, реттік нөмір берілген кезде, таблицаның қай элементі жайлы әңгіме болып отырғаны бірден айқындалады.
өлшеу жүргізілген күндер
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
орташа температура С
|
+3
|
+2
|
0
|
-1
|
-1
|
1
|
2
| Мысалы апта бойы өлшенген күндік орташатемпературасы таблицасын жазаиық.
топ журналындағы студенттер тізімі.
1
2
3
4
5
6
7
8
9
10
11
12
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
Сызықтық таблицаны сақтау кезінде реттік нөмірлерді сақтауды қажеттігі жөн екендігі айқын, нөмірлердің басын біле отырып, есептеу жолымен кез-келген элементті табуға болады. Бұған қоса ең үлкен реттік нөмірді білу де пайдалы, себебі бұл таблицаның өлшемін алдын ала анықтауға мүмкіндік береді. сонымен, қайсыбір шаманың сызықтық таблица болатынын көрсету үшін , таблца элементтерінің типін, оның атын, элементтерінің бастапқы және соңғы реттік нөмірлі беру керек.
Таблицалық шамалармен жұмыс істеу алгоритімдерінде
дұл нұсқау былайша жазылады: типті көрсететін қызметші сөз (бүт, нақ, лит т.б) бұдан кейін таб – деген қызметші, таблицаның аты, бұлардан кейін квадрат жақшаның ішінде бір-бірінен қос нүктемен ажыратылған таблица элементтерінің бастапқы және соңғы реттік нөмірлері тұрады.
Мысалы
нақ таб орташа температура [1:7]
лит таб студенттер тізімі [1:12]
Тік төртбұрышты тадлицалар да осыған ұқсас түұрде сипатталады. Көбейту таблицасын тік төртбұрышты түрде жазайық.
көбейгіш
көбейткіш
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
1
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
2
|
2
|
4
|
6
|
8
|
10
|
12
|
14
|
16
|
18
|
3
|
3
|
6
|
9
|
12
|
15
|
18
|
21
|
24
|
27
|
............
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
8
|
8
|
16
|
24
|
32
|
40
|
48
|
56
|
64
|
72
|
9
|
9
|
18
|
27
|
36
|
45
|
54
|
63
|
72
|
81
|
Тік төртбұрышты таблицалар үшін олардың вертикаль жолдарыныңда, горизанталь жолдарынының да нөмірлерінің шекаралары көрсетілуі керек . Осы мысал үшін бұл сипаттаманың түрі мынадай болады
бүт таб көбейтінді [1:9, 1:9 ]
көбейтіндінің көбейгіштің
шекарасы шекарасы
Таблицамен жұмыс істеу оның элементтерімен жұмыс істеуге келтіріледі. Дәл осы кезде таблицаның қай элементті пайдаланылатынын көрсету үшін, оның реттік нөмірін көрсету жеткілікті. Осы реттік нөмір таблицаның атына индекс түрінде тіркеліп жазылады.
Математика курсынан мына белгілеулер жақсы белгілі:
а0 , а1, в5, Хm+n және т.с.с. Бірақ та орындаушыға а0, а1, т.б айнымалыларды а таблицасының нөлінші Бірінші тағы басқа элементтерінен ажырату оңай болу үшін , таблица элементінің номерін квадрат жақшаға алып, таблицаның атынан соң сол жолдың деңгейінде орналастырып жазу қабылданған. Мысал:
А[I], көбейтінді [2,7] тағы басқа.
Алгаритмде таблицалар пайдаланудың мысалдарын қарастырайық.
1-мысал. 1-ден 1000-ға дейін номерленген , 1000 элементтен тұратын а-таблицасын құрайтын S нақты сандардың қосындысын табатын алгоритм құру керек. Қосылған сандар мөлшерінесептеп табу үшін таблица элементтерін санап шығатын аралық бүтін I айнымалысын пайдаланады.
Алг қосынды. (нақ. Таб а[1:1000], нақ S)
Арг а
Нәт S
Басы бүт I
I:=1 ; S:=0
әзірше I<-1000
цб
S:=S+a[I]
I:=I+1
Цс
Соңы
2-мысал. 1-ден n-дейін (n-бүтін сан) номерленген n-элементтен тұратын а таблицасының оң элементтерінің көбейтіндісін табу.
Алг көбейтінді (бүт таб а[1:n], бүт n, бүт р)
Арг n,a
Нәт р
I үшін бастап n дейін
Цб
Егер а[I]>0
Онда p:=p*a[I]
Бітті
Цс
Соңы.
Көбейту таблицасын толтыруға арналған күрделі алгаритімді құру керек.
Алг көбейту таблицасын (бүт таб көбейтінді [1:9, 1:9])
Нәт көбейтінді
Басы бүт I,j
әзір I<9
цб
j :=1
әзір j<9
цб
көқбеитінді [I:j] :=I *j
j:=j+1
цс
I:=I+1
Соңы
Осы алгаритімді толығырақ қарастырайық. Мунда екі қайтаалану командасы бар, сонымен бірге бір қайталану командасы, екіншісінің құрамына Енеді.
Орындаушы алдымен I-ге 1 мәнін меншіктеп бір інші сыртқы қайталану командасын орындауға кіріседі. Осы мәнде циклдің шарте орындалатын болғандықтан , орындаушы осы циклге енетін барлық командаларды орындауға тиіс.
Орындаушы j-ге 1 мәнін меншіктеп, екінші ішкі қайталану командасын орындауға кіріседі. Қайталану командасы құрамына енетін шарт орындалмай қалғанда, яғни j –дің мәні 9-дан үлкен болған кезде, бұл команда орындалды деп. есептеледі. Олардың нәтижесінде көбейтінді таблицасының бір інші жолы толады.
Көбейтінді таблица бір інші жолы элементінің индекстері мынадай болады: көбейтінді [1:1],көбейтінді [1:2],көбейтінді [1:9]
Сериаға енетін меншіктеу командасының түрі мынадай
Көбейтінді [I:j]:= I*j
Мұнндағы I- ге тең, ал j –1ден 9- ға дейін өзгереді, яғни шындығында екінші (ішкі ) қайталану камандасы орындалуы нәтижесінде көбейтінді тадлицасының бірінші жолы толатын болады.
Осыдан соң орындаушы бір інші (сыртқы) қайталану командасын орындауды жалғастырады. Ол I- ді 1- ге арттырады, сол себепті 2- ге тең болады. Сыртқы цикл шартын (I<9) тек середі, қайтадан j- ге 1- мәнін меншіктеиді. Осыдан соң қайтадан ішкі циклді орындау керек. Біз осы команданы орындау нәтижесінде көбейтінді таблицасының I- ші жолы толатынын білеміз
Лекция 5
Таќырыбы: Жолдық шама
Жоспар:
-
Жолдық шама.
-
LEW функциясы
-
MID$ функциясы.
-
LEFT$, RIGHT$ функциясы.
-
VAL, STR$, IN STR функциялары.
-
Рекурсия.
Пайдаланылѓан єдебиеттер
О.Камардинов “Есептеуіш техника және программалау”.
Жолдық шаманы жол, не литерлік, текстік шама деп те атайды. Машинаның жадында жолдық тұрақтылар ендірілетін арнайы блок бар. Жолдық айнымалыға меншіктелген әр текст осы блоктың бір адрестен тұратын ұяшықтар тобына ендіріледі.
Мысалы, Машинаның A$=”жолдық шама” командасын орындауы нәтижесінде A$ адресіне осы тұрақты жазылып қойылады.
Алгоритмдік тілде текст ұзындығы ұзын (А) арқылы белгіленеді. Бейсикте LEN(A$) функциясы арқылы есептеледі. (length- ұзындық)
Текстермен біріктіру (жалғастыру) және қиып алу амалдарын ғана орындау мүмкін. Жалғастыру амалының таңбасы- плюс (+), ол екі тексті бір текст түрінде біріктіреді. Мысалы,
-
A$=”Есептеуіш”
-
B$=”техника”
-
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$=”математика” болсын.
Ұзын (А): LEN(A$)=10
А[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$ функцияларының орнына пайдалану мүмкін екені көрініп тұр.
1-мысал. Берілген текстің құрамында кездесетін “а” әріптерінің санын есептеу керек.
10 REM а әріптерінің саны
-
INPUT ”A$=”; A$: I=0
-
L= LEN (A$)
-
FOR k=1 TO L
50 IF MID$ (A$, k, 1) = “a ” THEN I = I+1
60 NEXT k
70 PRINT STRING$(33,”_”)
80 PRINT “а әріптерінің саны =”; I
90 PRINT “ Текст ұзындығы =”; L
100 END
run
A$=? Бастапқы қадам
а әріптерінің саны = 4,текст ұзындығы = 14
Программада:
30 A$ айнымалысы мәнінің ұзындығын есептеу.
40 – 60 : цикл ” а ” әріптерінің санын есептеу I = 0
Цикл басында (k = 1) машина текстің бірінші әріпі Б- ны “ойып” алып (MID$,(A$,1,1)=Б), оны а әріпімен салыстырады да, олар бірдей болғандықтан, басқаруды 60- жолға өткізеді.K = 2 кезінде a = a (MID$(A$,2,1) = a) сондықтан 50 жол бойынша I = 0+1=1 меншіктеу командасы орындалып,текстің үшінші әріпін а әріпімен салыстыту басталады т.с.с.
VAL, STR$, INSTR функциялары. Рекурсия.
*VAL(A$) – жолдық тұрақты түрінде берілген санды негізгі сандық тұрақтыға алмастыру;
*STR(N) – сандық тұрақтыны жолдық тұрақтыға алмастыру(VALфункциясына кері функция);
*IN STR (1, x$, y$) – y$ жолдық тұрақтының x$ жолдық тұрақтысына енетінін анықтап, 1- символдан есептегендегі реттік орнын көрсету функциясы, мысалы,
VAL (“427”) = 427;STR$(427) = “427”;
IN STR (1,”Азамат”,”3a”) = 2
IN STR (1,”Азамат”,”мен”) =0
Бір көмекші программа орындалып болған соң оның өзін қайталау не басқа көмекші программаны шақыру жағдайлары күрделі программаларда жиі кездеседі. Әдетте мұндай құрылымды рекурсия деп атайды (recursion - қайта оралу).
Мысалы,Рекурсияны пайдаланып, бір жолға енген бос орын символдарын алып тастау керек.
10 REM Тексті қысу
20 INPUT “Жолды енгізіңіз-”;A$
30 B$ = “ ”
40 GOSUB 60
50 PRINT A$ : END
60 REM қысу
-
k = IN STR(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
Программада:
60-90: көмекші программа.Ол текстен бос орын символдарын табуды аяқтағанға дейін өзін- өзі шақыруды жалғастыра береді. Мұндағы 70- текске кезекті “ ” символының позициясын табу (K).
80: Бос орын символының сол және оң жағындағы текст бөліктерін біріктіру (Бос орын символын алып тастау ).
Символдардың рангілері. Текстік массивтерді реттеу.
Программалау тілінде сандық тұрақтылар сияқты жолдық шамалардың мәндерін (текстерді) салыстыру да мүмкін.Егер екі текстің барлық символдары пар- парымен бірдей болса (бос орындарды қоса), онда олар тең деп, әйтпесе тең емес деп қабылданады.
Мысалы, “Бала” = “Бала”,< > “Бара”, “Бала”< > “Ба- ла”.
UAK кестесінде түрлі символдардың кодтары әртүрлі болғандықтан (мысалы, ASC (“A”) = 65, ASC (“C”) =67 ), әр символдың рангілері (шені) бар деп екі символдың қайсысының коды жоғары болса, сол символдың рангісі жоғары деп айтылады. (“A”L”C”) Осыған сәйкес, латын әріптерімен жазылған адамдардың аты- жөндерін бірінші әріптері бойынша реттеу программасын сандық массивті реттеген программа сияқты құрып шығу қиын емес.Ал, ұлттық әріптермен жазылған адамдардың фамилияларын басқа түрде құрған дұрыс (фамилиялары мен аты- жөндері – массив элементтері түрінде қарастырылуы тиіс).
Мысалы. Қазақ әріптері бойынша жазылған адамдардың аты- жөндерін бірінші әріптері бойынша реттеу керек.
10 REM Адамдардың аты- жөндерін реттеу
20 CLS
30 INPUT “Адамдар саны : n =” ; N
40 DIM A$ (N)
50 B$ = “А Ә Б В Г Ғ Д Е Ж З И Й К Қ Л Н Ң О Ө П Р С Т У Ұ Ф Х Ы І Ю Я ”
-
L= LEN (B$)
-
FOR k = 1 TO N: INPUT A$(k): NEXT
80 CLS
90 FOR j = 1 TO L: FOR k = 1 TO N
100 IF MID$(A$(k),1,1) < > MID$ (B$,j,1) THEN 120
110 PRINT A$ (k)
120 NEXT k , j
130 END
RUN
Адамдар саны: N = ? 5
? Молдияров Нұрғали
? Әлепенова Жәудір
? Ақбалаева Балтагүл
? Еренова Нүргүл
? Претова Салтанат
Ақбалаева Балтагүл
Әлепенова Жәудір
Еренова Нүргүл
Молдияров Нұрғали
Претова Салтанат
Программада:
50: қазақ алфавитінің әріптері
70 : тізім бойынша кісілердің аты- жөндерін ендіру;
90- 120: цикл ішінде цикл J = 1 кезінде MID$ (B$, j, 1)=А болады да, MID$(A$(k), 1, 1)- дің ағымдық мәні болатын тізімде берілген фамилиялардың 1- әріптері А әрпімен салыстырылып шығады (1 < = k < =n). Тізімде А әрпінен басталған фамилия бар (Сондықтан фамилиялардың 1- әріптері 50 жолда екінші болып кездескен Ә әрпімен салыстырыла бастайды.(MID$(B$, 2, 1) =Ә) 100- жол бірінші рет Е әрпі үшін теңдікке айналады да,)
Ақбалаева Балтагүл шығады, одан кейін А- дан басталатын фамилия жоқ, сондықтан фамилиялардың 1әріптері 50жолда екінші болып кездескен Ә әрпімен салыстырыла бастайды т.с.с.
Лекция 6
Таќырыбы: Программалау туралы түсінік .
Жоспар.
-
Программалау туралы.
-
Программалау тілдері.
-
Тронсляторлар конпиляторлар интер претаторлар.
-
Q Basic интерпреттаторы.
-
Q Basic редакторы.
Пайдаланылѓан єдебиеттер:
-
С. Бобровский Программирование на языка Q Basic
-
Q Basic редакторының компьютердегі анықтамалы.
1.Компьютер іске қосылған кезде, ондағы көптеген програмалар жұмыс істей бастайды. Алдымен винчестердің, монитордың клавиятураның және басқа құрылғылардың дұрыстығын, жұмыс істеу қабылетін тексеретін жадта тұрақты сақталатын программалар жұмыс істейді. Егер барлық құрылғының жұміс істеуі дұрыс болса, үлкен және күрделі программа операциялық жүйе винчестерден компьютер жадына жүктелді. Бұл нүктелі кезінде түрлі құрылғылардың драйверлері, қызметші функцияларды автоматты түрде орындайтын және пайдаланушының жұмысына жеңілдік келтіретін программалар іске қосылады
ОЖ жүктеліп болған соң әртүрлі қолданбалы программаларды – текстік редакторларды, электронды таблицаларды, ойындарды т.б. жүктеуге болад.
Жоғарыда сипатталған программалар өздігінен пайда болмаға. әрбір драйверді әрбір ойынды, ОЖ – ні программисттер дайындаған.
Процессор -* компьютер жүрегі. Ол элементер команда – нұсқауларды өте жылдам орындайды, басқа ештеңе істей алмайды. Pentium процессоры үшін мұндай нұсқауларды бірнеше түрі бар, процессорлардың жаңа маркалары
(P2, P3, P4,) шығуына байланысты нұсқаулардың саны өсуде, жад информацианың үлкен бөлігін өткізу камандалары қосылып жатады.
Кез – кезген рпограмма әрқайсысы бір немесе бірнеше байтпен кодталатын жүздеген мың немесе милиондаған процессордың нұсқаулары.
( бұл нұсқауларды машиналық код деп те атайды) нұсқауларкодын тере отырып, программа құру мәні жоқ жұмыс. Ондаған нұсқауды енгізген соң адам жаңылысып қателер жібере бастайды.
Сондай – ақ программа – есептеу нұсқауларының жайғана тиындығы емес. Сыртқы құрылғыларымен байланысу үшін процессордың командаларында жоғату үзу – деген арнайы нұсқау бар. Ол процессордың жұмысын тоқтатыс үзіп, басқаруды сыртқы құрылғыларға береді. Үзуді сауатты қолдану үшін компьютердің құрылғыларының барлық бөлшектерін және олардың жұмысы істеу логикасы жақсы білу керек.
Программаларды машиналар кодта енгізу осы сияқты көптеген қиыншылықтарды туғызды.
Осындай қиыншылықтан шығу жолы 50 – жылдары жоғары денгейлі программалау тілдері программаны адамға үйреншікті, түсінікті терминдер арқылы жазуға арналған. Олар жадтық белгілі бір ұашықтарын, элементар нұсқауларды емес, табиғи тілге жақын тілдердің командаларын қолданады. Бұл командалар кейін арнайы программалар арқылы автоматты түрде машиналық кодқа айналдырылады.
Коммандаларының жазылуы бойынша математаналық, экономикалық, тобы басқа мәселелерді шешуде жоғары денгейлі програмалау тілдерінен
бір – біріне айырмашылығы бар. Бірақ онша емес. Бір тілді менгерсек, екіншісіне өту оңай.
Бірінші кең тараған тілі Фортран. ( Fortran Formula Translation – формуланы машиналар кодқа айналдыру, 50 – жылдардың соңында шыққан). Ол негізінде математикалық есептеулерге негізделген, алғашында оны тек әскерилер пайдаланды. Көп ұзамай Алгол, кобол шықты, одан кейін жаңа тілдер жолдарынан кейін саңырауқұлақтар сияқты көптеп шыға бастады.
Бейсик (Basic, Beginners ACC – purpose Symbolic Instruction Code – жаңадан үйренушілер үшін символдың нұсқаулар түріндегі көп мақсатты тіл) – 60 жылдары дартмут көледжінде құрылды. Қарапайымдылығының арқасында ол тез тарады.
Бірінші микрокомпьютерлердің шығуына байланысты 1970 жылдың ортасында кезекті компьютерлік ревалоция болады. Altair –деген осындай компьютерлердің біріне сол кездегі программалау тілдерінің ішіндегі ең қарапайым ретінде Бейсик тілі қойылды. Оны Microsort фирмасының қазіргі президенті Билл Гейгс өзінің серігі Гол Аллек екеуі орындады. Билл Гейстің қадырлы еңбегінің арқасында IBM PC компьютерлеріне де көшірілді, Q Basic – тің жетілдірілген варианты MS – DOS апиратциялық жүйесінің базисына енді.
Бейсик тілі көптеген опиратциялық жүйелерде жұмыс істей алады.
MS –DOS жүйесі үшін GW Basic, Q Basic тағы басқа бар, Windows үшін әр жылы Visual Basic – тің жаңа версиясы шығып отырады.
3, Жоғары денгейлі программау тілінде програма құру оңай. Есепті шешу алгоритміне сәйкес командаларды, тексті редакторды жаздың болды. Компьютердің ішкі құрылысы, енгізу шығару жүйесінің жұмысын білудің қажетті жоқ. Бірақ программа тексті әлі дайын қосымша емес, тек символдар жинағы. Қандай да бір программалау тілінде жазылған программа тексті жұмыс істеу үшін, толық программа болу,оған енгізілген командаларды орындай алуы үшін трансляторлар қолданылады.
Трансляторлар – берілген программа текстің автоматты түрде жұмыс істейтін қосымшаға айналдыратын арнайы программа.
Бұған жетудің екі жолы бар. 1) Берілген текст, мысалы Бейсиктің нұсқаулар жиыны тікелей машиналық кодқа айналдырылады, бұл кезде операциялық жүйенің барлық талаптарына жауап беретін программалық файыл құрылады.
Берілген тексті процесор нұсқауларына осылаиша аиналдыру және жүйе
жұмысына үзіліс жасау компилция – деп., осы процесті орындайтын
программа-компилятор деп. аталады. Компілятор бүгінде белгілі деген
барлық программалау тілінде, сон дай-ақ Буисик тілінде де құрылған.
2)-ші жолы берілген текстің әрбір командасы машиналық
кодла аиналдырылмайды, бір ден орындалады . он процесор емес , арнаиы
рограмма –интерпретатор орындаиды.
Екеуінің де жақсы және жаман жақтары бар. Компилятордың бастр кемшіліктері -оны құрудың қиындығы. Бұл жұмыс жоғары класти мамандар тобының көп жылдық еңбегін қажет етеді. Ал интерпретаторлар жазу орта класти програмисттердің қолынан келеді.
Осы екеуінің қайсысын таңдаған дұрыс ?
Әр түрлі жүиелік, қолоданбалы рограммалары құрылып тәжірибелі мамандар компиляторды паидаланады. Себебі олар тез істеитін және тұтас өнім даиындау керек. Программалауды сирену үшін интерпртаторды паидаланған ыңғаилы. Бұл үиреніп жатқан тілі әр жағынан зерттеуге, әр түрлі эксперименттерді жасауға операциалық жүиені бұзып аламын деп. ойланбай, жазуға мүмкіндік береді. Міне сондықтанда MS-DOS –ЖҮИЕСІНІҢ құрамынаQBasic интерпретаторы енгізілген. Q Basic –пролграмалаудың негізгіә түсініктерін меңгерудің жақсы жолы.
4. Q Basic интерпретаторының програмаларды түрлі мақсаттарда жарату мүмкін. Бұлпрограммалар жұмыс істеу үшін, пайдаланушыда Q Basic орнатылған болу керек.
Q Basic интерпретаторлық алғашқы интерпретаторлардан ашырмашылығы.
* программаларды модульдік үйымдастыру (программаның логикалық аяқталған
бөліктерін түрлі модульдерде сақтау)
* Жаңа икемді құрылымды күшті операторлар
* берілгендердің өзіндік қрылымын анықтау мүнкіндігі.
* Әр түрлі форматтағы және үлкен разрядтағы сандарды қабылдау.
* Әр түрлі монитторлармен жұмыс істеу
берілгендермен программаларды сақтау үшін жады көлемінің үлкейтілуі.
* қателерді кең түрде анықтау (интерпретатор программаның орындалу
барысында әр қатені анықтай алады).
* көп терезелі байланыс
* операторлардың редакторға енгізілуі барысында дұрыс жазылуын бақылау
* редактордың қосымша мүмкіндіктері (іздеу және ауыстыру)
Q Basic – ті іске қосу
-
Q Basic папкасын ағымдық ету. Q Basic.exe файлын жүктеу. Программа текст інде қазақша текст теру қажет болатын болса, Q Basic.exe файлын жүктеуден бұрын kazega. com файлын жүктеу керек.
Q Basic.her-фнықтамалық жүиенің файлы
Q Basic. ini- ағымдық жүйеге келтірү мәліметтрін сақтайтын файл
-
Q Basic – файлын жүктеген соң, экранда
Добро пожоловат в ms-dos Q Basic. деген диалогты терезесі
Q Basic редакторының терезесі көрінедію ENTER –клавишінбассақ анықтамалық жүйенің терезесі ашылады. esc- клавишін бассақ курсор бір інші Жолда көрінеді. Бұл кезде shift-f1 клавиштері арқылы анықтамалық жүиені шақыруға болады. Программа текстік теру кез-келген текстік редактордағы сиақты орындалады. Оң жақ төменгі бұрышта (ағымдық жол нөмірі мен ) курсор орналасқан ағымдық жол нөмірі мен баған тнөмірі көрініп тұрады. Редактордағы жол ұзындығы 256 символ.
INSERT-АУЫСТЫРУ. Ауыстыру режим інде курсор үлкен болады.
CTRL+HOME-текстің басына
CTRL+END-текстің соңына
SHIFT- лурсорды басқару клавиштері
CTRL+INSERT-белгіленген тексті бір буферне көшіру
SH3FT+INSERT- буферне көшірілген тексті курсор тұрған жерге қою.
SHIFT+DELETE-белгіленген тексті қиып алу.
Лекция 7
Таќырыбы: Q Basicте программалау туралы.
Жоспар:
-
Айнымалылар. Сандарды, жолдарды жазу.
-
Айнымалыларды программаға қосу.
-
Айнымалыға мәнді беру.
-
Оператторды нөмірлеу.
-
Түсініктеме.
-
Арифметикалық операторлар.
-
Өрнектер.
-
Бастапқы мәндерді енгізу.
-
Информацияны екранға шығару.
10. Информацияны пайдаланушының енгізуі.
Пайдаланылѓан єдебиеттер:
-
С. Борровский. “ Программирование на язике Q Basic ”
-
О. Комардинов. “ Есептеуіш техника және программалау ”
Кез– келген программалау тілтерінің негізгі түсінігі айнымалылар.
Айнымалылар – программаның орындалу басында аралық мәндерді сақтау үшін қолданылады. Операциялық жүйенің кез – келген обьектісі туралы информация айнымалылар арқылы жазылады және өңделеді.
Қайсы бір айнымалыда қандай берілгендер сақталғанын программа түсіну үшін, айнымалылар сандық, текстік тағы басқа типтерге бөлінеді. Айнымалының типіне енгізілетін информацияның типі сәйкес болуы керек.
Айнымалыларда сандар немесе жолдар сақталу мүнкін. Бейсикте бүтін және нақты сандар (бөлшек сандар) болады. Бөлшек сандар бейсикте кәдімгідей жазылаы, тек санның бүтін бөлігі мен бөлшек бөлігін бөліп тұратын “,” – дің орнына “.” қойылады. Экспонента арқылы өте үлкен немесе өте кіші сандарды жазуға болады.
1, 23000000000 саны Бейсикте 1.23 Е+ 9
Бұл жазу 1,23 санын 10 9 дәрежесіне көбейту деген білдіреді.
Жолдар бейсикте тырнақшаға алынып жазылады. Жолдың ұзындығының ең жоғары мөлшері + 32767 символ – ең төменгі мөлшері – 0 ( бос жол ) Жолдың ішінде түрлі символдар сондай- ақ қазақ, орыс әріптерінде қолдана беруге болады.
Мысалы “ Это строка” , “123,45 output II“, “ Бейсик тілі “
ДІМ < айн. аты. > AS ( тип)
Айнымалының аты ретінде әріптен басталатын ағылшын әріптері мен цифрлардан тұратын арасында бос орын жоқ символдардың тізбегін алуға болады. Біз тізбектітің ұзындығы 1 – 40 символ аралығында болуы керек. Бейсик тіліндегі қызметші сөздерді айнымалының аты ретінде пайдалануға тиым салынады. Айнымалы атын бас әріп, кіші әріп арқылы жазуда айырмашылық жоқ.
QBasic – те типтің мынандай 6 түрі бар.
INTEGER - 32 768 37 767
LONG - 2 147 483 648 2 147 484 647
SINGLE теріс емес 0 және + 2. 802597 Е– 45 3.402823 Е + 38
Single теріс - 3.402823 Е+ 38 - 2, 802597 Е – 45
Double теріс еме 0 және 4.94 06 56 54 58 41 24 65 д + 308
-
79 76 93 13 48 62 31 Д + 308
Double теріс -1.79 76 93 13 486 231 Д+ 308 -4. 94 06 56 45 84 124 465 Д–324
String ұзындығы ( 0 мен 32 767 символ аралығындағы жол
String + n ұзындығы белгіленген жол.
Бір DIM операторында бірнеше айнымалыны сипаттау мүмкін. Олардың сипаттамалары үтір арқылы ажыратылады.
DIM AS DOBLE, S1 AS STRING *500, Sg1 AS SINGLE
DIM операторын программаның бас жағында енгізген дұрыс. Бейсикте программада қолданылатын барлық айнымалыларды сипаттау талап етілмейді. Сипатталмаған айнымалыны автоматты түрде SINGLE типті деп қабылдайды. SINGLE – ден өзге типті мән қабылдайтын болса, онда айнымалыға типті көрсететін арналып символдарды тіркеп жазу керек. Ол символда төмендегі таблицада көрсетілген.
INTEGER %
SINGLE !
STRING $
LONG &
DOUBLE #
Типті көрсететін символдарды DIM операторында қолдануға болмайды.
DIM S $ AS STRING “қате”,
DIM S AS STRNG “дұрыс”
DIS S $ “дұрыс”
Егер айнымалы DIM операторы арқылы сипатталса, онда
( DIM X AS STRING ) кейін бұл айнымалымен жұмыс істеу кезінде типті көрсететін символды тіркеп жазуға немесе жазбауға болады.(X $, X). Егер айнымалының типі сәйкес символдар арқылы көрсетілсе, кейін бұл айнымалыға барлық уақытта типтің түрін көрсететін символды тіркеп жазып отыру керек.
3. Айнымалыға мәндерді беру меншіктеу командасы арқылы беруге болады. Жазылу үлгісі
< айнымалы > = < мән>
4. Бейсиктің әрбір апираторын нөмерлеуге болады бейсиктің алдынғы версияларында программаның әрбір жолын нөмірлеу талап етілетін
Q Basicте жолдарды нөмірлеуге болады. Бірақ нөмірлеудің де пайдалы түрлері бар. Нөмір оператордың сол жағына қойылады және оператордан бір немесе бірнеше бос орын арқылы ажыратылады. Нөмер теріс емес санболуы керек. Бірінен кейін бірі келетін сандарды қалаған ретте пайдалануға болады. Оператордың орындалуына нөмердің қатысы жоқ.
5. Программаның түрлі бөліктерінде не есептеліп жатқанын тез түсіну үшін программаға түсініктемелер енгізген жөн. Коменторий ( түсініктеме ) ‘дәйекше символынан басталады. дәйекшеден басталатын мұндай жолды компьютер орындамай тастап кетеді.’ Символының орнына REM операторын пайдалануға да болады.
INPUT операторы.
Программаның орындалу барысында айнымалылар мәндерін жадыға тікелей ендіру үшін INPUT операторы пайдаланылады.
Жазылу үлгісі .
INPUT < айн тізімі >
INPUT А, Н
Айнымалылар үтір арқылы бөліп жазылады.
INPUT операторының 1 – ші параметірі етіп ендірілу тиіс айнымалылардың мәндерән сұрайтын текс ендіріп қоюуға болады. Ол пайдаланушының машинамен жұмыс істеуін сұқпаттық режимге көшір, программаның сұрағына жауап беруді жеңілдету ұшін қажет.
INPUT ‘’ А,Н мәндеін енгіз = “ ; А,Н
PRINT операторы
Нәтижені экранға шығару операторы. Жазылу:
PRINT < тізім>
Тізімге µрнек, айнымалы жєне т±раќтыны енгізу м‰нкін олар н‰ктелі ‰тір не ‰тір арќылы болініп жазылады. Н‰ктелі ‰тір ќойылѓан кезде экранѓа мєндер тыѓыз форматты ( ара ќашыќтыѓы екі пазициялыќ бос орын болып ) ал ‰тір ќойылѓан кезде зоналыќ форматта ( єр мєн ‰шін 14 позициялыќ орын беріліп ) кµрінеді.
PRINTоператорын программаѓа параметрсіз енгізу м‰мкін ол экранда кезекті бір жолды бос тастап кетеді.
PRINT “ X= “; X
PRINT USING операторы.
Информацияны ‰лгі бойынша екранѓа шыѓару PRINT операторыныњ орнына PRINT USING операторы рай- ды. М±ныњ кµп ќолданылатын т‰рі санды ‰лгі бойынша эранѓа шыѓару. М±ндаѓы ‰лгі # ( нµмер ) символдарынан т±ратын жолдыќ µрнек. Мысалы:
PRINT USING “ # #. # # # “; X наќты типті Х айнымалыныњ мєнін 0.001 – ге дейінгі дєлдікпен # #. # # # ‰лгісінде шыѓару операторы. ( єрбір # символы бір цифрон не тањбасын басып шыѓару орнын кµрсетеді ). Егер PRINT USING операторында санныњ б‰тін болігін шыѓаруѓа арналѓанын # символдар жеткіліксіз кµрсетілсе, онда экранѓа шыѓарылатын санныњ бµлігі т‰гел басылып, алдына % тањбасы ќойылады.
“# # # # “ 54 54
“# # # # “ -54 -54.0
“# # # # “ 54,3 % 54.30
LOCATE X,У – курсорды т‰рѓан орнына экран ( Х,У) порициясына жылжыту операторы. ( Х – жол нµмірі, 0 < X < 2) у – баѓан нµмірі 0 < У < 80.
LOCATE 15, 40 – курсорды 15 жол мен 40 – баѓанныњ ќиылысына жылжыту LOCATE 2 – курсорды т‰рѓан орнынан екі жолѓа тµмен жылжыту
( баѓан µзгермейді )
LOCATE LINE +2 – курсорды т‰рѓан орнынан екі жолѓа жоѓары жылжыту
( баѓан µзгермейді )
Оператор экранныњ ќажетті жерлеріне т‰рлі, текстерді, символдарды шыѓару ‰шін пайдаланады. Курсордыњ аѓымдыќ кординаттарын аныќтау ‰шін тµмендегі екі оператор ќолданылады.
CSRLIN ‘ курсор орнатылѓан жолды аныќтау’
POS (0) ‘ курсор орналасќан баѓанды аныќтау.
Курсорды т±рѓан жерінен оњѓа жєне тµмен екі орынѓа жылжыту ‰шін мынандай команда жазу керек. LOCATE CSRLIN + 2, POS( 0 ) + 2
Т‰стерді орнату. Экранѓа шыѓарылатын нєтижелерді єрт‰рлі т‰сте шыѓару ‰шін тµмендегі операторды пайдаланамыз.
COLOR { символ т‰сі }, { фон т‰сі }
Мысалы:
COLOR 14, 1 кµк фонѓа символдарды сары т‰спен жаз, яѓни тєтижелер к‰рсор т‰рѓан жолдан кµк фонда сары т‰спен кµрінеді.
0 – ќара 6 – ќоњыр 12 – ашыќ ќызыл
1 – кµк 7 – аќ 13 – розовий
2 – жасыл 8 – с‰р ( серий) 14 - сары
3 – Голубой 9 – ашыќ кµк 15 – ярко – белий.
4 – ќызыл 10 – ашыќ жасыл
5 – фиолетовый 11 – светло голубой
Лекция 8
Таќырыбы: Енгізу-шығару операторлары
Жоспар:
-
Түсініктеме.
-
Меншіктеу командасы.
-
Print операторы.
-
Input операторы.
-
Read, Data операторлары.
Пайдаланылѓан єдебиеттер:
-
С.Бобровский. Программирование на языке QBASIC. Москва, 2001.
-
Камардинов О. Есептеуіш техника және программалау. Алматы, 1997
1. Түсініктеме
Кейде программа қандай есепті немесе қандай мәселені шешетінін, программада айнымалы нені білдіретіндігін, функция немесе оператор қандай іс-әрекет жасайтыны жайлы еске салатын немесе хабарлайтын ескертулер қою қажет болады. Бұл ескертулер түсініктемелер деп аталады. Бейсикте программаға қанша болмасын түсініктемелер қоюға болады. Түсініктемелер REM операторынан соң немесе дәйекше символынан кейін жазылады (remark-түсініктеме, ескерту). Бұл жолды машина орындамай тастап кетеді. Яғни, түсніктеме енгізілмесе де программа жұмыс істей береді. Түсніктеме пайдаланушыға программаны оқып түсіну жеңіл болу үшін қажет.
REM квадрат теңдеу
‘квадрат теңдеу
2. Меншіктеу командасы
Меншіктеу командасы арқылы айнымалыға мән меншіктеледі. Меншкітеу командасының жазылу түрі:
1) LET <идентификатор>=<өрнек>
2) <идентификатор>=<өрнек>
LET-айталық, болсын деген мағынаны білдіреді. Көбінесе LET операторын жазбай екінші формасы пайдаланылады. Бұдан былай бізде екінші форманы пайдаланамыз.
Меншіктеу командасын математикадағы теңдікпен шатастыруға болмайды. Меншіктеу командасы орындалғанда бір әрекет орындалады.
a=5
a=5+2
операторлары орындалғанда а-ға бастапқыда 5 меншіктелсе, одан кейін 7 меншіктеледі.
Мысалы: a=6, b=3 болсын. Мешіктеу командасын пайдаланып екеуінің мәндерін алмастыру керек, яғни a=3, b=6 болуы керек
a=6: b=3
c=a: a=b: b=c
3. PRINT операторы
Оперативті жадыдан мәндерді монитор экранына шығару PRINT операторы арқылы орындалады. Оператордың жазылу үлгісі:
PRINT <тізім>
Тізімге өрнек, айналымы және тұрақтылардың енгізілуі мүмкін. Олар нүктелі үтір не үтір арқылы бөлініп жазылуы тиіс. Нүктелі үтір қойылған кезде экранда мәндер тығыз форматта ( ара қашықтықтары екі позициялық бос орын болып ), ал үтір қойылған кезде зоналық форматта (әр мән үшін 14 позициялық орын беріліп ) көрінеді.
PRINT операторын программаға параметрсіз енгізуде мүмкін. Ол экранда кезекті бір жолды бос тастап кетеді ( бір жолдық Бос Орын символдарын экранға шығарады ). Мысалы,
U=5: V=3.7 (2)
PRINT U;V
PRINT U+V; “V”; V.16.289
PRINT
PRINT “Біз бейбітшілік үшін “
программасының орындалу нәтижесінің экранда көрінуі түрі мынадай ;
-
3.7
8.7 V=3.7 16.289
Біз бейбітшілік үшін.
4. INPUT операторы
Проограмманың орындалу барысында айнымалылар мәндерін жадыға тікелей өндіру үшін Бейсикте INPUTоператорын пайдалануға болады (input- өндіру) Оператордың жазылу үлгісі ;
INPUT <айнымалылар тізімі >
Тізімге енетін айнымалылар үтір арқылы бөлініп жазылуы тиіс.
INPUT U, V
U мен Vайнымалыларының мәндерін жадыға ендіру үшін алдымен программаны іске қосу қажет. ЭЕМ INPUTоператорын кездестіргенде үзіліс жасап, экранға сұрақ белгісін шығарады да, INPUT операторы параметрлерінің мәндері ендірілгенге дейін күтіп тұрады. Мәндерді клавиатурадан үтір арқылы бөліп теру керек, оларды кезектестіру реті параметрлердің орналасу ретімен дәл келуі тиіс. Мәндер ендіріліп болған соң программаның орындалуы одан әрі жалғасады.
INPUT операторының бірінші параметрі етіп ендірілуі тиіс айнымалылардың мәндерін сұрайтын тексті (сұрақты) ендіріп қоюға да болады. Ол пайдаланушының машинамен жұмыс істеуін сұқбаттық режимге көшіріп, программаның сұрағына жауап беруді жеңілдету үшін қажет, Мысалы, (2)- программаны сұқбаттық режимде мынадай түрде жазуға болады:
INPUT “U.V айнымалылары =” U,V
PRINT U;V
PRINT U+V; “V=”: V. 16.289
PRINT
PRINT “Біз бейбітшілік үшін”
Программаны іске қосқан кезде экранға шығатын сұрақ;
U. V айнымалылары=? 5.3.7 КҚ
(сұраққа берілетін жауап ? белгісінің оң жағында көрсетулі).
INPUT операторының меншіктеу операторына қарағанда қолайлысы –программаны өзгертпей, айнымалыларға жаңа мәндер беріп, сәйкес нәтижелер алуға болатынында. Ол үшін нәтиже экранда көрінген соң машинаны іске қосу командасын қайталап берсе болғаны.
INPUT операторының сұрауына берілетін текстік жауапты клавиатурадан тырнақшаларға алмай теруге болады. Мысалы,
INPUT”Аты-жөніңіз-“ : А$
RUN
Аты-жөніңіз-? Ермекұлы Қошқарбай
READ, DATA операторлары
Берілгендерді ОЕСҚ-ға ендіру үшін меншіктеу командалары мен INPUT операторының орнына бірлесіп орындалатын READ, DATA операторларын пайдалануда мүмкін. Олардың жазылу үлгілері :
READ <айнымалылар тізімі>
DATA <мәндер тізімі>
Тізімдерге енгізілетін айнымалылармен мәндер үтірлер арқылы бөлініп жазылуы тиіс. DATA тікелей орындалмайтын оператор, оны бір не бірнеше жолға орналастыру да ықтимал. Мәндер тізімін берілгендер блогы деп те атайды. Программамен бірге, машина жадының бір блогына осы мәндерде ендіріліп, программа іске қосылған кезде олар READ операторының айнымалыларына басынан бастап сәйкес түрде меншіктеліп шығады. Мысалы программаның
READ A,B,C,D$
DATA 6. 85, 2. 7
DATA 2. 9, Біз студенттерміз
жолдарының орындалуы
A=6.85: B=2.7
C=2.9:D$=”Біз студенттерміз”
жолдарының орындалуымен бірдей (DATA операторының жолдық тұрақтыдан тұратын параметрін тырнақшалар ішінде жазбауда мүмкін).
DATA операторын программаның кез-келген жеріне енгізу рұқсат етілген, ол END операторынан бұрын жазылса болғаны.
Программада READ операторының айнымалылар саны DATA операторының мәндер санынан артық болмауы тиіс, керісінше жағдайда берілгендердің жеткіліксіздігін хабарлап машина тоқтап қалады. Екінші жағынан, егер программада DATA операторындағы мәндер саны READ операторының айнымалылар санынан көп болса, онда меншіктеуден қалған мәндер пайдаланусыз қалып қояды. Мысалы,
READ X,Y
DATA 6. 1, 5, 3, 8. 9.
PRINT X, Y
программасының орындалу барысында х, у айнымалыларының қабылдайтын мәндері х=6.1 у=5, ал 30-жол осы мәндерді экранға шығарады.
RESTORE операторы. READ операторының DATA операторындағы берілгендерді қайталап пайдалануы үшін Бейсик тілінде RESTORE операторы бар (restore-қайта бастау). Оның берілу үлгісі :
RESTORE. не RESTORE п
Мұндағы п- басқару өткізілетін жол нөмірі. Ол көрсетілмесе, басқару бірінші кездесетін DATA операторына ( берілгендер блогының басына) қайта беріледі. Мысалы
READ X, Y, Z
RESTORE 20
READ x1, y1, z1
DATA 2. 5, 3
20 DATA 4. 77, 4, 6. 5.
программасында айнымалылардың қабылдайтын мәндері :
x=2.5 y=3: z=4.77:
x1=4.77 y1=4: z1=6.5
Бейсикте п- жолға шартсыз өту командасы GOTO п операторы арқылы беріледі (goto-өту , көшу ), (4) –программада DATA операторының қалған мәндерін пайдалану үшін PRINT X . Y операторынан соң GOTO 10 операторын енгізсе болғаны:
30 PRINT X. Y : GOTO 10
(GOTO операторы бір жолға жазылатын бірнеще оператордың соңғысы болып жазылуы тиіс.) Бұл кезде программа DATA операторындағы мәндерді меншіктеу аяқталғанға дейін орындала береді де, соңында “ берілгендерден тыс “ хабарламасын шығарып ,машина тоқтап қалады.
Оқуды қиындатпау үшін программаларды құруды GOTO п операторын мүмкіндігінше аз пайдаланған жөн, бірақ оны қолданудың ыңғайлы жерлеріде бар. Мысалы, GOTO п операторын программаны бірнеше рет автоматты түрде қайталап орындау ( циклді ұйымдастыру) үшін пайдалануға болады. Мысалы,
10 INPUT “x.у=”:x.y
20 PRINT x^2+у^2
30 GOTO 10
программасы орындалып болған сайын GOTO 10операторы басқаруды экранға x.у=? сұрағын шығаратын 10-жолға қайтып береді де, х,у айнымалыларының көптеген мәндерінде х^2+^2 өрнегін RUN командасын қайталамай ақ есептеуге мүмкіндік туғызады.
Лекция 9
Таќырыбы: Ќарапайым графика
Жоспар:
-
Print Using операторы.
-
Экран режимін орнату.
-
Экранды тазалау.
-
Locate операторы.
-
Tab(x), String$ функциялары.
-
Курсордыњ аѓымдыќ координатын аныќтау.
-
Т‰стерді орнату.
Пайдаланылѓан єдебиеттер:
-
С.Бобровский. Программирование на языке QBASIC. Москва, 2001.
-
Камардинов О. Есептеуіш техника және программалау. Алматы, 1997
1. Print Using операторы
Информацияны ‰лгі бойынша экранѓа шыѓару ‰шін Print операторыныњ орнына Print Using операторы пайдаланылады. М±ныњ кµп пайдаланылатын т‰рі санды экранѓа ‰лгі бойынша шыѓару. М±ндаѓы ‰лгі -#(нµмірі) символдарынан т±ратын жолдыќ µрнек. Мысалы,
PRINT USING “ ##.###“ ; Х
Наќты типі х айнымалысыныњ мєнін 0. 001-ге дейінгі дєлдікпен ##.### ‰лгісінде шыѓару операторы. (Єрбір # символы санныњ бір цифрын не тањбасын басып шыѓару орнын кµрсетеді.) Мысалы –58.7375 мєнін б‰тін бµлігіне (санныњ тањбасын ќосќанда) ‰ш орын ќалдырып, бµлшек бµлігін 0.001-ге дейінгі дєлдікпен экранѓа шыѓару ‰шін PRINT операторы PRINT USING “###.##”;Х т‰рінде алынуы тиіс. Б±л кезде экранда –56.74 саны кµрінеді. Егер PRINT USING операторында санныњ б‰тін бµлігін шыѓаруѓа арналѓан # символдар жеткіліксіз кµрсетілсе, онда экранѓа шыѓарылатын санныњ б‰тін бµлігі т‰гел басылып, алдында % Символы кµрсетіліп ќойылады.
USING ЭЕМ-де есептелген Экранѓа шыѓару
‰лгісі мєн т‰рі
“####” 54 54
“###.#” -54 -54,0
“#.##” 54,3 %54,30
“##.##” -54,7378 %-56,74
2. Экран режимін орнату
Экранмен бірнеше режимде ж±мыс істеуге болады. Мысалы, текстік режимде 25, 43 жолды пайдалану м‰мкін. Графикалыќ режимде 640х480 н‰кте, 800х600 н‰кте м‰мкіндіктерін орнату м‰мкін. Видеоадаптерлер бірнеше видеопараќтарды пайдалануѓа м‰мкіндік береді. Мысалы, кµрінбейтін видеопараќта сурет салып, оѓан бірден µтуге болады. Б±л єдістер компьютерлік анимация ќ±руда пайдаланылады.
Экранныњ керекті режимін орнату ‰шін SCREEN операторы ќолданылады. Мысалы, SCREEN 0, SCREEN 12
Экран режимі
|
М‰мкіндігі
|
0
|
Барлыќ текстік режимдер
|
1
|
Графика 320х200, 25 жол х 40 баѓан
|
2
|
Графика 640х200, 25 жол х 80 баѓан
|
3
|
Графика 720х348, 25 жол х 40 баѓан. Тек Hercules, Olivetti видеоадаптерлері ‰шін
|
4
|
Графика 640х400, 25 жол х 80 баѓан. Тек Hercules, Olivetti видеоадаптерлері ‰шін
|
7
|
Графика 320х200, 25 жол х 40 баѓан, бірнеше видеопараќ
|
8
|
Графика 640х200, 25 жол х 80 баѓан, бірнеше видеопараќ
|
9
|
Графика 640х350, 25 немесе 43жол х 80 баѓан, бірнеше видеопараќ
|
10
|
Графика 640х350, (тек аќ-ќара т‰сті мониторлар ‰шін) 25 н/е 43 жол х 80 баѓан, бірнеше видеопараќ
|
11
|
Графика 640х480, 30 н/е 60 жол х 80 баѓан (аќ-ќара т‰сті режим)
|
12
|
Графика 640х480, 30 н/е 60 жол х 80 баѓан (16 т‰с)
|
13
|
Графика 320х200, 25 жол х 40 баѓан, 256 т‰с
|
Жол жєне баѓан санын орнату
Тањдалѓан текстік режимде керекті жол жєне баѓан санын орнату ‰шін WIDTH операторы ќолданылады. Оныњ екі параметрі бар: баѓан саны (40 н/е 80) жєне жол саны (25, 30, 43, 50 н/е 60). Мысалы:
SCREEN 0
WIDTH 80, 43
3. Экранды тазалау
CLS –экранды тазалау операторы. Жазылу т‰рлері:
CLS- Нєтижені кµру режимінде не текстік не графикалыќ облысты тазалайды. Егер графикалыќ облысты кµру орнатылѓан болса, онда тек графикалыќ облысты тазалайды. Ќарсы жаѓдайда текстік облысты немесе б‰ткіл экранды тазалайды.
CLS 0 - Экранды текст не графика болса да толыќ тазалайды.
CLS 1- Графикалыќ облысты тазалайды немесе графикалыќ облысты кµру
орнатылмаѓан болса экранды толыќ тазалайды.
CLS 2- Текстік облысты тазалайды.
4. Locate операторы
LOCATE [x], [y]- курсорды т±рѓан орнынан экранныњ (х,y) позициясына жылжыту операторы (x-жол нµмірі, 0<=x<=25, y- баѓан нµмірі 0<=y<=80
Мысалы
LOCATE 15.40- курсорды 15-жол мен 40-баѓанныњ ќиылысынан жылжыту
LOCATE 2- курсорды т±рѓан орнынан 2- жолѓа тµмен жылжыту (баѓан
µзгермейді)
LOCATE LINE –2 курсорды т±рѓан орнынан 2- жолѓа жоѓары жылжыту
(баѓан µзгермейді)
Оператор экранныњ ќажетті жерлеріне т‰рлі тексттерді, символдарды шыѓару ‰шін пайдаланады. Мысалы :
LOCATE 20.5
PRINT “кез-келген клавишті бас”
жолдарыныњ орындалу барысында 20-жол мен 5-баѓан ќиылысуынан бастап “кез-келген клавишті бас” сµйлемі кµрінеді.
5. Tab(x), String$ функциялары
TAB(x) функциясы. Кейде тексті жолдыњ х-позициясынан бастап экранѓа шыѓаруѓа тура келеді. (0<=x<=79). Ол ‰шін PRINT операторында TAB (x) функциясын пайдалану керек. Мысалы:
PRINT TAB(20): “ Бейсик тілі “
операторы “Бейсик тілі“ сµзін курсор басында орналасќан жолдыњ 20-позициясынан бастап кµрсетеді.
STRING$ функциясы. Кейде текстік режимде сызыќшалардан т±ратын кµлденењ т‰зу кесінділерін сызуѓа тура келеді. Б±л ‰шін PRINT ”________” операторын не параметрі STRING$ функциясы болатын PRINT операторын пайдалану м‰мкін. Соњѓысыныњ жазылу ‰лгісі:
PRINT STRING$(N,X$)
Ол Х$ тексініњ бірінші символын N рет ќайталайтын жолды тудырады. (string-жол, X$ орнына символдыњ т±раќтыныњ жазылуы да м‰мкін. Мысалы,
‘САЛИМА
CLS
PRINT TAB(15) : “¤з атыњды ендір”;
INPUT A$
PRINT TAB (15): STRING$(24,”-“)
PRINT TAB (15): “Сєлем,”;A$; ”!”
run
¤з атыњды ендір-? Салима
___________________________
Сєлем, Салима!
20-шы жолдаѓы CLS командасы программа іскет ќосылѓан кезде алдымен экранды тазалап алу ‰шін ќажет. 30-жолѓа енгізілген сµйлем INPUT операторына ендірілетін с±ќбаттыќ с±раќты осыныњ алдында жазылатын PRINT операторына да ендіруге болатынын кµрсету. Осы жолдаѓы PRINT операторыныњ соњына н‰ктелі ‰тір (;) тањбасы ќоюлы. Ол келесі жолдаѓы PRINT не INPUT операторыныњ экранѓа шыѓаратын текстін алѓашќы шыѓарылѓан текске бір жолѓа жалѓастырып шыѓаруды ќамтамасыз етеді.
9>9>
Достарыңызбен бөлісу: |