Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Программаларды оптимизациялау




Кесте

Бланк

Меню

Хабарлама

5. Мәтін

Хабарлама – диалогтық ортаның ең қарапайым типі. Ол экранға қысқаша хабарлама шығарылады және қандай да бір жағдайға дейін көрсетіліп тұрады. Мысалы, «Файл атын енгізіңіз».

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

Сызықтық меню вертикаль және горизонталь болып бөлінеді. Жазықтық менюлердің сызықтық менюлерден айырмашылығы – меню позициялары экран жазықтығының кез келген орнында орналаса алуы. Мысалға екі өлшемді меню – таңдау кестелерін жатқызуға болады.

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

Кестелер де ақпаратты енгізу және түзету үшін қолданылады. Айырмашылығы – кестеде құрылымды ақпарат сақталады, оның мәндері элементтерден тұрады, ал әртүрлі жолдарда орналасқан осы элементтердің бір типке жататындары бағандар құрады. Мысалы, «сессия нәтижелері» кестесі.

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

Ең маңызды мәселе – ЭЕМ-де орындалу жағынан программаның дұрыс жазылуы. Айнымалыларды бір әріппен атауға немесе NEXT цикл операторын цикл айнымалынсыз жазуға болмайтынын бірден атап өткен жөн.

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


Пуск->Программалар-> Q Basic-> Q basic.exe

Программаның орындалу процессі екі бөлімнен тұрады:

1. Q Basic мәтіндік редакторының көмегімен машина жадысына мәтінді енгізу

2. программа орындалу үшін Q Basic интерпретаторын қосу.

Интерпретатор қосылған соң, компьютер экраны келесідей болады: Бұл экран үш бөліктен тұрады: жоғарғы бөліктегі меню жолы, ортадағы терезе аймағы және төмендегі статус жолы.

 

Q basic.exe файлын іске қосқаннан кейін экранда басты менюдің жоғарғы жағында, редактрлеу терезесі және төменгі жағында подсказка, функционалдық пернетақтамен орындалатын әрекеттер (1.1 сурет).

 
 
File Edit View Search Run Debug Options

 


<Shift+F1=Help> <F6=Window> <F2=Subs> <F5=Run> <F8=Step>

 


1.1 сурет. QBasic экранының жүктелгеннен кейінгі түрі

 

Вход в главное меню QBasic-тің басты менюіне кіру Alt+F (File менюін ашу) немесе Alt+R (Run менюін ашу), Esc батырмасы редакторлеуге оралу.

 

File (файл) – файлмен және жүйеден шығу әрекеті;

Edit (редактировать) – уақытша буфермен және бүлінген мәтінді қайтадан қалпына келтіру (Cut қию, Copy көшіру, қою, тазалау);

View (түр) - Бағыныңқы программаларды қарау

Search (іздеу) - функцияны немесе қатенің орнын, процедураны, мәтінді іздеу;

Run (машина жұмысы) - компиляция және программаның орындалуы;

Debug (отладка) - отладка программы;

Options (варианты)- Қосымша мүмкіндіктер;

FILE менюінің опциясы

New Open … Save Save As … Print … Exit  

 

 


New. Жаңадан редактрлеу терезесін ашу және NAME.BAS аттарымен байланыстыру.

Open... диалогтық терезені ашу, керек файлдың атын жазуды енгізу.

 

SAVE. Жаңа файлдың атын сұрау ортасы осы тереземен NAME.BAS аттарымен байланысты болған жағдайда ағымдағы редактрлеу терезесіндегі мазмұнын дискілік файлға жазу.

SAVE АS. Ағымдағы редактрлеу терезесінің мазмұнын дискілік файлға басқа атпен жазатын жағдайда сақтау.

 

 

PRINT. Ағымдағы редактрлеу терезесінің мазмұнын баспаға жіберу.

EXIT. QBASIC жұмысын аяқтау.

 

RUN менюінің опциясы

 
 
Start Shift+F5 Restart Continue F5  


RUN Программаны орындау.

REM программаның басы.

END прграмманың соңы.

 

Мысал: Q BASIC- те программа құруды қарастырайық. Екі санның қосындысының программасын жазу.

REM екі санның қосындысы

CLS

INPUT “ Бірінші санды енгізу:”;Х

INPUT “Екінші санды енгізу:”;Y

Z= X+Y

PRINT “Қосындысы тең:”;Z

END

Программаны орындау үшін менюден Запуск (RUN) Þ Старт немесе Shift F5 пернесін басу.


Алгоритм құрылымы:

Сызықтық алгоритм

блок-схема QBasic тілінде программаны жазу
 
 

 

 


REM INPUT ……… ……… ……… PRINT END

Тапсырма. Дұрыс үшбұрыштың ауданын есептейтін программа жазу және блок-схема құру қажет. Берліген шеңбердің радиусы мына формула бойынша есептеледі. R=abc/4S

Шешімі:

R=abc/4S ауданның мәнін шығару

S=abc/4R

блок-схема

 

 


 
 


QBasic тілінде программаны жазу

 

REM

INPUT «1 мәнді енгізу»; a

INPUT «2 мәнді енгізу»; b

INPUT «3 мәнді енгізу»; c

R=4.5

PRINT «үшбұрыштың ауданы,»; S

END


Тармақталған алгоритм

 

блок-схема QBasic программасында жазылу түрі
 
 
басы

 

 


шарт
Жоқ (жалған өтірік) ия (ақиқат)

                   
     
 
 
Серия 2
 
Серия 1
 
   
енгізу

 

 


соңы

REM INPUT шартты оператор немесе таңдау операторы PRINT END

 


Алгоритмдерді көрсету құралдарында тармақталу командасы бар, оның көмегімен алгоритмнің қандай да бір тармағын орындау, осы жолды жүзеге асыру таңдалады. Тармақталуды жүзеге асыру формасы:

 

Блок-схема Алгоритм тілі QBasic
Тармақталу командасы: а) толық пішіні: егер шарт онда серия 1 әйтпесе серия 2 болды Шартты көшу операторы: IF шарт THEN серия1 ELSE серия 2 IF шарт THEN серия 1 ELSE серия 2 END IF
б) қысқартылған пішіні: егер шарт онда серия болды Қысқартылған пішінде ELSE қызмет етуші сөзі және тиісті командалар сериясы жоқ. Сөзсіз көшу операторы. GOTO N N нөмірлі (таңбалы) жолға көшу. Таңба ретінде сан немесе қос нүктелі мәтін қолданылады.

 

Көрсетілген конструкцияларда орындау жолын көрсету шартты орындауға байланысты болады. Егер шарт орындалса, онда орындаушы 1 серияны орындайды, кері жағдайда 2 серияны орындайды. Тармақталу командасының қысқартылған формасын қолданған жағдайда командалар сериясы тек шарт орындалғанда ғана орындалады.

Шарттарды жазу кезінде қолданылатын қатынас опреациялардың белгілерін көрсетейік

 

Қатынас белгісі QBASIC-те қатынас белгісінің жазылуы Қатынас операциясының аты
= = тең
<>, >< тең емес
> > көп
>= көп немесе тең
< < аз
<= аз немесе тең

 


Тармақталған алгоритмі бар есепті шығару мысалы:

Есеп: Пернетақтадан Х санын енгізіп, А нәтижесін Х-тің енгізілген мәніне қарай түрлі формулалар бойынша есептеп шығаратын программа жазу.

1.

Программаны жазу үшін бірінші есепті шығарудың блок-схемасын құрастырайық:

 

басы

 
 


енгізу Х

 
 

 


Х < -1

X<5

A= X+ Sin X

A=1

       
   


 
 

 


шығару А

 
 


соңы

 

 

QBASIC-те программа кодын жазайық:

 

REM вычисление по формуле

CLS

INPUT “X=”;X

IF X <-1 THEN

A=X+SIN (X)

ELSE

IF X<5 THEN

A=3*SQR(X+1)

ELSE A=1

END IF

END IF

PRINT “A=”;A

END

Программаны орындау үшін RUN=>Start менюін таңдау немесе Shift+F5 пернелер комбинациясын қолдану керек.

 

Бұл конструкция келесідей орындалады. Алдымен 1 шарт тексеріледі. Егер ол орындалса, онда 1 серия орындалады, содан кейін басқару END IF сөзінен кейін жазылған инструкцияларға беріледі. Егер 1 шарт орындалмаса, онда 2 шарт тексеріледі, ол орындалған жағдайда 2 серия орындалады. Егер ол да орындалмаса, онда 3 шарт тексеріледі және т.с.с. Егер осы шарттардың ешқайсысы орындалмаса, онда ELSE сөзінен кейін орналасқан серия орындалады. ELSE сөзі болмауы да мүмкін. Бұл жағдайда егер шарттарды тексеру «жоқ» нәтижесін берсе, онда сериялардың ешқайсысы да орындалмайды.

Барлық жағдайда да командалардың сәйкес сериясы (операторлар топтары) орындалған соң, басқару END IF сөзінен кейін жазылған инструкцияларға беріледі

 

QBASIC тіліндегі логикалық операцияларды енгізейік:

Алгоритмдік тілдегі жазба QBASIC тіліндегі жазба
Және AND
Немесе OR
емес NOT

Тек екі қарапайым шарт орындалып жатқан жағдайда AND (және) логикалық операциясы бар күрделі шарт нағыз ақиқат болып саналады. Егер қарапайым шарттардың ең болмаса біреуі орындалып жатса, OR (немесе) логикалық операциясы бар күрделі шарт ақиқат болып саналады. NOT А = 0 логикалық операциясы А = 0 шартына тең.

 

REM

CLS

INPUT “X=”;X

IF X <-1 THEN A=X+SIN (X)

IF -1<=X AND X<5 THEN A=3*SQR(X+1)

IF X>=5 THEN A=1

PRINT “A=”;A

END

 

Өздігінен орындауға арналған тапсырма:

ТАҢДАУ КОМАНДАСЫ

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


Таңдауды жүзеге асыру формалары келесі кестеде келтірілген.

Блок-схема Алгоритм тілі QBasic
Таңдау командасы: а) толық пішін таңдау егер шарт 1: серия 1 егер шарт 2: серия 2 әйтпесе серия болды Таңдау операторы: SELECT CASE өрнек CASE шарт 1 серия 1 CASE шарт 2 серия 2 CASE ELSE серия N END SELECT Шарт жазылуы мүмкін: 1) үтірден кейін; 2) мәндер ауқымы ретінде ТО сөзі көмегімен; 3) IS сөзі көмегімен.
  б) қысқартылған: таңдау егер шарт 1: серия 1 егер шарт 2: серия 2 болды Қысқартылған пішінде ELSE қызмет етуші сөзі және тиісті командалар сериясы жоқ

 

Орындаушы таңдау командасының барлық шарттарын бірінен соң бірін тексеріп, оның ең бірінші орындалатынын табады. Осындай шартты тауып, орындаушы оның артында тұрған командалар сериясын орындайды, осымен таңдау командасының орындалуы аяқталады. Егер, мысалы, 1 шарт әрі 2 шарт орындалса, онда орындаушы 1 серияны ғана орындайды.

Шарттардың ешқайсысы орындалмаған жағдайда «кері жағдайда» сөзінен кейін жазылған команда орындалады. Қысқартылған формада бұл жағдайда ештеңе орындалмайды.

Тармақталған алгоритмі бар есепті шығару мысалы.

Есеп: Пернетақтадан енгізілген апта күнінің номеріне сәйкес монитор экранына орыс тілінде бұл күннің не жұмыс күні, не демалыс күні екенін шығаратын программа жазу.

QBASIC-те программа кодын жазайық:

REM апта күнін таңдау

CLS

INPUT”День=”;Day

SELECT CASE Day

CASE 1,2,3,4,5

Print “Рабочий день”

CASE 6,7

PRINT “Выходной день”

END SELECT

Программа келесідей орындалады:

Алдымен CLS функциясы экранды тазартады, сосын День=? хабарламасы шығады, осыдан кейін апта күнін енгізу керек. Енгізілген күн Day айнымалысына жазылады.

Барлық шарттардың орындалуын тізбектей тексеріп, SELECT CASE орындалатын шарттарды іздейді. Осындай шартты тауып, орындаушы оның артында тұрған командалар сериясын орындайды, сонымен таңдау командасының орындалуы аяқталады

Қайталану алгоритмі

Блок-схема QBasic тілінде программаны жазу
Айнымалыны енгізу
Циклдың басы
басы

 

REM INPUT Қайталану саны белгілі циклдер және белгісіз циклдер PRINT END

 

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

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

Қайталанулар саны алдын ала берілген және белгісіз циклдер деп бөлінеді

FOR...NEXT операторларының қайталануы:

FOR. NEXT операторларының қайталану ережелері:

o Параметрі бар қайталау командасы циклдік құрылымы бар алгоритмдерді жазуды көрнекті етеді

o Алдымен FOR операторы параметрдің бастапқы, соңғы мәндерін және қадам мәнін орнатады. Одан кейін параметрдің көрсетілген бастапқы мәні үшін цикл денесі орындалады. Сосын NEXT операторы алдымен параметр мәніне қадам шамасын қосып өзгертеді де, циклдің аяқталу шартын тексереді

o Егер параметрдің ағымдағы мәні соңғы мәнінен аспаса, NEXT операторы есептеу процесін FOR операторынан кейін орналасқан жолға ауыстырады, кері жағдайда – NEXT операторынан кейін орналасқан жолға ауыстырады.

o Қайталанулар саны алдын ала белгісіз циклге қарағанда бұл циклде параметр тек қадам шамасына ғана өзгере алады, яғни Х=Х+Х.

Есеп: Әрбір бактерия бір минут ішінде екіге бөлінеді. Уақыттың бастапқы мезетінде бір ғана бактерия бар. Уақыттың сіз көрсеткен мезетінде (7 мин., 15 мин.,) бактериялар санын есептейтін программа жазыңыз.




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 1420; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.119 сек.