272
Ф. Комилиён, М. Муллољонов, Ќ. Тухлиев ТЕХНОЛОГИЯИ ИТТИЛООТЇ Китоби дарсї барои синфи 10-уми муассисањои тањсилоти умумї Вазорати маориф ва илми Љумњурии Тољикистон таcдиќ кардааст ДУШАНБЕ МАОРИФ 2018

ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

Ф. Комилиён, М. Муллољонов, Ќ. Тухлиев

ТЕХНОЛОГИЯИИТТИЛООТЇКитоби дарсї барои синфи 10-уми

муассисањои тањсилоти умумї

Вазорати маориф ва илмиЉумњурии Тољикистон

таcдиќ кардааст

ДУШАНБЕМАОРИФ

2018

Page 2: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

УДК 373.167.1.ББК 32.81Я.2+74.202.4 К-65

К-65. Комилиён Ф., Муллољонов М., Тухлиев Ќ. Технологияи иттилоотї. Китоби дарсї барои синфи 10-ум. Душанбе, Ма-ориф, 2018. – 272 сањ.

Хонандагони азиз!Китоб манбаи донишу маърифат аст, аз он бањравар ша-

вед ва онро тоза нигоњ доред! Кўшиш кунед, ки соли тањсили оянда њам ин китоб њамин гуна зебову ороста дастраси хо-нандагони дигар гардад ва онњо низ аз он истифода баранд.

Љадвали истифодаи китоб

№Ному насаби

хонандаСинф

Соли тањсил

Њолати китоб (бањои китобдор)

Аввали сол

Охири сол

1

2

3

4

5

© «Маориф», 2018ISBN 978-99947-1-518-3 Моликияти давлат

Page 3: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

3

САРСУХАН

Хонандагони гиромї!Дар барномаи нави таълими фанни технологияи

иттилоотї фасли алгоритмсозї ва барномарезї мавќеи муњимро ишѓол менамояд. Мањз шиносої ва истифодаи амалии мафњумњои ин фасл ба шогирдон шароит фароњам меоварад, ки онњо бо тарзи њалли масъалањо тавассути компютер тасаввуроти даќиќ њосил намоянд. Китоби мазкур, ки барои хонандагони синфи 10-уми муассисањои тањсилоти умумї пешкаш гардидааст, тибќи барномаи нави таълимии фан таълиф шудааст ва ќуфлкушои фасли номбурда ба њисоб меравад.

Китоб дорои ду бахш аст. Бахши аввал «Воситањои информатикунонї» ном дошта, аз ду боб иборат аст. Боби якуми он ба омўзиши алгоритм ва мањорати алгоритмсозї ва боби дуввум ба шиносої бо асосњои барномарезї дар забони нисбатан содаи QBasic ва намунаи объектгарои он – Visual Basic бахшида шудааст. Бахши дуюми китоб «Технологияи иттилоотї ва коммуникатсионї» ном дошта, ба омўзиши муќаддимаи яке аз забонњои барномарезии муосир – С++ бахшида шудааст.

Њамин тариќ, дар синфи 10 фарњанги иттилоотии хонандагон дар раванди омўзиши васеи маданияти алго-ритмсозї ва забонњои барномарезї ташаккул дода мешавад.

Устодони гаронќадр! Муаллифон ба њамаи онњое, ки фикру дархостњои холисонаи худро барои бењтар гаштани мазмуну муњтавои китоб ва ислоњи камбудињои дар он содиргашта иброз доштанианд, ќаблан миннатдорї баён менамоянд ва њатман онњоро дар нашрњои минбаъдаи китоб ба њисоб мегиранд.

Page 4: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

4

НОМГЎЙИ МАФЊУМЊОИ АСОСЇ

Мафњумњои тољикї дар мувофиќа бо коршиносони соњаи технологияњои иттилоотиву коммуникатсионї мавриди ис-тифода ќарор дода шудаанд

File ФайлПарванда/

ФайлOpen Открыть Кушодан

New Создать СохтанResent

Document

Предыду-щие доку-

менты

Санадњои пешин

Text Document

Текстовый документ

Санади матнї

Wizards: Agenda

МастерМоњир: Наќшаи

корSpreadsheet

Электрон-ная таблица

Љадвали электронї

Document Converter

Конвертер документов

Табдилга-ри санад

PresentationПрезента-

цияНамоиш

Install new Dictionaries

Установить новые сло-

вари

Насби фарњанг-њои нав

Draw Рисунок Расм Close Закрыть Бастан

Database База данныхПойгоњи додањо

Save Сохранить

Сабт кардан/ Нигоњ

доштанMaster

DocumentСоставной документ

Санади поя Save asСохранить

как

Нигоњ-дорї

њамчунLabels Этикетки Барчасбњо Edit Правка Вироиш

Business Card

Визитная карточка

Корти шиносої

Page preview

Предвари-тельный

просмотр страницы

Пешдиди сафња

Export Експорт Содирсот Print Печать Чоп

Export as PDF

Експорт в PDF

Содирсот њамчун

PDF

Printer settings

Настройки принтера

Танзими чопгар

Send ОтправитьФиристо-

данExit Выход

Берун-шавї

Document as E-mail

Документ как элек-тронное письмо

Санад њам-чун e-mail

Edit Правка Вироиш

Properties Свойства Хосиятњо Undo ОтменитьЛаѓв

(бекор)Digital

SignatureЦифровая подпись

Имзои раќамї

Restore ВернутьБозгар-

донTemplates Шаблоны Ќолабњо Cut Вырезать Буридан

Organize Управление Созмон Copy КопироватьНусха-гирї

Show Показать Нишондињї Paste Вставить Љогузорї

Accept or Eject

Принять или откло-

нить

Пазируфта ё напази-

руфтаSelect All

Выделить все

Баргу-зини

саросарComments

Коммента-рий

Тавзењот Changes Изменения Таѓйирот

Page 5: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

5

Англисї Русї Тољикї Англисї Русї ТољикїMerge

DocumentsОбъединить документы

Яксозии санадњо

Records Запись НавиштаCompare

DocumentСравнить документ

Муќоисаи санад

Protect Records

Защита записей

Њифзи на-виштањо

Find & Replace

Найти и заменить

Ёфтан ва љойгузин

Normal Обычный Маъмулї

Navigator Навигатор РоњнамоPage Break

Preview

Предвари-тельный

просмотр деления на страницы

Пешдиди сафњабан-

дї

Headers & Footers

Верхние и нижние ко-лонтитулы

Сарсафња/ Посафња

Tool barsПанели

инструмен-тов

Лавњаи афзорњо

Fill Заполнить Пур кардан Status barСтрока

состояния

Лавњаи њолатна-

моDelete

ContentsУдалить

содержимоеЊазфи

мўњтавоValue

highlighting

Выделение значения цветом

Дурах-шонсозии

ќиматDelete Cells

Удалить ячейки

Њазфи катакњо

Full screenНа весь экран

Пањнои экран

Sheet Лист Вараќ Zoom Маштаб МиќёсDelete

Manual Break

Удалить разрыв

Њазфи гусастагии

дастї Insert Вставка

Миёнагу-зорї

Links Ссылки ПайвандњоManual break

РазрывГусаста-

гии дастї Plug-In

Подклюяве-мый модуль

Васлша-ванда

Cells Ячейки Катакњо

Image MapСенсорное изображе-

ние

Наќшани-гор

Row Строка Сатр

Object Объект Объект Column Столбец СутунView Вид Намо Sheet Лист Вараќ

Links to External

Data

Ссылка на внешние данные

Пайванд ба додањои

берунаPrint Ranges

Области печати

Њудуди чоп

Special Character

Специ-альные

символы

Аломатњои махсус

Character Символы Аломатњо

Formating mark

Символ форматиро-

вания

Нишонаи форматбан-

дї

Styles and Formating

СтилиСабкњо ва формат-

бандї Hyperlink

Гиперссыл-ка

Абарпай-ванд

Auto Format

Автофор-мат

Худфор-матгирї

Function Функция ФунксияConditional Formating

Условное форматиро-

вание

Формат-бандии шартї

Note Примечание Эзоњ Anchor Привязка Лангар

PictureИзображе-

ниеТасвир Alignment

Выравнива-ние

Ра-дифсозї

Movie & Sound

Видео и звук

Намоиш ва овоз

ArrangeРасполо-

житьМурат-табсозї

Chart Диаграмма Намудор Flip Отразить БозтобFloating Frame

ФреймЧорчўби лагжон

GroupГруппиро-

ватьГурўњбан-

дї Format Формат Формат Graphic

Графиче-ский объект

Графикї

Page 6: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

6

Англисї Русї Тољикї Англисї Русї Тољикї

Default formating

Формати-рование по умолчанию

Формат-бандии

пешфарзControl

Элемент управления

Идораку-нанда

Merge cellsОбъединить

ячейкиЯксозии катакњо

FormСвойства

формыФорма

Tools Сервиc Афзорњо Macros Макросы Макросњо

Spell checkПроверка

орфографииИмлосанљ

Extension Manager

Управление расширени-

ями

Мудири баста

Language Язык ЗабонXML Filter

Settings

Настройка фильтров

XML

Танзими поло-

ишгари XML

DetectiveЗависимо-

стиВобастаков Customize Настройка

Дархостї кардан

Auto Correct

АвтозаменаХудтасњењ-

гарOptions Параметры

Параметр-њо/Инти-

хобњоGoal Seek

Подбор параметра

Њадафљў Data Данные Додањо

Solver Решатель ЊалкунандаDefine Range

Определить диапазон

Таъйини њудуд

Scenarios СценарийНамоиш-

номаSelect Range

Выбрать диапазон

Интихоби њудуд

Protect Document

Защитить документ

Њифзи санад

Sort СортировкаМурат-табсозї

Cell Contents

Содержимое ячейки

Дарунмояи катак

Filter ФильтрПолоиш-

гар

Gallery Галерея Галерея SubtotalsПроме-

жуточные итоги

На-тиљањои мобайнї

Media Player

Медиапрои-гро-ватель

Расонана-воз (Меди-

а-плеер)Window Окно

Равзана/Панљара

Validity ПроверкаСанљиши коршоямї

New Window

Новое окно

Равза-наи нав/

Панљараи нав

Multiple Operations

Совме-щенные

операцииЧандамалї

Close Window

Закрыть окно

Бастани равзана/ Бастани панљара

Consolidate Объединить Якесозї Split РазбитьТаќсим кардан

Outline Структура Тарњ/сохтор FreezeФиксиро-

ватьСобит-

созї

DataPilotСводная таблица

Љадвали љамъбастї

Refresh Range

Обновить диапазон

Навсозии њудуд

Page 7: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

7

Б а х ш и 1

ВОСИТАЊОИ

ИНФОРМАТИКУНОНЇ

БОБИ 1

АСОСЊОИ АЛГОРИТМСОЗЇ

1.1.1. алгОритм

Мафњуми алгоритм. Мо дар њаёти њаррўзаамон корњои зиёдеро ба сомон мерасонем, аммо на њамеша оид ба раванд ва тарзи иљрои онњо ањамият медињем. Дар асл њар як кор мувофиќи пайдарпайии муайяни амалиёти алоњида иљро мегардад. Масалан, барои кушодани дари хона, бояд мо аввал дастаки онро ќапем ва сонї дарро ба самти кушодашавиаш тела дињем. Чї хеле ки аз ин мисол бармеояд, мо дар ин маврид бояд ду амалро иљро кунем: ќапидан ва тела додан. Вале, шояд пеш аз кушодани дари хона, ба сари мо њељ гоњ фикр њам наояд, ки мо бояд њатман аз рўйи ду амали зикршуда рафтор намоем. Кушодани дари хона кори доимї ва њамарўза буда, мо онро њар дафъа ба таври худкор (автоматї) иљро менамоем.

Албатта, кушодани дар кори нисбатан сода ба њисоб меравад, чунки барои иљрои он миќдори ками амалиёт истифода бурда мешавад. Зиндагї баъзан дар назди мо иљрои вазифањои мураккабро низ мегузорад. Барои бехато иљро намудани чунин вазифањо ва корњое, ки даќиќро талаб менамоянд, мо бояд аз рўйи пайдарпайии нишондодњои аниќ амал намоем.

Њамин тариќ, мо дар њар як ќадам бо масъалањои гуногун рўбарў шуда кўшиш менамоем, ки онњоро њал кунем. Њар масъала роњи њалли худро дорад. Дар чунин мавридњо

Page 8: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

8

зарур аст, ки мо пешакї пайдарпайии амалиётеро муайян созем, ки онњо ба њалли ин масъалањо оварда мерасонанд. Ана њамин гуна тарзи иљрои пайдарпайии амалиётро, ки ба њалли ин ё он масъала оварда мерасонад, алгоритм низ мегўянд. Дар воќеъ, боиси ифтихори мост, ки калимаи «алгоритм» аз шакли навишти лотинии номи риёзидони машњури Осиёи Марказї (асри IX) Муњаммад ал–хоразмї (Algorithmi) гирифта шудааст. Алхоразмї аллакай дар њамон замон ќоидањои иљрои амалњои арифметикиро дар системаи њисоби дањї пешнињод намуда буд.

Дар математика ва информатика мафњуми алгоритм яке аз мафњумњои бунёдї ба шумор меравад. Њатто ќисми махсуси математика – назарияи алгоритмњо ба омўзиш ва тадќиќи алгоритмњо бахшида шудааст. Мафњуми алгоритм хусусан њангоми њалли масъалањо бо ёрии компютер васеъ татбиќ карда мешавад. Вале ќайд бояд кард, ки ба мафњуми алгоритм, ба мисли баъзе мафњумњои бунёдии дигар (маса-лан, мафњуми маљмўъ), таърифи ќатъї додан мумкин нест. Онро танњо маънидод кардан мумкин аст:

Алгоритм маљмўи амрњои барои иљрокунанда фањмо ва ни-шондоди аниќи пайдарпайии амалиётест, ки барои ба даст овардани маќсад ё њал намудани масъалаи гузошташуда

бояд онњо пай дар пай иљро карда шаванд.

Иљрочии алгоритм. Њар як алгоритм мувофиќи дараљаи душвории худ ба ягон иљрочии мушаххас пешнињод карда мешавад. Масалан, њалли муодилаи квадратиро аз њар гуна хонандаи синфи якум интизор шудан мумкин нест. Хушбахтона, дар љањони муосир, инсон дар ињотаи маљмўи гуногуни васоити техникї ќарор дорад. Оинаи нилгун, дастгоњи аксбардорї, наќлиёт, мошини љомашўї, радио, магнитофон, компютер, робот ва ѓайра мисолњои ин гуна васоитанд. Одамон њалли бисёр масъалањоро ба зиммаи ин васоит гузошта, мењнати фикрї ва љисмонии худро

Page 9: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

9

осон гардонидаанд. Азбаски њар як таљњизот хусусият ва ќоидањои истифодаи худро дорад, пас њар кадоми онњоро иљрочї номидан мумкин аст. Иљрочї на танњо васоити техникї, балки шахси алоњида ё гурўњи одамон, њайвон ё паранда низ шуда метавонад. Масалан, парандаи ромшуда, ки амрњои соњибашро бехато иљро мекунад ё духтарчае, ки бо хоњиши модараш зарфњоро мешўяд, иљрочї мебошанд.

Њамин тариќ, њар як иљрочї барои анљом додани коре бояд пайдарпайии охирноки амалиётро иљро намояд. Агар иљрочии алгоритм воситаи техникї бошад, он гоњ пайдарпайии нишондодњои алгоритм бояд намуди ќатъї дошта бошад, яъне њар як амалиёти он бояд танњо бо як тарз иљро карда шавад. Компютер, њамчун воситаи техникї, мањз дар заминаи њамин ќатъияти нишондодњо ягон кореро ба анљом мерасонад. Дар мавриди иљрочии алгоритм будани компютер ба љойи мафњуми нишондод мафњуми фармон ё амр истифода мешавад.

Системаи фармонњои иљрочї. Иљрочиёни алгоритмњо ба мисли худи алгоритмњо гуногунанд. Њар кадоми онњо вобаста ба имконот ва синфи масъалањои кориашон маљмўи амалиёти махсуси худро доранд. Масалан, амале, ки ба шудгори замин вобаста аст, ба маљмўи амалиёти трактор дохил шуда, ба маљмўи амалиёти телевизор ягон дахле надорад. Маљмўи амалиётеро, ки иљрочї амалї гардонида метавонад, системаи фармонњои иљрочї мегўянд.

Тарзњои тасвири алгоритм. Барои он ки алгоритмро иљрочї амалї гардонида тавонад, бояд он бо ягон тарз тасвир карда шавад. Шаклњои нисбатан бештар пањнгардидаи алгоритмњо матнї, формулавї-матнї, љадвалї, блок-наќ-шавї ва барномавї мебошанд.

Шакли матнии алгоритм имконият медињад, ки алгоритм ба воситаи калима ва љумлањои забони муќаррарии гуфтугўї навишта шавад. Дар шакли формулавї – матнии

Page 10: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

10

алгоритм марњалањои он бо ёрии формулањои математикї тасвир карда шуда, барои шарњу эзоњашон аз матнњо истифода мебаранд. Шакли љадвалии алгоритм имконият медињад, ки марњалањои он дар сатру сутунњои љадвал тасвир карда шаванд.

Блок – наќша тасвири графикии сохтори мантиќии алгоритм мебошад, ки дар он њар як марњалаи алгоритм ба воситаи ягон шакли геометрии мувофиќ (блок) ифода карда мешавад. Барои нишон додани самти идоракунї аз тирча истифода мебаранд. Ба сифати блокњо шаклњои зерин истифода мешаванд:

Шаклњо Амалиёт

Тасвири ибтидо ва интињои алгоритм

Блоки арифметикї: њисобкунї ё тасвири функсия

Блоки мантиќї: санљиши шарт

Дохилкунии додањои ибтидої: тасвири аргу-ментњо

Хориљкунї дар экран

Чопи натиља дар коѓаз

Мурољиаткунї ба зербарнома

Шакли барномавии алгоритм - ин табдили алгоритм ба дастури махсусест (барнома), ки компютер мањз дар асоси он кореро ба анљом мерасонад. Барои эљоди барномањо аз забонњои барномарезї (алгоритмї) истифода мебаранд. Аслан барномаи компютерї - ин алгоритм дар забони компютер аст.

Њалли масъалаи дилхоњ иттилооти пешакї додашударо талаб менамояд. Аз ин лињоз гуфтан мумкин аст, ки алгоритм раванди пай дар пай ба натиљаи зарурї табдил

Page 11: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

11

додани иттилооти ибтидої аст. Њамчунин, дар хотир бояд нигоњ дошт, ки иљрочї алгоритмро расман иљро мекунад ва њамеша бо миќдори охирноки амалњо сару кор дорад.

Хосиятњои алгоритм. Њар гуна алгоритм дорои хосиятњои зерин мебошад:1 . Д искр ет ї – таќсимкунии алгоритм ба марњалањо

(ќадамњо). Њар як ќадам дар ягон фосилаи охирноки ваќт ба таври дискретї (алоњида-алоњида) амалї мегардад.

2 . Аниќї – аз рўйи тартиби муайян ва мушаххас иљро гаштани ќадамњо.

3 . Детерминантї(муайянї) – фањмо ва ќобили ќабул будани њар як ќадам барои иљрочї. Ин хосият якќиматї ва якхелфањмии алгоритмро таъмин менамояд, яъне алгоритм барои як маљмўи додањо доимо як натиљаро пешкаш мекунад. Дар ќадамњои алгоритм иборањое ба мисли «якчанд даќиќа», «зарби x ба яке аз ададњои a ё b», «ду-се ќошуќ шакар» ва ѓайра бояд дучор наоянд.

4 . Натиљано кї – пас аз иљрои њамаи ќадамњо њатман соњиби натиљаи зарурї шудан. Яъне, раванд бояд пас аз иљрои алгоритм ќатъ гардад ва натиљањои зарурї (мо-байнї ё нињої) дастрас шаванд.

5 . Ом м авї(умумї) – истифодаи алгоритм барои њалли синфи масъалањои навъи якхела. Яъне, алгоритм натанњо барои њалли як масъалаи мушаххас, балки барои њамаи масъалањои тарзи њаллашон ба ин масъала монанд, бояд истифода шавад. Масалан, ба воситаи як алгоритм њалли муодилаи квадратии алгебравии дилхоњи ax2+bx+c=0-ро, ки аз њамдигар танњо бо ќимати коэффитсиентњояшон - a,b,с фарќ мекунанд, њангоми

D=b2-4ac≥0 будан, аз рўйи формулањои a

Dbx22,1±−

= ёфтан мумкин аст.

Дар дигар мавридњо бошад, барои ёфтани њалли

Page 12: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

12

як масъала якчанд алгоритмњои гуногунро пешкаш кардан мумкин аст. Масалан, њалли муодилаи квадратии

ислоњшудаи х2

+рх+q=0-ро бо ёрии формулаи

ё аз рўйи теоремаи Виет:

муайян кардан мумкин аст.

L Саволњо:

1. Алгоритм чист?2. Калимаи алгоритм бо номи кадом риёзидон вобастагї

дорад?3. Кї (чї) иљрочии алгоритм шуда метавонад?4. Системаи фармонњои иљрочї гуфта чиро мефањмед?5. Кадом тарзњои тасвиркунии алгоритмњоро медонед?6. Блок-наќша чист? Дар он кадом шаклњо истифода

мешаванд?7. Кадом хосиятњои алгоритмро медонед?8. Хосияти дискретии алгоритм чї маъно дорад? Хосияти

детерминантиаш чї?

6 Супориш:

1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Бо мисолњои мушаххас мафњуми иљрочии алгоритмро

шарњ дињед.3. Ишорањои шаклњои блок-наќшаро дар дафтаратон кашед.4. Хосиятњои алгоритмро маънидод кунед.

1.1.2. АЛГОРИТМСОЗЇ. ЗАБОНИ АЛГОРИТМЇ

Таъминоти барномавии компютер. Тавре ќайд кардем, компютер бе истифодаи барнома (программа) ягон амалро иљро карда наметавонад. Барномањо дар хотираи компютер

qppx −±−=42

2

2,1

=⋅−=+qxxpxx

21

21 ,

Page 13: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

13

љойгир карда мешаванд. Як барномаро бо барномаи дигар иваз намуда, компютерро барои њалли масъалаи тамоман дигар истифода бурдан мумкин аст. Мањз аз њамин лињоз мегўянд, ки компютер дар њалли масъалањои соњањои мухталифи фаъолияти инсон кор фармуда мешавад.

Компютер барномаро ба тариќи зайл (мувофиќи алгоритмаш) иљро менамояд: аввал протсессор барномаро аз хотираи беруна (масалан, винчестер) ба хотираи фаврї љеѓ мезанад. Пас аз он вай фармонњои барномаро пай дар пай мехонад ва бо додањое, ки барои иљрои ин фармонњо лозиманд, амалњои заруриро иљро менамояд. Баъд протсессор натиљаи њосилшударо аз хотираи фаврї ба хотираи беруна мефиристад.

Маљмўи барномањои дар хотираи компютер мањфуз-буда таъминоти барномавии компютерро ташкил медињад. Доираи татбиќи компютер њам мањз аз рўйи њамин таъминот муайян карда мешавад. Таъминоти барномавии компютерњои муосир њазорњо барнома, аз ќабили бозињои компютерї, барномањои коркарди матнњо, љадвалњои электронї, хазинаи маълумотњо, барномањои хидматї ва ѓайраро дар бар мегирад.

Барои ба воситаи компютер иљро намудани алгоритмњо забонњои махсуси алгоритмї эљод шудаанд. Чунин забонњо хеле зиёданд. Онњоро одатан забонњои барномарезї мегўянд. Яке аз чунин забонњо Фортран (Fortran: Formula Translator – тарљумони формулањо) ном дошт, ки дар охи-ри солњои 50-уми асри ХХ пайдо шудааст. Забони дигаре, ки дар пешрафти илми информатика ва пайдоиши дигар за-бонњои барномарезї таъсири калон расонидааст, Алгол-60 (Algol: Algorithmic Language – забони алгоритмї) ном дошт, ки вай солњои 60-уми асри гузашта эљод шудааст. Забонњои дигари барномарезї Ассемблер, Ада, Бейсик, Кобол, PL/1, Паскал, Си, Visual Basic, JAVA, С++ ва ѓайра мебошанд. Ќисме аз ин забонњо имрўз њам мавриди истифода ќарор доранд.

Мо њоло бо забони алгоритмии махсусе шинос хоњем

Page 14: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

14

шуд, ки он дар омўзиши забонњои алгоритмии асосї пойгоњ ба њисоб меравад. Ин забон њамчун миёнарави равандњои алгоритмсозї ва барномарезї воситаи хеле мувофиќ ва боэътимод аст.

Забони алгоритмї системаи ишоратњо ва ќоидањоест, ки барои яксонсозии тасвири алгоритмњо хизмат мерасонад. Ин забон аз љињати таркиб сода ва оммафањм буда, бо забони гуфтугўї хеле наздик аст. Дар забони алгоритмї рамзњои маъмул, ададњо, аломати амалњо, ишорати функсияњо ва бузургињо бе ягон таѓйир истифода бурда мешаванд. Пас аз омўхтани ин забон, омўзиши забонњои асили барномарезї хеле осон мегардад. Вале, азбаски ин забон забони шартї аст, бинобар он барномањои тавассути он сохташударо компютер иљро карда наметавонад. Новобаста ба њамаи ин, набояд фаромўш кард, ки њангоми сохтани алгоритмњо риояи ќоидањои забони алгоритмї шарт ва њатмист.

Њамин тариќ, тавре ки њар як забон дорои синтаксис ва грамматикаи худ аст, забони алгоритмї њам дорои як ќатор ќоидањои корї мебошад. Асоси фарњанги забони алгоритмиро фармонњои сода ташкил медињанд. Фармонњои таркибї бо ёрии фармонњои сода сохта мешаванд. Онњо одатан дар ду намуд: пурра ё нопурра (мухтасар) дода мешаванд. Ба ѓайр аз фармонњо дар забони алгоритмї калимањои ёрирасон низ истифода мешаванд. Ин калимањо мухтасаранд, масалан:

а л г ( а л г о р и т м ) - н и ш о н а и н о м и а л г о р и т ми б т ( и б т и д о ) - и б т и д о и а л г о р и т ми н т ( и н т и њ о ) - и н т и њ о и а л г о р и т м .

Њар як алгоритм бояд ном дошта бошад. Номгузорї ихтиёрист, лекин одатан онро мувофиќи мазмуну мундари-љаи алгоритм мегузоранд. Фармонњои алгоритм дар сатрњо пай дар пай навишта мешаванд. Дар як сатр як ё якчанд фармонро навиштан мумкин аст. Барои аз њамдигар људо кардани фармонњое, ки дар як сатр навишта шудаанд, аломати нуќта-вергул (;) истифода бурда мешавад.

Page 15: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

15

Пайдарпайии фармонњои алгоритмро, ки яке аз паси дигар иљро мегарданд, с ер ия мегўянд. Серия, дар навбати худ, метавонад аз як ё якчанд фармон иборат бошад.

Њамин тариќ, намуди умумии алгоритм дар забони ал-горитмї чунин аст:

а л г н о м и а л г о р и т ми б т ф а р м о н њ о и а л г о р и т м ( с е р и я )и н т

Мисол: Бигузор амалњои чен кардан, ба ду њиссаи баробар таќсим кардан, ба воситаи нуќтањо ишора кардан ва кашидани порча ба системаи фармонњои иљрочї дохил бошанд. Талаб карда мешавад, ки алгоритми гузаронидани хати миёнаи секунља тартиб дода шавад.

а л г Х а т и м и ё н а и с е к у н љ аи б т я к е а з т а р а ф њ о и с е к у н љ а р о ч е н к у н е д м и ё н а љ о й и о н р о б о н у ќ т а и A и ш о р а

к у н е д т а р а ф и д и г а р и с е к у н љ а р о ч е н к у н е д м и ё н а љ о й и о н р о б о н у ќ т а и В и ш о р а

к у н е д п о р ч а и А В - р о г у з а р о н е ди н т

L Саволњо:1. Чї тавр компютер додањоро кор карда мебарояд?2. Таъминоти барномавии компютер чист?3. Забони алгоритмї гуфта кадом забонро мегўянд?4. Оё ба воситаи забони алгоритмї дар компютер ягон

масъаларо њал намудан мумкин аст?5. Забони алгоритмї аз забони барномарезї чї фарќ

дорад? 6. Вазифаи калимањои ёрирасон аз чї иборат аст?

Page 16: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

16

6 Супориш:

1. Алгоритми истифодаи телефон ва ба кор омодасозии телевизорро тартиб дињед.

2. Тартиби пухтани оши паловро дар намуди алгоритм пешкаш намоед.

1.1.3. ТАРЗИ ИЉРОИ ДАСТУРЊОИ АЛГОРИТМ. ФАРМОНЊОИ ГРАФИКЇ

Барои ба њалли дурусти масъала ноил шудан, зарур аст, ки ба тарзи навишти пайдарпайии дастурњои алгоритми он диќќати љиддї дињем. Албатта, баъзан масъалањое низ дучор меоянд, ки новобаста аз тартиби иљрои амалњои алгоритмашон, њамеша натиљаи зарурї њосил мешавад. Масалан, барои 10 дона ќаламро яктогї дар ќуттї љой-гир намудан, љойгиркуниро аз ќалами дилхоњ сар кардан мумкин аст. Яъне, мо метавонем дар ќадами аввал аз байни ќаламњо ќалами ихтиёриро гирифта ба ќуттї гузорем ва баъд, дар ќадамњои оянда, ин корро давом дињем.

Лекин њалли аксарият масъалањо талаб мекунад, ки пайдарпайии амалњо аз рўйи тартиби муайян иљро карда шавад. Дар њолати акс, натиљаи дурустро ба даст овардан ѓайри имкон аст.

Мисоли 1: Алгоритми ќулф кардани дари хона.

а л г Ќ у л ф к у н и и д а р и б т

д а р р о п ў ш е д к а л и д р о б а ќ у л ф љ о й г и р к у н е д к а л и д р о б а с а м т и ќ у л ф к у н ї т о б д и њ е д

и н т

Чи хеле ки дида мешавад, дар алгоритми мазкур се амал пай дар пай дода шудаанд. Агар иљрочї ин амалњоро аз рўйи тартиби овардашуда иљро намояд, он гоњ ба натиљаи дуруст соњиб мешавад. Дар њолати иваз намудани тартиби

Page 17: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

17

иљрои онњо дар ќулф нахоњад шуд. Масалан, агар љойи амалњои якум ва сеюмро иваз намоем, он гоњ мо дарро ќулф карда наметавонем.

Хулоса, алгоритм аз пайдарпайии дастурњо иборат аст. Њар як дастур метавонад як ё якчанд амалиётро дар бар гирад. Иљрочї бояд дастурњоро мувофиќи тартиби додашудаашон иљро на-мояд. Ў бояд танњо дар мавриде ба иљрои дастури навбатї гу-зарад, ки агар њамаи амалњои дар дастури љорї нишондодашу-даро иљро карда бошад.

Объектњои графикї. Дар амалия масъалањое вомехўранд, ки дар натиљаи њалли онњо наќшаю график, диаграммаю расм ё дигар намуд объектњои (иттилоотї) графикї њосил мешаванд. Дар ин маврид њам зарур аст, ки барои сохтани объект, тартиби сохтани љузъњои алоњидаи он (нуќта, порча, давра, росткунља ва ѓайра) нишон дода шавад.

Алгоритми сохтани объектњои графикиро иљрочї бо ёрии фармонњои махсус амалї месозад. Барои тарзи иљрои ин фармонњоро дарк намудан, иљрочии дар њамворї њара-каткунанда ва дар рўйи он расмкашандаро тасаввур бояд кард. Чун ќоида иљрочї бояд дар нуќтаи координатааш (0;0)-и њамворї ќарор гирад ва ба равиши тири ОУ нигоњ кунад.

Фармонњои хаткашї: ба пеш (a), ба ќафо (a). Бо ёрии фармони ба пеш (a) иљрочї аз нуќтаи ибтидої бо равиши пеш аз хаткашї доштаи худ порчаи дарозиаш a воњидро мекашад. Баъди иљрои фармон иљрочї дар нуќтаи интињоии порчаи кашидашуда ќарор мегирад, вале равиши он бетаѓйир мемонад. Фармони ба ќафо (a) аз фармони ба пеш (a) бо он фарќ мекунад, ки порча ба равиши муќобили равиши иљрочидошта кашида мешавад. Дар ин њолат низ равиши иљрочї таѓйир намеёбад, аммо худи ў ба нуќтаи интињоии порчаи кашидашуда мегузарад.

Page 18: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

18

Фармонњои гардиш: ба рост (b), ба чап (b). Иљрочї бо ёрии фармонњои ба рост (b) ва ба чап (b) мувофиќан ба b дараља ба рост ва ба чап тоб мехўрад.

Мисол и 2: Алгоритми кашидани расми квадрат. а л г К в а д р а т

и б т б а п е ш ( 4 ) б а р о с т ( 9 0 ) б а п е ш ( 4 ) б а р о с т ( 9 0 ) б а п е ш ( 4 ) б а р о с т ( 9 0 ) б а п е ш ( 4 )

и н т

Иљрочї аввал дар ибтидои координата ќарор дорад ва равишаш бо равиши тири OY мувофиќ аст. Ба воситаи фармони ба пеш (4) иљрочї порчаи дарозиаш ба 4 воњид баробарро мекашад. Фармони ба рост (90) равиши расмкашии иљрочиро ба 900 ба тарафи рост тоб медињад. Ин амалњо дар ќадамњои (3-7)-уми алгоритм такрор меёбанд. Дар натиља расми дар боло овардашуда њосил мешавад.

Фармонњои расм каш, расм накаш. Њангоми сохтани объектњои графикї баъзан лозим меояд, ки дар њамворї бе амали расмкашї аз як мавќеъ ба мавќеи дигар љой иваз намоем. Ин амал бо ёрии фармони расм накаш иљро карда мешавад. Фармони расм накаш-ро дар алоњидагї (бе расмкашї) истифода мебаранд. Барои ќатъ гардонидани таъсири фармони расм накаш фармони расм каш дохил карда шудааст. Пас аз иљрои фармони расм каш иљрочї бо ёрии фармонњои ба пеш, ба ќафо ва ѓайра сохтани љузъњои объекти графикиро идома медињад.

L Саволњо:

1. Иљрочї чї тавр фармонњои алгоритмро иљро мекунад?2. Барои чї дар мавриди љойивазкунии фармонњои якум

ва сеюми алгоритми дар мисоли 1 овардашуда дар ќуфл

4

4

44

0

х

у

Page 19: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

19

намешавад? 3. Кадом фармонњои сохтани объектњои графикиро медонед?4. Фармонњои хаткашї кадомњоянд? 5. Фармони ба рост (90) аз фармони ба чап (90) чї фарќ дорад?6. Зарурати дохилкунии фармони расм накаш дар чист?

6 Супориш:1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Дар алгоритми дар мисоли 1 овардашуда (ќуфлкунии дар)

љойи њамаи фармонњояшро иваз кунед ва муайян намоед, ки дар кадом њолатњо ба њалли масъала соњиб шудан мумкин аст.

3. Алгоритми кашидани росткунљаи тарафњояш 15 ва 20 воњидро тартиб дињед.

4. Бе истифодаи фармони расм накаш алгоритми сохтани расми зеринро тартиб дињед, ки он аз болои як хат ду ма-ротиба нагузаштанро таъмин намояд.

1.1.4. СОХТОРЊОИ АЛГОРИТМ

Се шакли асосии сохтории алгоритмњо мављуд аст: хаттї, шоханок ва такроршаванда. То њол мо алгоритмњоеро омўхтем, ки онњо танњо аз пайдарпайии дастурњои сода иборат буданд. Ин гуна алгоритмњоро одатан алгоритмњои хаттї мегўянд. Дар алгоритмњои хаттї дастурњо (фармонњо, амалњо) аз рўйи тартиби додашудаашон иљро мешаванд:

Акнун бо дастурњои таркибии забони алгоритмї шинос мешавем. Дастурњои таркибї ду хел мешаванд: шоханок ва такроршаванда (даврї, сиклї). Дар алгоритм-

Page 20: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

20

њое, ки чунин дастурњо истифода мешаванд, амалњо вобаста аз риоя шудани ягон шарти додашуда иљро мегарданд. Аз ин љо бармеояд, ки муњимтарин хосияти ин дастурњо дар таркибашон мављуд будани ягон шарт аст.

Дастури шоханок. Намуди умумии ин дастур чунин аст:

агар шарт он гоњ серияи 1 вагарна серияи 2итмом

Калимањои ёрирасони агар, он гоњ, вагарна ва итмом, ки дар ин дастур истифода шудаанд, маънои муќаррарии забони гуфтугўиро доранд. Шарти додашуда пас аз калимаи ёрирасони агар меояд. Ин калима ибтидои дастур ва калимаи ёрирасони итмом интињои онро ифода мекунанд. Калимаи итмом-ро дар рости (зери) калимаи агар меоранд ва онњоро бо хати амудї пайваст менамоянд. Дар байни калимањои ёрирасони он гоњ ва вагарна як сатр ё пайдарпайии сатрњо навишта мешаванд, ки онњо аз фармонњои забони алгоритмї (серияи 1) иборатанд. Дар байни калимањои ёрирасони вагарна ва итмом бошад, дигар пайдарпайии фармонњо (се-рияи 2) навишта мешавад.

Акнун тарзи иљрои ин дастурро дида мебароем. Аввал шарт санљида мешавад. Агар он риоя гардад, он гоњ серияи 1 ва дар њолати акс, яъне њангоми риоя нагардидани шарт, серияи 2 иљро карда мешавад. Дар як ваќт иљрои њар ду серияњо ѓайриимкон аст. Блок-наќшаи тарзи иљрои ин дастур чунин аст:

Шарт

Серияи 2Серияи 1

ња не

Page 21: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

21

Мисоли 1: Алгоритми масъалаи «Ба кўчабарої вобаста аз вазъи њаво»-ро дар шакли блок-наќша ва забони алгоритмї тартиб медињем.

алг Тарзи ба кўча баромадан ибт

агар борон бошад он гоњ чатр мегирем

вагарна чатр намегирем итмом

инт

Мисоли 2: Алгоритми масъалаи «Тарзи аз чорроња гузаштан»-ро месозем.

алг Тарзи аз чорроња гузаштан ибт

Шарт

Чатр мегирем Чатр намегирем

Ибтидо

Интињо

нења

Page 22: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

22

агар чароѓаки сабз фурўзон бошад он гоњ аз чорроња мегузарем

вагарна мунтазир мешавем итмом инт

Д а с т у р и шоханок ба ѓайр аз намуди умумї, ки онро намуди пур-раи дастур мегўянд, намуди нопурра (мухтасар) њам дорад. Намуди нопурраи дастури шоханок чунин аст:

а г а р ш а р т о н г о њ с е р и я

и т м о м

Фарќи намуди нопурраи дастури шоханок аз намуди пуррааш дар он аст, ки серия дар ин љо танњо њангоми риоя шудани шарт иљро мегардад. Агар шарт риоя нагардад, он гоњ кори дастури шоханок анљом меёбад ва иљрочї ба иљрои дастурњои навбатии алгоритм шурўъ менамояд.

Чароѓи сабзфурўзон аст?

Аз чорроња мегузарем

Мунтазир мешавем

Ибтидо

Интињо

нења

Шарт

ИнтињоСерия

ња не

Page 23: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

23

Дастури интихоб. Њалли баъзе масъалањо талаб менамояд, ки дар дастури шоханок миќдори шартњои санљидашаванда зиёда аз якто бошад. Агар ин миќдор ба ду баробар бошад, он гоњ як дастури шоханок дар дохили дастури шоханоки дигар (ба сифати серия) љойгир карда мешавад. Вале агар миќдори шартњо аз дуто зиёд бошад, он гоњ ба љойи дастури шоханок истифодаи дастури интихоб мувофиќтар аст. Дастури интихоб низ ба мисли дастури шоханок шаклњои пурра ва нопурра дорад. Шакли нопурраи дастури интихоб чунин аст:

интихоб њангоми шарти 1: серияи 1 њангоми шарти 2: серияи 2 ………………………………….

њангоми шарти N: серияи Nитмом

Ин дастур чунин иљро мегардад. Аввал иљрочї шарти 1-ро месанљад. Њангоми риоя шудани он, вай фармонњои ба серияи 1 тааллуќдоштаро иљро менамояд ва бо њамин раванди кори дастури интихоб ба охир мерасад. Дар њола-ти риоя нашудани шарти 1, иљрочї шарти 2-ро месанљад. Агар ин шарт риоя гардад, он гоњ вай фармонњои ба серияи 2 дахлдоштаро иљро мекунад ва раванди кори дастури интихоб ќатъ меёбад. Бо њамин тарз, иљрочї то пайдо намудани шарти аввалини риояшаванда, њамаи шартњоро пай дар пай месанљад. Баъди дарёфти чунин шарт серияи фармонњои ба он мувофиќро иљро менамояд ва кори дастури интихобро хотима мебахшад. Агар ягон шарти дар дастур нишондодашуда риоя нагардад, он гоњ бе гузаронидани ягон амалиёт раванди кори дастури интихоб ќатъ гардонида мешавад.

Агар њангоми риоя нагардидани ягон шарти дастур, гузаронидани амалиёти дигарро пешбинї кардан зарур

Page 24: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

24

бошад, он гоњ аз намуди пурраи дастури интихоб истифода мебаранд:

интихоб њангоми шарти 1: серияи 1 њангоми шарти 2: серияи 2 ……………………………….

њангоми шарти N: серияи Nвагарна серия

итмом

Мисол: Бо истифода аз шаклњои пурра ва нопурраи дастури интихоб дар заминаи ибораи афсонавии «Ба тарафи рост равї аспатро гум мекунї, ба тарафи чап равї бо марг дучор меої, ба пеш равї рафиќатро меёбї» алгоритм тартиб дињед.

а) Дар шакли пурра:алг Иборае аз афсонаибт интихоб њангоми ба тарафи рост њаракат кардан аспатро гум мекунї њангоми ба тарафи чап њаракат кардан ба марг дучор меої

вагарна рафиќатро меёбї итмоминт

б) Дар шакли нопурра:

алг Иборае аз афсонаибт интихоб њангоми ба тарафи рост њаракат кардан аспатро гум мекунї њангоми ба тарафи чап њаракат кардан ба марг дучор меої

њангоми ба пеш њаракат кардан рафиќатро меёбї

Page 25: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

25

итмоминт

Бо дастурњои такроршаванда баъдтар шинос хоњем шуд.

L Саволњо:

1. Кадом дастурро дастури таркибї мегўянд?2. Чанд шакли дастури шоханокро медонед? Онњо аз

њамдигар чї фарќ доранд?3. Дастури интихобро кадом ваќт истифода мебаранд?4. Шакли пурраи дастури интихоб чї гуна аст?5. Фарќи байни шаклњои пурра ва нопурраи дастури интихоб

дар чист?

6 Супориш:

1. Матнро бодиќќат хонед ва тарзи кори дастурњои шоханок ва интихобро фањмонед.

2. Масъалае пешнињод намоед, ки алгоритми њалли онро ба воситаи дастури шоханок сохтан мумкин бошад.

3. Ягон алгоритме тартиб дињед, ки дар он дастури интихоб истифода шуда бошад. Алгоритми сохтаатонро бо ёрии дастурњои шоханок табдил дињед.

1.1.5. БУЗУРГИЊО: ДОИМИЊО, ТАЃЙИРЁБАНДАЊО

Дар забони алгоритмї ду намуди бузургињоро истифода мебаранд: доимї ва таѓйирёбанда.

Доимї гуфта бузургиеро меноманд, ки ќимати он дар раванди иљрои алгоритм таѓйир намеёбад. Масалан, адади π (пи≈3,14) ва ќимати g - суръати озодафтии љисм (≈9,8 м/c2) бу-зургињои доимианд. Доимињоро дар навбати худ ба доими-њои ададї, матнї (литерї) ва љадвалї таќсим мекунанд. Доимињои ададии забони алгоритмї аз доимињои ададии муќаррарї ягон фарќе надоранд. Масалан, бузургињои 3; -56; 89.234; 333 ва ѓайра доимињои ададианд. Танњо њаминро бояд дар хотир дошт, ки ќисми бутуни адад аз ќисми касрии

Page 26: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

26

он на бо воситаи аломати вергул, балки бо нуќта људо карда мешавад. Агар бузургї ќимати матниро ќабул карда бошад, он гоњ онро бузургии литер ї мегўянд. Ќимати доимињои литерї дар дохили нохунакњо гирифта мешаванд. Масалан, «њал надорад», «муайян нест», «ду», «Душанбе шањри дилоро», «125+47=172» ва њоказо доимињои литерианд. Ќимате, ки дар ягон лањзаи иљрои алгоритм бузургї соњиби он аст, ќи-мати љо р ии б узур гї ном дорад.

Таѓйирёбанда гуфта бузургиеро меноманд, ки он дар раванди иљрои алгоритм метавонад ќиматњои гуногунро ќабул намояд. Таѓйирёбандањо барои нигоњдорї ва коркарди додањо хизмат мерасонанд. Онњо ба воситаи номашон муайян карда мешаванд. Рамзи аввали номи таѓйирёбанда њатман бояд њарф бошад. Масалан, a, b1, њарорат ва ѓай-ра таѓйирёбандаанд. Ба воситаи ном дар хотираи компютер љойи нигоњдории (суроѓаи) ќимати таѓйирёбанда муайян карда мешавад. Ќимати таѓйирёбанда метавонад бузургињои намудашон гуногун бошад: ададњои бутун ё њаќиќї, пайдар-пайии рамзњо, ќиматњои мантиќї ва ѓайра.

Таѓйирёбандањоро низ асосан ба се намуд људо менамоянд: ададї, матнї ва љадвалї. Намуди таѓйирё-банда ба воситаи намуди ќимати додањояш муайян карда мешавад. Ќимати таѓйирёбандаи ададї адад буда, ќима-ти таѓйирёбандаи матнї пайдарпайии рамзњо мебошад. Дар забони алгоритмї намуди таѓйирёбандањо ба воситаи калимањои калидии натур (натуралї), бут (бутун), њаќ (њаќиќї), лит (литерї) ва ѓайра муайян карда мешаванд.

Бо доимињо ва таѓйирёбандањо амалњои гуногунро иљро кардан мумкин аст. Масалан, бо бузургињои ададї амалњои арифметикї ва бо матнї амалњои табдилдињии сатрњои матниро иљро менамоянд. Таѓйирёбандањои љад-валиро њангоми кор бо додањои намуди љадвалї истифода мебаранд. Мавќеи љойгиршавии чунин таѓйирёбандањоро дар љадвал ба воситаи индексњояшон муайян месозанд.

Дар забонњои барномарезї барои тасвири намуди

Page 27: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

27

таѓйирёбандањо рамзњои махсусро истифода мебаранд. Масалан, дар забони барномарезии Бейсик рамзи % (аломати фоиз) барои тасвири ададњои бутун ва рамзи $ (аломати доллар) барои тасвири додањои матнї (литерї) истифода бурда мешавад. Гарчанде дар баъзе забонњо нишон додани намуди бузургињо шарт набошад њам, вале дар аксарияташон нишон додани намуди онњо талаб карда мешавад. Намуди бузургињои нисбатан пањнгардида инњоянд:

Намуди бузургињо Забони алгоритмї Паскал Си

Бутун бут Integer Int

Њаќиќї њаќ Real Float

Матнї лит String Char[ ]

Сарлавњаи алгоритм. Тавре дар мавзўъњои гузашта ќайд шуд, оѓози њар гуна алгоритм дар забони алгоритмї сарлавњаи он аст:

алг номи алгоритм (рўйхати бузургињо бо нишондоди намудашон) арг номгўйи аргументњо нат номгўйи натиљањо

Бузургињое, ки дар алгоритм њамчун маълумоти ибтидої хизмат мерасонанд, аргумент ном доранд. Рўйхати онњо пас аз калимаи ёрирасони арг (аргумент) оварда мешавад. Натиљањои нињоии кори алгоритм пас аз калимаи ёрирасони нат (натиља) тасвир карда мешаванд. Мувофиќи ќоидањои навишти алгоритм номи аргументњо ва натиљањо аз њамдигар ба воситаи вергул људо карда мешаванд.Бузургињое, ки њангоми иљрои алгоритм барои ишорат кардани натиљањои мобайнї истифода мешаванд, бузургињои мобайнї ном доранд. Чунин бузургињо баъди калимаи ёрирасони ибт оварда мешаванд. Ќариб њамаи амалњои арифметикї ва аломатњои муќоисавии муќаррариро дар

Page 28: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

28

забони алгоритмї њам истифода мебаранд. Танњо дар хотир бояд дошт, ки дар њисобкунї ва ишораткунињои забони алгоритмї ба љойи аломати «=» рамзи «:=»-ро истифода бурда, онро на аломати баробарї, балки бахшиш мегўянд. Масалан, навишти y:=x2+3 чунин хонда мешавад: «Ба таѓйирёбандаи y ќимати ифодаи x 2+3 бахшида ш авад». Ин навиштро ф ар мо ни б ахш иш мегўянд.

Аломати «:=» барои иљрочї амалиёт аст, вале алома-ти «=» на. Аломати «=»-ро танњо њангоми тасвир намудани шартњо истифода мебаранд. Аз тарафи чапи аломати «:=» бузургии дилхоњи таѓйирёбанда ва аз тарафи росташ ифодаи дилхоњи ададї ё ѓайриададї навишта мешавад.

Мисол: Алгоритми аз ду адади додашудаи α ва β ёфтани адади калонтаринро месозем.

алг КАД (њаќ α, β, γ) арг α, β

нат γ ибт агар α ≥ β он гоњ γ := α вагарна γ := β

итмом инт

Дар ин мисол ба сифати номи алгоритм КАД ќабул карда шудааст. Бузургињои α, β ва γ намуди њаќиќї доранд, ки ин ба воситаи калимаи ёрирасони њаќ ќайд карда шудааст. Дар алгоритм бузургињои мобайнї истифода нашудаанд. Баъди калимаи ёрирасони ибт фармони шоханок омадааст, ки он шарти α≥β-ро дар бар гирифтааст. Агар ин шарт риоя шавад (яъне, ќимати α аз ќимати β калон ва ё ба он баробар бошад), он гоњ фармони баъди калимаи ёрирасони он гоњ омада иљро мегардад, яъне ба таѓйирёбандаи γ ќи-мати α бахшида мешавад. Дар њолати риоя нашудани шарт (њангоми α<β будан), ба таѓйирёбандаи γ ќимати β бахшида

Page 29: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

29

мешавад. Њамин тариќ, иљрочї аз байни ду адади додашуда адади калонтаринро ёфта ба таѓйирёбандаи γ мебахшад, ки он дар алгоритм њамчун натиља ба ќайд гирифта шудааст.

L Саволњо:

1. Чанд намуди бузургињоро медонед?2. Бузургињои доимї аз таѓйирёбанда чї фарќ доранд?3. Кадом бузургињоро бузургињои литерї мегўянд?4. Дар забони алгоритмї барои тасвир намудани

таѓйирёбандањо кадом калимањои ёрирасонро истифода мебаранд?

5. Бузургии мобайнї чист?6. Рамзи := чиро ифода мекунад?7. Додањои 253; 45.67; «бозор» ба кадом намудњо мансубанд?8. Кадоме аз навиштњои х, 2а, 2b, 4, њарорат, А23, 17Х,

њалли муодила, «њалли муодила»-ро ба сифати номи таѓйирёбанда ќабул кардан мумкин аст?

9. Намуди умумии сарлавњаи алгоритм чї гуна аст?10. Бузургињои мобайнї дар кадом ќисми алгоритм навишта

мешаванд?

6 Супориш:

1. Матни мавзўъро бодиќќат хонед ва мазмуни онро мухтасар дар дафтаратон нависед.

2. Якчанд бузургињои доимиро аз фанњои дигар ба хотир оред ва намудашонро дар забони алгоритмї муайян намоед.

3. Алгоритми КАД-ро ба дафтаратон кўчонед, онро тањлил намоед ва барояш блок-наќша тартиб дињед.

1.1.6. АЛГОРИТМЊОИ ЁРИРАСОН

Алгоритмњоро нисбат ба њамдигар ба алгоритмњои асосї ва ёрирасон таќсим мекунанд. Тавре ки дар математика њангоми исботи теоремаи нав аз теоремањои исботшуда истифода мебаранд, дар ин љо низ дар ваќти тартиб додани алгоритми нав аз алгоритмњои пештар

Page 30: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

30

тартибдодашуда истифода кардан мумкин аст. Барои ин, алгоритмњои пешакї тартибдодашударо дар љойи махсус – хазинаи алго р ит мњо гирд меоранд ва њангоми сохтани алгоритмњои нав аз онњо истифода мебаранд.

Алгоритмњоеро, ки дар таркиби алгоритмњои дигар (асосї) истифода мешаванд, алгоритмњои ёрирасон ё тобеъ мегўянд. Барои мурољиаткунї ба алгоритми ёрирасон ном, номгўйи аргументњо ва натиљањои онро дар алгоритми асосї нишон додан зарур аст.

Мисоли 1: Алгоритми сохтани калимаи "ЧОР"-ро дида мебароем. Аввал барои сохтани њар як њарфи ин калима ва фосилаи байни онњо алгоритмњои алоњидаро тартиб медињем (љадвали 1) ва баъд онњоро дар як алгоритм (асосї) муттањид месозем. Алгоритмњои 1, 3, 4 мувофиќан барои сохтани њарфњои Ч, О, Р ва алгоритми 2 барои сохтани фосилаи байни њарфњо пешбинї карда шудаанд.

Агар њамаи алгоритмњои овардашударо ба сифати алгоритмњои ёрирасон ќабул намоем, он гоњ алгоритми асосии сохтани калимаи “чор” намуди зеринро мегирад:

алг Сохтани калимаи ЧОРибт њарфи Ч фосила њарфи О фосила њарфи Р

инт Љадвали 1

Page 31: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

31

1. алг њарфи Ч ибт

расм накаш ба пеш

(2) расм каш ба пеш

(2) расм накаш ба ќафо (2) ба рост (90) расм каш ба пеш (2) расм накаш ба чап (90) ба пеш (2) расм каш ба ќафо (4)

инт

2. алг фосила ибт

р а с м накаш

ба рост (90)

ба пеш (1)

ба чап (90)

расм каш инт

3. алг њарфи О ибт

ба пеш (4)

ба рост (90)

ба пеш (2)

ба рост (90)

ба пеш (4)

ба рост (90)

ба пеш (2)

инт

4. алг њарфи Р ибт

ба пеш (4)

ба рост (90)

ба пеш (2)

ба рост (90)

ба пеш (2)

ба рост (90)

ба пеш (2)

инт

Албатта мо метавонистем алгоритмњои ёрирасони 1,2,3,4-ро пешакї тартиб надода, онњоро якбора дар таркиби як алгоритм созем. Лекин дар ин њолат алгоритми 2-ро ду маротиба навиштан лозим меомад.• Дохил намудани алгоритмњои ёрирасон тартибдињии ва

санљиши алгоритми асосиро осон мегардонад.• Истифодабарии алгоритмњои ёрирасон имконият медињад, ки

тасвири њалли масъала кўтоњтар баён карда шавад.

Мисоли 2: Алгоритми пешакї тартибдодашудаи КАД-ро ба сифати алгоритми ёрирасон ќабул менамоем ва алгоритми аз се адади додашудаи a, b ва c ёфтани адади калонтаринро месозем.

алг КАС (њаќ a, b, c, y) арг a, b, c нат y ибт њаќ z КАД (a, b, z) КАД (z, c, y) инт

Чи хеле ки мебинем, дар алгоритми КАС ба алгоритми ёрирасони КАД ду маротиба мурољиат карда шудааст. Дар мавриди якум аз байни ададњои a ва b ќимати калонтарин

Page 32: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

32

дарёфт ва ба таѓйирёбандаи z бахшида мешавад. Дар ин љо z натиљаи мобайнии алгоритм ба њисоб меравад. Дар мавриди дуюм бошад, аз байни ададњои z ва с ќимати калонтарин дарёфт ва ба таѓйирёбандаи y бахшида мешавад, ки он натиљаи нињоии алгоритм аст.

L Саволњо:

1. Кадом алгоритмро алгоритми ёрирасон мегўянд?2. Вазифаи хазинаи алгоритмњо аз чї иборат аст?3. Чї тавр ба алгоритми ёрирасон мурољиат мекунанд?

6 Супориш:

1. Алгоритмњои КАД ва КАС – ро истифода бурда, алгоритми аз чор адад ёфтани адади калонтаринро тартиб дињед.

2. Алгоритми кашидани росткунљаи тарафњояш 10 ва 15 воњидро созед.

3. Аз алгоритми дар мисоли 1 овардашуда истифода бурда, алгоритми сохтани калимаи «ЧОРПО» – ро тартиб дињед.

1.1.7. СОХТОРИ ТАКРОРШАВЇ

Дар забони алгоритмї дастури такроршавиро дар намудњои одї ва интихобдор (параметрдор) истифода мебаранд.

Дастури такроршавии одї. Намуди умумии дастури такроршавии (даврї, сиклї) одї чунин аст:

њ а н ў з ш а р т и б с с е р и я и н с

Дар ин дастур калимањои њанўз, ибс ва инс калимањои ёрирасон буда, ибс ва инс мувофиќан ибтидо ва интињои сиклро ифода менамоянд. Тарзи иљрои ин дастур чунин аст: иљрочї аввал шартро месанљад. Агар он риоя шавад, он гоњ вай пай дар пай амалиёти (серияи) дар байни ибс ва инс љойгирбударо иљро мекунад. Баъд, вай аз нав шартро месанљад ва њангоми риояи он такроран серияро иљро

Page 33: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

33

мекунад. Ин амалиёт то ваќте такрор меёбад, ки агар шарти гузошташуда риоя гардад. Њангоми ќатъ гардидани риояшавии шарт, кори дастури такроршавї низ ба поён мерасад ва иљрочї ба иљрои дастурњои навбатї мегузарад.

Агар шарт аз аввал риоя нашавад, он гоњ серия низ ягон маротиба иљро намегардад. Њамин тариќ, серия вобаста аз риоя шудани шарт як ё якчанд маротиба иљро мегардад ё ки умуман иљро намегардад. Тарзи схемавии иљрои дастури такроршавандаи одї чунин аст:

Мисоли 1: Фарз мекунем, ки яке аз рафњои китобмонї холї буда, дар рафи дигар миќдори муайяни китобњо љойгиранд. Талаб карда мешавад, ки бо истифода аз дастури такроршавї миќдори китобњои рафњо баробар таќсим карда шаванд.

њанўз миќдори китобњои рафњо баробар нестанд ибс як китобро аз рафи якум гирифта ба рафи дуюм гузоред инс

Дар ин љо ба сифати шарти дастур љумлаи «миќдори китобњои рафњо баробар нестанд» омадааст. Дар њаќиќат, мувофиќи шарти масъала дар ибтидо миќдори китобњои рафњо баробар нестанд: дар рафи якум якчанд китоб мављуд буда, рафи дуюм холї аст. Пас, маротибаи аввал шарти дастур риоя мешавад ва иљрочї серияро як маротиба иљро мекунад, яъне як китобро аз рафи якум гирифта ба рафи дуюм мегузорад. Маълум, ки баъди ин амалиёт миќдори китобњои рафњо таѓйир меёбанд. Шарт аз нав санљида

ШАР

СЕРИЯ

нења

Page 34: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

34

мешавад. Агар он боз риоя шавад, он гоњ серия маротибаи дуюм такрор меёбад. Ин амалиёт то ваќти баробар гаштани миќдори китобњои рафњо такрор меёбад.

Дастури такроршавї бо параметр. Намуди ин дастур чунин аст:

барои x аз xmin

то xmax

ибс серия

инсДар ин љо x таѓйирёбандаи бутун буда, параметри сикл ном дорад, x

min - ќимати ибтидої ва x

max - ќимати интињоии

таѓйирёбандаанд.Ин дастур чунин иљро мешавад: ба таѓйирёбандаи x

пайи њам ќиматњои xmin,

xmin

+1, x

min+2

,…,x

max бахшида мешаванд

ва барои њар кадоми онњо серияи фармонњо иљро мегардад. Агар x

min=x

max бошад, он гоњ серия як маротиба иљро шуда,

дар мавриди xmin

>xmax

будан, серия ягон маротиба иљро намешавад.

Фарќи ин намуди дастури такроршавї аз намуди якумаш дар он аст, ки дар ин љо шарт вуљуд надорад. Ба ѓайр аз ин, дар ин љо њудудњои таѓйирёбии x пешакї маълуманд, яъне миќдори такроршавии сиклро иљрочї пешакї медонад. Ќадами таѓйирёбии параметри сикл ба 1 баробар аст.

Њангоми дилхоњ будани ќадами таѓйирёбии параметр дастури такроршавї бо параметрро дар намуди умумї меоранд:

барои x аз xmin

то xmax

ќадам kибс

серияинс

Дар ин љо k - ќадами таѓйирёбии параметри сикл буда, бо кадом бузургї таѓйир ёфтани x-ро ифода менамояд. Ба таѓйирёбандаи x аввал ќимати x

min бахшида шуда, серия иљро

карда мешавад. Баъд ќимати x бо бузургии ќимати k зиёд карда мешавад ва серия аз нав иљро мегардад. Ин раванд то

Page 35: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

35

ваќти ќимати x аз ќимати xmax

хурд ё ба он баробар будан идома меёбад.

Мисоли 2: Алгоритми њисобкунии суммаи квадрати ададњои аз 1 то 50 – и натуралї тартиб дода шавад.

алг суммаи квадратњо (њаќ S)нат S ибт бут i; S:=0

барои i аз 1 то 50ибс

S:=S+i2

инс инт

Мисоли 3: Алгоритми њисобкунии суммаи њамаи ададњои дураќамаи љуфт тартиб дода шавад.

алг Њосили љамъ (бут S)нат Sибт бут i

S:=0барои i аз 10 то 98 ќадам 2 ибс S:=S+i инс

инт

L Саволњо:1. Намудњои дастурњои такроршавї кадомњоянд?2. Дар дастурњои такроршавї кадом калимањои ёрирасон

истифода мешаванд?3. Калимањои ёрирасони ибс ва инс чї маъно доранд?4. Дастури такроршавии одї чї тавр иљро мешавад?5. Кадом ваќт иљрои серия ќатъ мегардад?6. Намуди умумии дастури такроршавї бо параметр чї гуна

аст? Ин дастур чї тавр иљро мешавад?

ња

Интињо

не

i≤50

Ибтидо

i=1; S=0

S=S+i2

i=i+1

ИНТИЊО

нења

Page 36: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

36

6 Супориш:1. Матнро хонед ва намуди умумии дастурњои такрор-

шавиро ба дафтаратон кўчонед.2. Блок-наќшаи дастури такроршавии одиро њамчун асос

ќабул карда, блок-наќшаи дастури такроршавї бо параметрро созед.

3. Мисолњое пешнињод намоед, ки дар онњо дастурњои такроршавиро истифода бурдан мумкин бошад.

4. Алгоритми њисобкунии суммаи куби ададњои натуралии аз 1 то 80-ро тартиб дињед (S=13+23+…+803).

5. Алгоритми њисобкунии миќдори рўзњои якшанбеи соли 2010-ро тартиб дињед.

6. Алгоритми њисобкунии n факториалро тартиб дињед

(n!=1•2•3•…•n).

1.1.8. БУЗУРГИЊОИ ЉАДВАЛЇ

Њангоми њалли масъалањо аз љадвалњои гуногун истифода мебаранд. Бузургие, ки љузъи љадвал аст, бузургии љадвалї ном дорад. Аксарияти љадвалњо намуди хаттї ё росткунљавї доранд. Ќимати бузургињое, ки љузъи љадвали хаттианд, дар як сатр ё як сутун навишта мешаванд. Ба њар як љузъи љадвал мувофиќан раќами тартибии он рост меояд.

Мисоли 1: Натиљаи ченкунии њарсоатаи шабонарўзаи ња-рорати њаво дар љадвали 2 оварда шудааст.

Љадвали 2

Ваќти ченкунї, соат

0 1 2 3 … 22 23

Њарорат, оС 17 16 15,5 14 … 18 17,5

Ин љадвал љадвали хаттї буда, дорои 24 љузъ аст. Ба онњо аз 0 то 23 раќамгузорї карда шудааст. Масалан, љузъи дуюми љадвал дорои ќимати 15,5 буда, љузъи нулии он дорои ќимати 17 аст. Љадвали 3 бошад, њарорати миёнаи рўзњои

Page 37: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

37

њафтаро дар бар гирифтааст. Љадвали 3

Санаи ченкунї 22 23 24 25 26 27 28

Њарорати миёна, оС 15 15,5 17 20 18 17 17,5

Аз намуди ин љадвалњо зоњиран фањмост, ки дар онњо зарурати нигоњ доштани сатри раќамњои тартибї нест. Ибтидои раќамгузориро дониста, раќами љузъи дилхоњро ёфтан мумкин аст. Вале донистани раќами тартибии калонтарини љадвал муњим аст. Он имкон медињад, ки андозаи љадвал пешакї муайян карда шавад.

Њангоми дар алгоритм истифода бурдани љадвали хаттї бояд номи он, намуди љузъњояш, раќами тартибии љузъњои аввалин ва охиринаш муќаррар карда шавад. Дар љадвали росткунљавї бошад, илова бар ин, сарњади раќамњои амудї ва уфуќиро низ нишон додан лозим аст.

Мисоли 2: Бигузор њосили зарби ададњои бутун (аз 1 то 9) намуди љадвали 4-ро дошта бошад. Ин љадвалро дар алгоритм чунин тасвир мекунанд:

љад бут њосили зарб [1:9, 1:9]

Дар ин љо «њосили зарб» номи љадвал буда, дар ќавсњои квадратї андозаи он (9•9=81) оварда шудааст.

Љадвали 4

Зарб

куна

нда

Зарбшаванда1 2 3 … 8 9

1 1 2 3….

8 9

2 2 4 6 ... 16 18

3 3 6 9 … 24 27

… … … … … … …

8 8 16 24 … 64 72

9 9 18 27 … 72 81

Бо љадвал кор кардан маънои бо љузъњои он кор

Page 38: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

38

карданро дорад. Тавре ки ќайд кардем, љузъњои љадвалро аз рўйи раќами тартибиашон муайян мекунанд. Раќами тартибї пас аз номи љадвал њамчун индекс дар ќавси квадратї навишта мешавад. Масалан, a

3 ва b

2,7 дар забони

алгоритмї њамчун a[3] ва b[2,7] ишорат карда мешаванд.

Мисоли 3: Алгоритми њисобкунии суммаи (S) - 1000 љузъи аз ададњои њаќиќї иборатбудаи љадвали номаш a-ро месозем. Миќдори ададњои љамъкардашударо бо ёрии таѓйирёбандаи бутуни мобайнии i ишорат менамоем.

алг сумма (љад њаќ a[1:1000], њаќ S) арг a нат Sибт бут i i:=1 S:=0 њанўз i≤ 1000 ибс S=S+a[i] i:=i+1 инс

инт

Ба сифати индекс истифода бурдани таѓйирёбандаи i имконият медињад, ки суммаи њамаи љузъњои љадвалро бо ёрии як дастури такроршавандаи бахшиши S:=S+a[i] њисоб намоем.

Мисоли 4: Дар асоси љадвали 4 (мисоли 2) алгоритми пуркунии љадвали зарбро тартиб медињем.

алг љадвали зарб (љад бут њосили зарб[1:9, 1:9]) нат њосили зарб ибт бут i, j i:= 1

S:=0

Page 39: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

39

њанўз i≤ 9 ибс

j:= 1 њанўз j≤ 9 ибс њосили зарб[ i, j]:= i• j j:=j+1 инс i:=i+1 инсинт

Дар алгоритми мазкур ду фармони такроршавї истифода бурда шудааст, ки яке аз онњо дар дохили дигараш љойгир аст. Сикли беруна вобаста аз ќиматњои таѓйирёбандаи i ва иљрои шарти i≤ 9 ва сикли дохилї бошад, вобаста аз ќиматњои таѓйирёбандаи j ва иљрои шарти j≤ 9 такрор ба такрор дастурњои ба худ тааллуќдоштаро иљро менамоянд. Барои њар як ќимати навбатии таѓйирёбандаи i таѓйирёбандаи j њамаи ќиматњои имконпазири худро аз 1 то 9 ќабул менамояд. Њангоми i=1 будан ва j аз 1 то 9 таѓйир ёфтан, дастури бахшиши њосили зарб[i,j]:=i• j нўњ маротиба иљро шуда, сатри якуми љадвали њосили зарб пур мешавад. Сатри дуюми љадвал барои ќимати i=2 ва ќиматњои j аз 1 то 9 пур карда мешавад. Ва бо њамин усул иљрочї ин равандро давом дода њамаи љадвали њосили зарбро пур мекунад.

L Саволњо:

1. Бузургии љадвалї чист?2. Кадом намуди љадвалњоро медонед?3. Љадвали росткунљавї аз хаттї чї фарќ дорад?4. Љадвалњоро дар алгоритм чї гуна тасвир менамоянд?5. Вазифаи индекси љузъњои љадвал аз чї иборат аст?

6 Супориш:1. Матни мавзўъро хонед ва мазмуни мафњуми љадвалро

кушоед.

Page 40: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

40

2. Барои алгоритмњои дар мисолњои 3 ва 4 – уми мавзўъ овардашуда блок – наќша тартиб дињед.

3. Ду – се мисоле пешнињод намоед, ки дар онњо љадвалњо истифода шуда бошанд.

1.1.9. АСОСЊОИ МАНТИЌИИ АЛГОРИТМСОЗЇ

Алгебраи мантиќї(Булї). Яке аз мафњумњои асосии алгебраи мантиќї, ки онро ба шарафи асосгузораш - ма-тематики машњури англис Љорљ Бул алгебраи булї низ мегўянд, гуфтор аст. Гуфтор тасдиќи њаќониятии (њаќ, дуруст ё дурўѓ, нодуруст) ягон иттилоот (маълумот, сухан, љумла, њодиса, хабар ва ѓайра) аст. Яъне њар гуна гуфтор танњо ё њаќ ва ё дурўѓ аст. Дар як ваќт њељ гоњ он њам њаќ ва њам дурўѓ шуда наметавонад. Масалан, гуфтори «Адади 10 сода аст.» нодуруст аст, чунки 10 адади сода нест. Гуфтори «Душанбе пойтахти Тољикистон аст.» њаќ аст, чунки дар њаќиќат Душанбе пойтахти Тољикистон мебошад.

Дар алгебраи булї гуфторњои мураккабро тавассути як миќдор гуфторњое, ки њаќ ё дурўѓ буданашон пешакї маълум аст, месозанд. Гуфторњои мансуб ба ин маљмўъро гуфторњои сода меноманд ва онњоро бо њарфњои калони лотинї ишорат мекунанд. Ќимати гуфтори њаќ ба 1 (True) ва гуфтори дурўѓ ба 0 (False) баробар аст.

Амалњои мантиќї. Дар љадвали 5 барои осонии кор пешакї ном, ишорат ва тарзи хондани амалњои мантиќиро меорем:

Љадвали 5

Номи амалИшорат дар математика

Дар БейсикХонда

мешавад

Инверсия(Инкори мантиќї)

¬ NOT Не

Конъюнксия(Зарби мантиќї) ∧ AND Ва

Page 41: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

41

Дизъюнксия(Љамъи мантиќї) ∨ OR Ё

Љамъи оњанрабої ⊕ XOR Истиснои ё

Эквиваленсия (Баробарќуввагї) ~ EQV Баробарќувва

Импликатсия (Таъсири мантиќї) ⇒ IMP Бармеояд

Ба њар як гуфтори содаи А гуфтори A мувофиќ гузошта мешавад, ки он инкори мантиќии ин гуфтор ном дорад. Инкори мантиќї ё худ инверсия мувофиќи љадвали њаќќонияти зерин муайян карда мешавад:

А À1 0

0 1

Тавре аз љадвал дида мешавад, агар ќимати гуфтори А њаќ

бошад, он гоњ ќимати инкораш À дурўѓ аст ва баръакс.

Дизъюнксия ё худ љамъи мантиќии гуфторњои А ва В бо ёрии A-B ишорат шуда, ќимати он мувофиќи љадвали зерин муайян карда мешавад:

А B A-B

1 0 1

0 1 1

1 1 1

0 0 0

Мувофиќи љадвал ќимати дизъюнксияи ду гуфтори сода њамон ваќт њаќ аст, ки аќаллан ќимати яке аз гуфторњо њаќ бошад. Дар мавриди дурўѓ будани ќимати њар ду гуфтор, ќимати дизъюнксияи онњо низ дурўѓ аст.

Љамъи мантиќии оњанрабоии гуфторњои А ва В бо ёрии A⊕B ишорат шуда, ќимати он мувофиќи љадвали зерин

Page 42: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

42

муайян карда мешавад:

А B A ⊕ B

1 0 1

0 1 1

1 1 0

0 0 0

Аз љадвал маълум аст, ки љамъи оњанрабоии ду гуфтори сода њамон ваќт њаќ аст, ки агар яке аз онњо њаќ ва дигаре дурўѓ бошад. Дар њолати якхела будани ќимати гуфторњо ќимати љамъи оњанрабої дурўѓ аст.

Конъюнксия ё худ зарби мантиќии гуфторњои А ва В бо ёрии А-В ишорат шуда, ќимати он мувофиќи љадвали зерин муайян карда мешавад:

А B А-В1 0 0

0 1 0

1 1 1

0 0 0

Мувофиќи љадвал ќимати конъюнксияи ду гуфтори сода њамон ваќт њаќ аст, агар ќимати њар ду гуфтор њам њаќ бошанд. Дар мавриди дурўѓ будани аќаллан ќимати яке аз гуфторњо, ќимати дизъюнксияи онњо низ дурўѓ аст.

Эквиваленсия ё худ баробарќуввагии гуфторњои А ва В бо ёрии А~В ишорат шуда, ќимати он мувофиќи љадвали зерин муайян карда мешавад:

А B А~В1 0 0

0 1 0

1 1 1

0 0 1

Page 43: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

43

Мувофиќи љадвал ќимати эквиваленсияи ду гуфтори сода њамон ваќт њаќ аст, ки агар ќимати њар ду гуфтор якбора ё њаќ ва ё дурўѓ бошанд. Дар мавриди ќимати яке аз гуфторњо њаќ ва дигараш дурўѓ будан, ќимати эквиваленсияи онњо дурўѓ аст.

Импликатсия ё худ таъсири мантиќии гуфторњои А ва В бо ёрии А⇒В ишорат шуда, мувофиќи љадвали зерин муайян карда мешавад:

А B А⇒В1 0 0

0 1 1

1 1 1

0 0 1

Аъзои якуми импликатсия А-ро шарт ва аъзои дуюм В-ро хулосаи импликатсия мегўянд. Аз љадвал аён аст, ки танњо дар ваќти њаќ будани шарт ва дурўѓ будани хулоса импликатсияи ду гуфтори сода А⇒В дурўѓ аст. Дар њамаи њолатњои боќимонда ќимати импликатсия њаќ аст. Њангоми иваз кардани љойи сутунњои А ва В ќимати импликатсия низ таѓйир меёбад.

Ќимати мантиќии Null. Дар забонњои барномарезї, хусусан дар Visual Basic, бо маќсади татбиќи васеътари ифодањои мантиќї илова ба ќиматњои мантиќии False ва True боз ќимати Null дохил карда шудааст. Аз ќимати Null бештар њангоми аз якчанд аргументњои функсияњои мантиќї номуайян будани ќимати якеи онњо истифода мебаранд. Бо бањисобгирии ќимати Null љадвали умумии њаќќонияти амалњои мантиќї намуди зеринро мегирад:

A B A B A∧B A∨ B A⊕ B A~B A⇒B

1 0 0 1 0 1 1 0 0

0 1 1 0 0 1 1 0 1

1 1 0 0 1 1 0 1 1

Page 44: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

44

0 0 1 1 0 0 0 0 0

1 Null 0 Null Null 1 Null Null Null

0 Null 1 Null 0 0 Null Null 1

Null 1 Null 0 Null 1 Null Null 1

Null 0 Null 1 0 Null Null Null Null

Null Null Null Null Null Null Null Null Null

Масъала: Гуфторњои А ва В дода шудаанд:А={2 карат 2 ба 5 баробар аст}В={Адади 25 таркибї аст}

Гуфторњои зеринро муайян кунед: а) À ; б)A∨B; в)A∧B; г)А~В; д)А⇒ВКадоме аз ин гуфторњо њаќ аст?

Њал:

а) Гуфтори À ={2 карат 2 ба 5 баробар нест} њаќ аст, чунки А дурўѓ аст.

б) Гуфтори A∨B={2 карат 2 ба 5 баробар аст ё адади 25 таркибї аст} мувофиќи љадвали њаќќонияти амали дизъюнксия њаќ аст.

в) Гуфтори A∧B={2 карат 2 ба 5 баробар аст ва адади 25 таркибї аст} мувофиќи љадвали њаќќонияти амали конъюнксия дурўѓ аст.

г) Гуфтори А~В={2 карат 2 ба 5 баробар фаќат ва фаќат ња-мон ваќт аст, ки агар адади 25 таркибї бошад} мувофиќи љадвали њаќќонияти амали эквиваленсия дурўѓ аст.

д) Гуфтори А⇒В={агар 2 карат 2 ба 5 баробар бошад, он гоњ адади 25 таркибї аст} мувофиќи љадвали њаќќонияти амали импликатсия њаќ аст.

Бояд ќайд намуд, ки тартиби иљрои амалњои мантиќї аз рўйи бартарияташон чунин муайян карда шудааст: ин-версия, конъюнксия, дизъюнксия, љамъи оњанрабої, экви-валенсия ва импликатсия. Ин тартиби муайяншударо ба мисли ифодањои математикї бо истифодаи ќавсњо таѓйир

Page 45: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

45

додан мумкин аст. Ба сифати мисол бо истифода аз амалњои мантиќї, ќавсњо ва маљмўи гуфторњои сода ба тартиб додани

гуфтори мураккаби ( ) ( )ABÂÀ ⇒⇒ ~ шурўъ менамоем. Пеш аз њама барои осонии кор љадвали њаќќоният тартиб медињем ва ќимати њар як ташкилкунандаи ин гуфтор, натиљањои мобайнї ва нињоии онро дар алоњидагї њисоб намуда, дар сутунњои љадвал љойгир мекунем:

А В ÂÀ⇒ B A AB ⇒ ( ) ( )ABÂÀ ⇒⇒ ~1 1 1 0 0 1 1

1 0 0 1 0 0 1

0 1 1 0 1 1 1

0 0 1 1 1 1 1

Гуфтори мазкур новобаста аз ќимати гуфторњои ташкилкунандааш доимо њаќ аст. Чунин гуфторро гуфтори айниятан њаќ мегўянд. Айнан њамин тавр гуфторњои айниятан дурўѓро муайян кардан мумкин аст.

Агар ду гуфтор дорои љадвали њаќќонияти якхела бошанд, он гоњ онњо айниятан баробарќувва номида мешаванд. Масалан, гуфторњои ÂÀ⇒ ва ÂÀ∨ айниятан

баробарќувваанд ва бо тарзи ÂÀÂÀ ∨≡⇒ ишорат карда мешаванд.

Айниятан баробарќуввагии гуфторњоро ба мисли баробарќуввагии айниятњои алгебравї санљидан мумкин аст. Дар ин маврид аввал баробарќуввагии як миќдор гуфторњоро тавассути љадвали њаќќоният муайян мекунанд

ва сипас онњоро дар исботи дигар гуфторњо истифода мебаранд. Бо чунин тарз, масалан, ба осонї ќонунњои зерини алгебраи гуфторро санљидан мумкин аст:

ABBA ∨≡∨ - ќонуни коммутативии дизъюнксия

ABBA ∧≡∧ - ќонуни коммутативии конъюнксия

≡∨≡∧≡∧≡∨≡∧≡∨

AAAAAA

AAAA

0,001,11

0,1

Page 46: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

46

( ) ( ) CBACBA ∨∨≡∨∨ - ќонуни ассотсиативии дизъюнксия

( ) ( ) CBACBA ∧∧≡∧∧ - ќонуни ассотсиативии конъюнксия

( ) ( ) ( )CABACBA ∧∨∧≡∨∧ - ќонуни дистрибутивии конъюнксия

( ) ( ) ( )CABACBA ∨∧∨≡∧∨ - ќонуни дистрибутивии дизъюнксия

BABABABA ∨≡∧∧≡∨ , - ќонунњои де Морган

AA ≡ - ќонуни инкори инкор

AAAAAA ≡∧≡∨ , - ќонунњои идемпотентнокї

ќонунњое, ки дар таркибашон гуфторњои айниятан њаќ ва айниятан дурўѓ доранд

Саволњо:

1. Чаро алгебраи мантиќиро алгебраи булї мегўянд? Гуфтор чист?

2. Кадом амалњои мантиќиро медонед?3. Бартарияти иљрои амалњои мантиќї чї тавр муайян

шудааст?4. Аз ќимати мантиќии Null кадом ваќт истифода мебаранд?5. Айниятан баробарќуввагии гуфторњоро чї тавр

месанљанд?

6 Супориш:

1. Љадвали њаќќонияти гуфтори ( ) ( )ÑBÂÀ ⇒∨ ~ -ро тартиб дињед.2. Гуфторњои А ва В дода шудаанд:

А={5 карат 5 ба 25 баробар аст}В={Адади 16 тоќ аст}

Кадоме аз гуфторњои зерин њаќ аст? а) À ; б)A∨B; в)A∧B; г)А~В; д)А⇒В

3. Айниятан баробарќуввагии гуфторњои BABA ∧≡∨ -ро исбот кунед.

Page 47: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

47

БОБИ 2АСОСЊОИ БАРНОМАРЕЗЇ

1.2.1.ТАЊАВВУЛ ВА ТАСНИФИ ЗАБОНЊОИ БАРНО-

МАРЕЗЇ

Забонњои барномарезї. Барои тавассути компютер иљро намудани алгоритми њалли масъала, аввал онро ба шакли махсус овардан лозим аст, ки онро барномаи ком-пютерї мегўянд. Барномањои компютерї бо ёрии забонњои барномарезї сохта мешаванд. Имрўз дар љањон бештар аз 2000 забони барномарезї мавриди истифода ќарор дорад.

Њар гуна забони барномарезї ба мисли забонњои муќаррарии гуфтугўї аз алифбо, синтаксис ва семантика иборат аст. Алифбои забонро маљмўи рамзњое (аломатњое) ташкил медињад, ки онњо њангоми тартибдињии сохтори барнома истифода мешаванд. Одатан сафњакалиди компютер фарогири њамаи рамзњои алифбои забонњои барномарезї мебошад. Синтаксис – ин маљмўи ќоидањоест, ки бо ёрии алифбои забон сохтори барнома (блокњо, ифодањо, операторњо, зербарномањо ва ѓайра) эљод мешавад. Системаи ќоидањои маънидодкунии сохтори барномаро семантикаи забони барномарезї мегўянд. Масалан, агар ягон зерсохтори барнома ифодаи a(b+c)– ро дар бар гирифта бошад, он гоњ мувофиќи ќоидањои семантикии забон бояд компютер аввал суммаи бузургињои b ва c, яъне b+c ёбад ва сипас натиљаи суммаро бо бузургии а зарб кунад. Ва ё њангоми ба ягон таѓйирёбанда бахшидани ќимати ягон бузургї, компютер бояд њатман аввал мувофиќат кардани намуди онњоро санљад ва баъд амали бахшишро иљро кунад.

Забонњои барномарезї, њамчун воситаи асосии муко-ламаи инсон ва компютер, имрўз хеле такмил ёфтаанд ва дастраси доираи васеи мутахассисони њам касбї ва њам ѓайрикасбї гаштаанд. Дар рушди таъминоти барномавии компютерї асосан 5 насли забони барномарезиро (ЗБ)

Page 48: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

48

ёдовар мешаванд. Се насли аввалаи ЗБ комилан мувофиќи маљмўи калимањои хидматї ва синтаксисї тавсиф кар-да мешуданд ва омўзиши онњо барои мутахассисони ѓайрикасбї хеле мураккаб буд. Гарчанде забонњои насли чорум то њол њангоми барномарезї риояи синтаксиси ќатъиро талаб кунанд њам, лекин омўзиши онњо нисбатан осонтар гардонида шудааст. Забонњои барномарезии насли панљум, ки њоло дар љараёни коркард ва арафаи анљомёбї ќарор доранд, дорои имкониятњои хеле фаровони табодули иттилоот буда, бо ќоидањои грамматикї ва синтаксисии забонњои табиї (гуфтугўии байни инсонњо) хеле наздик гардонида шуда, риояи ќоидањои махсуси синтаксисиро умуман талаб намекунанд.

Забонњои барномарезии насли якум тавассути маљмўи фармонњои мошинї (дар намуди рамзбандии дуї ё њаштї), ки аз рўйи банду басти (архитектураи) компютери мушаххас муайян карда мешуданд, алгоритми муайянеро иљро мекарданд. Дар он замонњо њар як навъи компютер соњиби забони хоси худ буд. Њар як барнома танњо барои як навъи компютер сохта мешуд. Аз барномарез на танњо донистани забони компютери мушаххас, балки сохтори физикии он низ талаб карда мешуд.

Насли дуюми ЗБ бо ташаккули забонњои намуди ассемблерї ё макроассемблерї алоќаманд аст. Гарчанде ассемблерњо нисбат ба забонњои насли аввал ќадаме ба пеш бошанд њам, вале вобастагии онњо аз сохти компютер њанўз њам боќї монда буд. Аз барномарез боз њам донистани тарзи кори компютери навъи мушаххас талаб карда мешуд.

Матни барнома дар ассемблер аз пайдарпайии опера-торњо (маљмўи дастурњои компютерї) иборат аст. Дар операторњо ба љойи раќамњои дуї (ё њаштї) аз рамзњои њарфї истифода мебаранд. Ин рамзњо имконият фароњам меоваранд, ки фаъолияти раќамї ва якранги барномарез дар шакли пайдарпайии рамзњо ба танзим оварда шавад. Њар як оператор дар сатри алоњидаи матни барнома навишта

Page 49: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

49

мешавад. Компютер ин операторњоро бо навбат коркард менамояд. Азбаски барномањои компютерї тавассути ин забонњо хеле кўтоњ тасвир мешаванд, бинобар он дар даврони мо низ њангоми эљоди таъминоти барномавї аз забонњои ассемблерї ба таври васеъ истифода мебаранд.

Насли сеюми ЗБ-ро забонњои сатњи олї ё худ забонњои алгоритмї ташкил медињад, ки он бештар бо пайдоиши забони барномарезии Fortran алоќаманд аст. Ин забон тањти роњбарии Љон Бэкус дар ширкати IBM эљод шудааст. Fortran дар њалли масъалањои илмї-техникї дар як муддати кўтоњ ба яке аз забонњои асоситарин табдил ёфта тавонист. Дере нагузашта пас аз Fortran забонњои алгоритмии Algol, Cobol, Basic, PL/1, Pascal, APL, ADA, C, Forth, Lisp, Modula ва ѓайра пайдо шуданд, ки аксарияти онњо имрўз њам дар байни барномарезон мањбубияти хоса доранд.

Насли чоруми ЗБ тамоюли ѓайриоператорї (ѓайрипротседурї) дорад. Азбаски ин гуна забонњо ќоидањои махсус ва ночизи синтаксисиро риоя мекунанд, бинобар он истифодаи онњо барои ѓайримутахассисон низ хеле осон гаштааст. Хусусиятњои муњимтарини забонњои ин насл дар мансубият ва мавриди истифода ќарор гирифтани онњо дар рушди самтњои зерини барномарезї ошкор гаштааст:

ќисман дар њалли масъалањои интеллекти сунъї (Prolog, Langin ва ѓайра)

забонњои барномарезии объектгаро (Pascal, C++, SmallTalk, Simula, Actor ва ѓайра)

забонњои барномарезии дархостї (хазинаи маълумот, ма-салан SQL – Structured Query Language)

забонњои барномарезии параллелї (Occam, SISAL, FP ва ѓайра).

Ба насли панљуми ЗБ забонњои навъи навтарин, аз ќабили забонњои интеллекти сунъї (InterLisp), системањои ташхисї (экспертї - ExpertLisp), хазинаи дониш (IQLisp, SAIL) ва забонњои ќисман табиї (Clout, Q&A, HAL), ки дар истифодаи онњо ягон хел синтаксиси махсус талаб карда намешавад, дохил мешаванд.

Page 50: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

50

Системаи барномарезї (СБ) гуфта маљмўи барномањои бунёдї ва воситањои барномарезиро меноманд, ки онњо барои эљод, коркард ва истифодаи барномањои нав пешбинї шудаанд. Дар таркиби СБ забонњои барномарезї, тањриргарони матнї, трансляторњо (барнома-тарљумонњо), хазинаи зербарномањо, утилитњо (барномањои ёрирасон) ва барномањои хидматї мављуданд. Синфи СБ дар љадвали 6 оварда шудааст.

Љадвали 6

Аломати тасниф Навъ Хусусияти фарќкунандаи системаи бисёрзабона аз якзабона дар он аст, ки ќисмњои алоњидаи барномаро тавассути забонњои гуногун сохта, онњо-ро њангоми иљро ё пеш аз он дар модули ягона якљоя кардан мумкин аст.

Маљмўи забонњои кории додашуда

Якзабона

Бисёрзабона

Имконияти васеъгардонї

Пўшида

Кушода

Тарзи табодули модули аввала

Компиляторї

Интерпретаторї

Фарќи системаи кушода аз пўшида дар он аст, ки дар ин љо ба система ягон таѓйирот ворид накарда, забони нави дилхоњро дар якљоягї бо транслятораш илова кардан мумкин аст.

Дар системаи интерпретаторї дастурњои забон бевосита дар муњити системаи барномарезии додашуда, ќадам ба ќадам - яке аз паси дигаре, рамзкушої ва иљро карда мешаванд. Дар системаи компиляторї бошад, аввал матни барнома (модули натиљавї) пурра табдил (тарљума) карда шуда, сипас тавассути компютер, тамоман новобаста аз муњити барномарезї, иљро карда мешавад.

Зербарнома воситаест, ки барои истифодаи бисёр-каратаи ягон ќисми мушаххаси барнома (масалан, њисобкунии ќимати функсия барои ќиматњои гуногуни аргумент) дар љойњои гуногуни барномаи асосї хизмат мерасонад. Лекин њолатњое низ вомехўранд, ки як алгоритм, масалан њисоб кардани ќимати функсияњои элементарї,

Page 51: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

51

табдили ададњо аз як система ба системаи дигари њисоб ва ѓайра, дар њалли масъалањои мухталиф истифода мешавад. Агар ягон алгоритм аллакай мавриди истифода ќарор гирифта бошад, он гоњ онро метавон њамчун зербарномаи тайёр ба сифати ќисми ягон барномаи дигар истифода бурд. Истифодаи зербарномањои тайёр бошад, дар њалли масъалањои гуногун эљоди барномањоро осон ва сода гардонида, иљрои онњоро метезонад.

Дар раванди истифодаи зербарномањои тайёр масъалаи нигоњдорї ва љобаљогузории онњо дар хотираи компютер ва алоќамандсозии мутаќобилаи онњо бо барномаи асосї пеш меояд. Барои таъмини иљрои хуби вазифањои амалї системаи муайяни истифодаи зербарномањои тайёр кор карда шудааст. Ин системањо, аз нуќтаи назари ташаккул ва ороиш, ба зербарномањо талаботи муайянеро вогузор мекунанд. Зербарномањое, ки љавобгўи њамаи талаботи системаи интихобшудаанд, стандартї номида шуда, маљмўи ин гуна зербарномањоро хазинаи зербарномањо мегўянд.

L Саволњо:

1. Забони барномарезї чї гуна забон аст?2. Синтаксиси забон чист? Семантикаи он чї?3. Чанд насли забонњои барномарезиро медонед?4. Хусусиятњои ЗБ насли чорум кадомњоянд? Панљум чї?5. Системаи барномарезї чист?6. Системаи барномарезиро аз рўйи кадом аломатњояш

тасниф мекунанд?7. Зербарнома чист? Хазинаи зербарномањо чї?

6 Супориш:

1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Блок-наќшаи алгоритмеро созед, ки дар он ягон ќисмаш

дар якчанд љойи дигари њамон алгоритм такроран истифода шуда бошад.

Page 52: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

52

1.2.2. ЗАБОНИ БАРНОМАРЕЗИИ QBASIC

Бейсик (Basic) аз њарфњои аввали калимањои англисии «Beginner’s All purpose Sumbolic Instruction Code» гирифта шуда, ба забони тољикї «Забони бисёрмаќсадаи дастурњои рамзї барои навомўзон» тарљума карда мешавад. Ин забон соли 1965 аз тарафи профессорони коллељи Дармутски ИМА – З. Кемени ва Т. Куртс эљод шудааст. Бейсик барои њалли масъалањои дорои характери њам њисобї ва њам ѓайрињисобидошта ва инчунин барои муколамаи байни корбару компютер пешбинї шудааст. Он дар истифода хеле одї аст. То имрўз якчанд намунаи забони Бейсик, ки аз њамдигар мувофиќи вазифањояшон фарќ мекунанд, кор карда баромад шудааст.

Барнома дар забони Бейсик аз пайдарпайии сатрњо иборат аст. Њар як сатр метавонад раќами тартибии худро дошта бошад. Баъзе намунањои забони Бейсик бе зарурат барои њамаи сатрњо нишон додани раќами тартибиро талаб намекунанд. Дар ин гуна намунањо танњо ба он сатрњое раќам мегузоранд, ки идоракунї ба онњо равон карда шуда бошад. Дар намунањое, ки сатрњояшон раќам доранд, дар навбати аввал сатри раќами тартибиаш аз њама хурдтар иљро мегардад. Одатан сатрњоро бо ќадами 10 раќамгузорї мекунанд, ки ин барои ба барнома илова намудани сатрњои нав имконият фароњам меоварад. Масалан, агар мо дар байни сатрњои раќамашон 40 ва 50 сатри дигарро њамроњ карданї шавем, он гоњ метавонем ба он раќами тартибии 45 (аз 41 то 49)-ро гузорем. Як сатри барнома метавонад як ё якчанд операторро (дастурњои компютериро) дар бар гирад. Дар ин гуна мавридњо операторњо аз њамдигар бо ёрии аломати ду нуќта (:) људо карда мешаванд.

Мо бо намунаи QBasic, ки аз намунањои пешинаи забон тавассути дорои воситањои муосири барномарезии мо-дулї буданаш фарќ мекунад, шинос хоњем шуд. Бояд ќайд кард, ки QBasic дар истифодаи њамаи тарзу услуби технологияи барномарезии муосир созгор аст. Афзалиятњои QBasic:

Page 53: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

53

дорои тањриргари экранї будан дар њаљми барнома мањдудият нагузоштан бе зарурият ба сатрњои барнома раќамгузорї накардан имконияти истифодаи таѓйирёбандањои мањаллї (локалї)

доштан.

Бигузор корбар дар компютери худ барномаи QBa-sic-ро насб карда бошад. Агар системаи оператсионии корї МS Windows бошад, он гоњ парвандаи QBasic-ро бо пахши дукаратаи тугмаи чапи муш ба кор омода сохтан мумкин аст.

Дар мавриди пахши тугмаи маълумотномаи QBasic ба

экран даъват карда мешавад. Агар тугмаи пахш карда шавад, он гоњ ќисми марказии равзанаи QBasic тоза шуда,

тањриргари он ба кор омода мегардад. Дар ин маврид

матни барномаи навро ба компютер дохил ё матни ягон барномаи пештар сохташударо тањрир кардан мумкин аст. Равзанаи асосии QBasic ба ду њисса – равзанаи вироиш (Editing Window) ва равзанаи иљроиш (Immediate Window) таќсим мешавад. Њангоми омодаи кор будани QBasic курсор дар равзанаи вироиш ќарор дорад. Матни барномаи дохилкардашударо тавассути њамин равзана

Page 54: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

54

дидан мумкин аст. Ба матни барнома дохил кардани таѓйиротро низ бо ёрии њамин равзана анљом медињанд. Иљрои барнома ва њатто дар парванда нигоњ доштани он низ мањз аз њамин равзана амалї гардонида мешавад.

Равзанаи иљроиш дар ќисми поёнии экран љойгир буда, дар он ба таври фаврї натиљаи иљрои фармонњоро дидан мумкин аст. Барои ба ин равзана гузаштан, кифоя аст, ки

тугмаи пахш карда шавад. Барои иљрои фармони

зарурї бошад, тугмаи -ро пахш кардан кифоя аст. Барои шурўи кори барномаи мављуда аз фармони

ИљроОѓоз (RunStart - ЗапускПуск) истифода бурдан ва ё тугмањои ва -ро пахш кардан лозим аст. Пас аз ин экран тоза гардида, натиљаи иљрои барнома дар он пайдо мешавад ва то пахши ягон тугмаи ихтиёрии дигар сатри натиљавї дар он љо бетаѓйир боќї мемонад.

Барои аз нав муоина кардани натиљањои иљрои барнома, аз фармони ПешдидЭкрани хориљкунї (ViewOutput Screen - ПросмотрЭкран вывода) ё пахши тугмаи истифода мебаранд. Агар раванди иљрои барнома бо ягон сабабе ќатъ шуда бошад, он гоњ барои давом додани он аз фармони ИљроДавом додан (RunContinue - ЗапускПродолжить)

ё пахши тугмаи истифода мебаранд.Њар як сатри матни барномаро, ки бо пахши тугмаи

ба анљом мерасад, тањриргар њамчун оператори QBasic ќабул карда, фавран коркард менамояд. Коркард дар се

зина амалї гашта, аз лањзаи пахши тугмаи ё гузаштани

курсор ба сатри дигар оѓоз меёбад.Дар зинаи аввал тањлили синтаксисии оператори

навбатї гузаронида мешавад. Агар дар навишти оператор ба хатогие (ѓалат, сањв) роњ дода бошем, он гоњ фавран дар экран равзанаи маълумот оид ба навъи он хато пайдо мешавад ва мавќеи љойгиршавиаш дар сатри барнома ба ќайд гирифта мешавад. Дар мавриди пахши тугмаи

Page 55: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

55

равзанаи мазкур баста мегардад ва курсор ба мавќеи баќайдгирифта баргашта, имконияти ислоњ намудани ѓалати мазкур фароњам меояд.

Оѓози зинаи дуюм – ин анљоми тањрири сатри барнома аст, яъне агар оператори мазкур аз нуќтаи назари ќоидањои синтаксисї дуруст ташаккул ёфта бошад, он гоњ ба таври худкор зинаи форматбандии сатри барнома оѓоз меёбад. Раванди форматбандї аз иловакунї ё њазфи фосилањо (пробелњо), гузаронидани калимањои хидматї (калидї) ба регистри болої (њарфњои калон) ва њамрангсозї дарозии идентификаторњо (номњо) иборат аст.

Зинаи сеюм – ин транслятсия (тарљума/табодули сатри барномавї ба рамзњои мошинї – рамзбандии раќамї/дуї) ва иљрои сатри мазкур тавассути компютер аст. Ва њамин тариќ, компютер пай дар пай сатрњои барномаро аввал ба рамзњои мошинї табдил медињад ва баъд фавран онњоро иљро мекунад.

Агар барномаи мураттабсохтаро дар оянда низ истифода бурданї бошем, он гоњ онро бояд дар шакли парванда (файл) дар диск нигоњ дорем. Барои ин чун њарваќта аз менюи Парванда (File – Файл) банди Нигоњдорї њамчун (Save As – Сохранить как)-ро интихоб кардан лозим аст. Дар натиља дар экран равзанаи робитавї пайдо мешавад, ки бо ёрии он номи парвандаро ба ќайд гирифтан лозим аст. Агар барои барнома њоло ном интихоб накарда бошем, он гоњ он дар муњити QBasic њамчун санади беном – Untitled ба ќайд гирифта мешавад. Дарозии номи парвандаи барнома набояд бештар аз 8 рамз (њарфњои лотинї ва раќамњои арабї) бошад ва њатман бояд аз њарф оѓоз ёбад. QBasic ба номи парвандањои худ ќисми иловагии .BAS-ро њамроњ мекунад. Номи парванда њамчун пешфарз дар љузъдони (папкаи, каталоги, директорияи) љорї нигоњ дошта мешавад. Лекин корбар метавонад парвандаро дар љузъдони дилхоњ сабт намояд. Азбаски парвандаи QBasic њамчун парвандаи матнї ба ќайд гирифта мешавад, пас

Page 56: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

56

онро бо ёрии тањриргари матнии дилхоњ кушодан ва муоина кардан мумкин аст.

Барои сохтани барномаи нав аввал бо тарзи зерин барномаи љориро њазф кардан лозим аст:

тавассути пахши тугмањои ва ба менюи Парванда (File - Файл) гузаштан банди Сохтан (New - Создать)-ро баргузидан

тугмаи -пахш кардан.

Дар натиља, экран аз њама навиштаљот пок мегардад ва дар сарлавњаи равзанаи барнома калимаи Untitled(беном) пайдо мешавад. Барои буруншавї аз муњити QBasic амалиёти зеринро иљро кардан лозим аст:

тавассути пахши тугмањои ва ба менюи Парванда (File - Файл) гузаштан банди Беруншавї (Exit - Выход)-ро баргузидан

тугмаи -ро пахш кардан.

Алифбои забони QBasic-ро шартан ба гурўњњои зерин таќсим кардан мумкин аст:

♦ Њарфњои алифбои лотинї: Aa, Bb, Cc, Dd, Ee, Ff, Gg, Hh, Ii, Jj, Kk, Ll, Mm, Nn, Oo, Pp, Qq, Rr, Ss, Tt, Uu, Vv, Ww, Xx, Yy, Zz

♦ Њарфњои алифбои русї: Аа, Бб, Вв, Гг, Дд, Ее, Жж, Зз, Ии, Йй, Кк, Лл, Мм, Нн, Оо, Пп, Рр, Сс, Тт, Уу ,Фф, Хх, Цц, Чч, Шш, Щщ, ы, ь, Ээ, Юю, Яя

♦ Раќамњои арабї: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

♦ Амалњои арифметикї: +(љамъ), -(тарњ), *(зарб), /(таќсим), ^(бадараљабардорї)

♦ Амалњои ќиёсї: =(баробар), >(калон), >=(калон ё баробар), <(хурд), <=(хурд ё баробар), >< ё <> (нобаробар)

Page 57: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

57

♦ Аломатњои махсус: ( )-ќавсњои доиравї, [ ]-ќавсњои квадратї, %-фоиз, #-диез, $-доллар, !-хитоб, ?-савол, ,-вергул, .-нуќта, ;-нуќта-вергул, “-нохунак, :-баён, ‘-апо-строф, &-амперсанд, @-нарх, _хатча, \-хати моили чаппа, ~-тилда, ٮ-фосила (пробел)

♦ Калимањои хидматї. Вазифаи калимањои хидматиро (ка-лидиро) њангоми истифодаашон маънидод мекунем.

Эзоњ: Њарфњои русиро танњо дар нохунак ё дар мавриди шарњдињї истифода бурдан мумкин аст.

Доимињо дар QBasic ду хел мешаванд: ададї ва сатрї (литерї). Доимињои ададї, дар навбати худ, ба чор намуд таќсим мешаванд:

бутун – пайдарпайии раќамњо аз [-32768, 32767]. Дар мавриди мусбат будани доимї аломати «+»-ро партофтан мумкин аст;

бутуни дароз – пайдарпайии раќамњо аз [-2147483648, 2147483647], ки бо рамзи & тамом мешаванд. Масалан, 9129876587&;

њаќиќї бо сањењии якчанда – ададњои мусбат ё манфї аз [-3.4Е+38, 3.4Е+38], ки нуќтаи дањї доранд. Е – асоси системаи њисоби дањї, яъне 10 аст. Агар ќисми бутуни адад ба сифр (нул) баробар бошад, он гоњ онро партофтан мумкин аст. Масалан, 25.37, -17.05, .125. Дар мавриди аз њад калон ё хурд будани адад, QBa-sic онро бо тарзи экспоненсиалї ифода менамояд. Масалан, 73519000000=7.35191010=7.3519Е+10, 0.00000000217=2.1710-9=2.17Е-9. Ин навъи ададњо на бештар аз 8 раќами эътимоднок доранд. Масалан, адади π =3.1415926822731-ро QBasic њамчун π =3.1415926 та-свир мекунад.

њаќиќї бо сањењии дучанда - ададњо аз [-1.8D+308, 1.8D+308], D=10 аст. Ин навъи ададњои њаќиќї то 15 раќами эътимоднок дошта метавонанд.

Page 58: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

58

Доимии сатрї – пайдарпайии аломатњои дар нохунак гирифташудаи алифбои забон аст. Масалан, «Тољикистони соњибистиќлол», «QBasic», « ». Миќдори аломатњо (рамзњо)

набояд аз 32567-то зиёд бошад.Таѓйирёбандањои Бейсикро ба таѓйирёбандањои сода

ва индексдор људо мекунанд. Номи таѓйирёбанда бо ёрии њарфњои лотинї, раќамњо ва аломатњои махсус сохта шуда, њатман бо њарф сар мешавад ва дарозиаш аз 40 рамз зиёд нест. Масалан, бузургињои a, b, c, … , x, y, z, А1, В3, Z9 таѓйирёбандањои содаанд. Таѓйирёбандањои индексдор бошанд, љузъњои ягон массив (гурўњи бузургињои хосият ва номи ягонадошта) ба њисоб мераванд. Индексњо пас аз номи массивњо дар дохили ќавс навишта мешаванд. Масалан, таѓйирёбандањои индексдори A(α), B(α), k(α), z(α) љузъњои массивњои якченака ва таѓйирёбандањои индексдори r(α,β), q(α,β), G(α,β), H(α,β), m(α,β) љузъњои массивњои дученакаро ташкил медињанд. Дар ин љо A, B, k, z, r, q, G, H, m номи массивњо ва α, β индексњои онњоро ифода менамоянд.

Эзоњ: Тарзи истифодаи массивњоро дар мавзўи алоњида меомўзем.

Њангоми номгузорї калимањои хидматиро истифода бурдан мумкин нест. Масалан, ном наметавонад PRINT ё X1GOTO бошад. Тавсия дода мешавад, ки ба таѓйирёбандањо номњои мазмуннок гузошта шавад. Масалан, ба љойи номи X1 овардани номи X1MAX бењтар аст, гарчанде барои компютер њарду ном њам айнан як таѓйирёбандаро ифода мекунанд.

Таѓйирёбандањои Бейсикро ба мисли доимињояш ба таѓйирёбандањoи ададї (бутун ва њаќиќї) ва сатрї таќсим мекунанд. Намуди таѓйирёбанда вобаста аз намуди ќимати бузургии ќабул мекардагиаш муайян карда мешавад ва бо ёрии пасванди махсус ба ќайд гирифта мешавад:

% - таѓйирёбандаи намуди бутун, масалан, Х%, MAX%

Page 59: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

59

& - таѓйирёбандаи бутуни дароз, масалан, DAROTH&, B&

! - таѓйирёбандаи њаќиќї, масалан, Т!, RAV4! # - таѓйирёбандаи њаќиќї бо сањењии дучанда,

масалан, А# $ - таѓйирёбандаи сатрї, масалан, А1$, RAMTH$.

Масалан, таѓйирёбандањои А1, Х, W5 - њаќиќї, В%, D% - бутун ва А$, В$ - таѓйирёбандањои сатрианд. Ќимати таѓйирёбандањои ададї ягон адад ва сатрї - пайдарпайии рамзњои дар дохили нохунакњо гирифташуда мебошанд.

Њангоми бе пасванд навиштани номи таѓйирёбанда, он њамчун њаќиќии сањењиаш якчанда ќабул карда мешавад. Намуди таѓйирёбандаро бо ёрии оператори DEF низ муайян кардан мумкин аст:

• DEFINT A, K-M. Таѓйирёбандањои номашон бо њарфњои A, K, L, M саршаванда, њамчун таѓйирёбандањои намуди бутун муайян карда мешаванд;

• DEFLNG A, B - бутуни дароз;• DEFSNG A-D - њаќиќии сањењиаш якчанда;• DEFDBL I-L - њаќиќии сањењиаш дучанда;• DEFSTR C, D - сатрї.

L Саволњо:

1. Чї тавр QBasic-ро ба кор омода месозанд?2. Равзанаи QBasic аз кадом ќисмњо иборат аст?3. Барномаи мураттабшуда чї тавр иљро ва дар хотира нигоњ

дошта мешавад? 4. Аз муњити QBasic чї тавр берун мешаванд?5. Алифбои забони барномарезии QBasic аз кадом рамзњо

иборат аст?6. Оё калимањои хидматиро бо њарфњои русї навиштан

мумкин аст?7. Доимї чист ва чанд намуд дорад? Таѓйирёбанда чї?8. Њангоми интихоби номи таѓйирёбанда бояд кадом

ќоидањо риоя шаванд?

Page 60: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

60

6 Супориш:1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Доимињоро баргузинед: а)-25; б)5+11; в)11e+5; г)+100.25;

д)xxv; е)”Наврўз муборак!”; ё)12,23; ж)5/7; з)52; и).371; й)25-eSQR

3. Намуди доимињоро муайян кунед: а)”321”; б)321; в)1375.05; г)5e-4; д)-12; е)1.5D+12

4. Таѓйирёбандањоро баргузинед: а)amir%; б)a+5; в)5d; г)sin(x); д)evro$; е)c%; ё)r!

5. Намуди таѓйирёбандањоро муайян кунед: а)a!; б)alfa%; в)h; г)t#; д)max; е)r$; ё)j3!

6. QBasic-ро ба кор омода созед ва матни ягон барномаро дохил кунед.

7. Аз муњити QBasic берун шавед.

1.2.3. ФУНКСИЯЊОИ СТАНДАРТЇ. ИФОДАЊО

QBasic ба корбари компютер имконияти истифодаи зербарномањои тайёрро, ки дар хазинаи он мањфузанд, фароњам меоварад. Одатан ќисми зиёди чунин зербарномањо барои њисоббарорињои ќимати функсияњои одитарини (эле-ментарии) функсияњои стандартї номидашаванда пешбинї шудаанд. Номгўй ва тарзи навишти онњо дар љадвали 7 оварда шудааст.

Љадвали 7

Номи функсия Дар QBasic Номи функсия Дар QBasic

Синуси x SIN(x) Ќисми бутуни x INT(x)

Косинуси x COS(x) Функсияи аломати x SGN(x)

Тангенси x TAN(x)Партофтани ќисми касрии x

FIX(x)

Арктангенси x ATN(x)Њисобкунии ададњои псевдотасодуфї

RND(x)

Решаи квадратї аз x

SQR(x)Табдилдињии x ба намуди бутун

CINT(x)

Page 61: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

61

Экспонента аз x EXP(x)Табдилдињии x ба намуди њаќиќии сањењиаш якчанда

CSNG(x)

Логарифми натуралї аз x

LOG(x)Табдилдињии x ба намуди њаќиќии сањењиаш дучанда

CDBL(x)

Ќимати мутлаќи x

ABS(x)

Чи хеле ки аз љадвал маълум аст, аргументи функсияи стандартї дар ќавси доиравї навишта мешавад. Ба сифати аргументи функсия ифодаи арифметикии дилхоњро истифода бурдан мумкин аст. Аргументи функсияњои тригонометрї бо радианњо дода ва чен карда мешавад.

Баъзан њангоми њисоббарорињо ёфтани ќимати ифода-њое талаб карда мешавад, ки дар таркиби онњо функсияњои мураккаб мављуд аст. Агар масъала њисоб кардани ќимати функсияњои мураккаб ва ё функсияњои одитаринеро талаб кунад, ки номи онњо дар рўйхати функсияњои љадвали 7 мављуд набошад, он гоњ чунин функсияњоро аввал бо ёрии функсияњои љадвалї табдил ва баъд дар ифода мавриди истифода ќарор додан зарур аст. Дар љадвали 8 барои баъзе функсияњо формулањои айниятї оварда шудаанд.

Љадвали 8

Номи функсияњо Айниятњо Соњаи муайянї

Секанси x sec x=1/cos x

Косеканси x cosec x=1/sin x

Котангенси x

Арксинуси x arcsin ;

Арккосинуси x

Арккотангенси x

Логарифми N аз рўи асоси a

logaN=ln N/ln a

Дар Бейсик се намуди ифодањоро фарќ мекунанд: арифметикї, рамзї ва мантиќї. Ифодаи арифметикї бо ёрии

,...2,1,0,2/ ±±=+≠ kkx πππkx ≠πkx ≠

,...2,1,0 ±±=k 11 ≤≤− õ

11 ≤≤− õ

∞<<∞− x

1,0, ≠> aNa

)1/(2/ 2xxarctgõarccos −−= π

)1/( 2xxarctgx −=

tgxctgx /1=

arctgxarcctgx −= 2/π

Page 62: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

62

доимињо, таѓйирёбандањо, функсияњои математикї, амалњои арифметикї ва инчунин ќавсњои доиравї сохта мешавад. Дар њолати хусусї таѓйирёбанда, доимї ё функсияи алоњида низ ифодаи арифметикї шуда метавонад.

Амалњои арифметикии ифода мутобиќи бартарияти нисбат ба њамдигар доштаашон аз тарафи чап ба рост иљро мешаванд, яъне аввал амалњои бадараљабардорї, баъд зар-бу таќсим ва сонї љамъу тарњ. Тартиби ќабулшудаи иљрои ин амалњоро бо истифодаи ќавсњо таѓйир додан мумкин аст. Амалњои дараљаашон якхела (масалан зарбу таќсим ё љамъу тарњ) пай дар пай аз чарафи чап ба рост иљро карда мешаванд. Агар дар ифода функсияњо (стандартї ё ѓайристандартї) истифода шуда бошанд, он гоњ дар навбати аввал ќимати онњо њисоб карда мешавад ва баъд амалњои боќимонда иљро мегарданд.

Дар барномаи QBasic тарзи навишти сатрии ифодањои арифметикї ќабул шудааст, яъне индексњои поёнї ё болоиро низ дар њудуди сатр љой додан лозим аст. Масалан, ифодаи математикии 2sin x2+r

i дар QBasic бо тарзи 2*sin(x^2)+r(i)

навишта мешавад. Аломати зарби байни зарбшавандањоро партофтан мумкин нест, масалан, ифодаи 3x-ро њатман дар шакли 3*x бояд навишт. Пай дар пай навиштани ду амали арифметикї низ мамнўъ аст. Масалан, ифодаи –ba-ро танњо дар шакли –b*a ё a*(-b) навиштан мумкин аст, вале њамчун a*-b на. Миќдори ќавсњои кушодаи ифода бояд бо миќдори ќавсњои пўшидаи он баробар бошад.

Мисол: Ифодаи математикии carctgbxxssin

ln += дар Бейсик бо тарзи s=sqr(x*log(x))+(atn(b)/sin(c)) ва ифодаи

axexxY +

+

=

5cos

5sin бошад,

њамчун y=sin(x/5)+cos(x/5)+exp(sqr(a*x)) навишта мешавад.

Баъзе мисолњои дигари ифодањои арифметикї дар љадвали 9 оварда шудаанд.

Ифодаи сатрї (литерї) ба воситаи доимињо, таѓйирёбандањо, функсияњо ва аломати амали сатрї сохта

Page 63: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

63

мешавад. Дар Бейсик танњо як амали сатрї пешбинї шудааст, ки онро амали пайвасткунии (конкатенатсия) бузургињои сатрї меноманд. Ин амал бо ёрии аломати «+» ишорат карда мешавад. Масалан, ќимати ифодаи сатрии “БАР”+”НО”+“МА” матни «БАРНОМА»-ро ташкил медињад. Дар баъзе намунањои Бейсик барои коркарди бузургињои сатрї (матнї) як ќатор функсияњои махсус пешбинї шудаанд. Масалан:

• LEN(a) – дарозии матни а-ро њисоб мекунад.• VAL(а) – ќимати сатрии а-ро ба раќамњои мувофиќи

дањї табдил медињад.• MID(a,m,n) – ќисми бузургии сатрии а-ро, ки дарозиаш

ба n аломат баробар аст, аз аломати m-умаш сар карда, људо мекунад.

Ифодаи мантиќї бо ёрии ифодањои арифметикї, сатрї, ќиёсї, амалњои мантиќии And, Or, Not ва ќавсњои доиравї сохта мешавад. Ќимати ифодаи мантиќї метавонад танњо њаќ (True) ва ё дурўѓ (False) бошад. Дар QBasic ќимати њаќ ба 1 ва дурўѓ ба 0 баробар њисобида мешавад. Ифодањои ќиёсї њолати хусусии ифодањои мантиќиянд. Онњо бо ёрии ду ифодаи арифметикї ва яке аз амалњои ќиёсии (нисбии) <, >, <=, >=, =, <> сохта мешаванд.

Њангоми њисобкунии ќимати ифодаи мантиќї дар навбати аввал амали Not, сипас And ва дар навбати охир Or иљро мегардад. Масалан, ќимати ифодаи мантиќии Not х≥а And х≤в дар мавриди х=1, а=2, в=3 будан ба 1 баробар аст.

Page 64: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

64

Љадвали 9Навишти

математикїНавишт дар QBasic L Саволњо:

1. Кадом функсияро функ-сияи стандартї меноманд?

2. Ченаки аргументи функ-сияи тригонометрї чї ном дорад?

3. Тартиби иљрои амалњои ифодањоро номбар кунед. Оё ин тартибро таѓйир додан мумкин аст?

4. Ифодањои Бейсик ка-домњоянд ва онњо чї тавр сохта мешаванд?

5. Аз функсияњои стан-дартии EXP*B; COS(30); ABS(2,6); ТN*1; SQR5^2 кадомашон бехато навишта шудааст?

(A*X+B)/(C*X+D)

sin2x SIN(X)^2

sin x2 SIN(X^2)

( )3 25+x (X+5)^(2/3)

|x–0.25| EXP(ABS(X-0.25))

5-3 1/5^3

b≤ 0 B<=0

ax2+bx+c A*X^2+B*X+C

lnx<2sin x LOG(X)<2*SIN(X)

6 Супориш:1. Њангоми х=2, y=3 ва а=5 будан, ќимати ифодањои мантиќиро њисоб

кунед: (х<=2)Or(Not(a+x^2=y^2)); х*y>a*(х+y)And(Int(y/х)=y-х)

2. Ифодањоро дар QBasic нависед: a)a2+b2; b) ; c)5ctg2x2; d)bax+b; e)-b+ ab2

3

3. Ифодањои мухолифи ќоидањои навишти QBasic-ро нишон дињед: a)-b± (b2-4*a*c); b)a^2+b^2-2a*b*cos(c); c)a+-b/c; d)Abs(x^2-y^2-2.25); e)SQR(a+24); f)cos(a2-1); g)Abs(-15*a); h)ln(2-a)

4. Ифодањои зеринро ба намуди муќаррарї биёред: a)a^2+b^2-2*a*b*cos(c); b)a*h/2; c)Sqr((x2-x1)^2+(y2-y1)^2); d)3^(4^5); e)(a+b)/2*c; f)(-b+Sqr(b^2-4*a*c))/2/a

1.2.4. ОПЕРАТОРЊОИ ДОХИЛКУНЇ

Тавре ќайд кардем, барнома дар забони QBasic аз пайдарпайии сатрњо иборат аст. Њар як сатр метавонад як ё якчанд операторро дар бар гирад. Операторњои сатр аз њамдигар бо ёрии аломати «:» људо карда мешаванд.

Њангоми иљрои барнома бояд ќимати аввалаи њамаи таѓйирёбандањои дар он истифодашаванда пешакї маълум бошад. Ин амалиётро бо ёрии гурўњи операторњои дохилкунї амалї гардонидан мумкин аст. Яке аз ин гуна

e

Page 65: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

65

операторњо оператори Let ё оператори бахшиш ном дорад, ки намуди умумии он чунин аст:

[n:] [Let] таѓйирёбанда = ифода

Дар ин љо n – раќами сатр, Let (бигузор) – калимаи калидї, таѓйирёбанда – номи таѓйирёбандаи мављуда ё нав ва ё љузъи массив, = – аломати бахшиш ва ифода – ифодаи сатрї ё арифметикї ва ё мантиќї мебошанд. Калимаи Let, ки дар ќавси квадратї навишта шудааст, љузъи њатмии оператори бахшиш ба шумор намеравад, яъне ин оператор бе њамин калима низ пурра иљро мегардад. Раќами сатр низ њатмї нест. Ќавсњои квадратї дар оянда низ бо њамин маъно истифода мешаванд.

Дар натиљаи иљрои оператори бахшиш, ифодаи тарафи рости аломати бахшиш њисоб карда шуда, ќимати он ба таѓйирёбандаи тарафи чап бахшида мешавад.

Мисоли 1: LET А=1LET В=2Х=А+ВLET X=X^2+COS(X)-0.2Z=-7.514R$=“Ному насаб”

Операторњои сатрњои якум ва дуюм ба таѓйирёбандањои А ва В мувофиќан ададњои 1 ва 2-ро мебахшанд. Дар натиљаи иљрои оператори сатри 3, ќимати ифодаи А+В њисоб карда мешавад ва натиљаи он, яъне 3 ба таѓйирёбандаи Х бахшида мешавад, ки он дар оператори навбатї мавриди истифода ќарор дода мешавад.

Дар оператори бахшиш бояд намуди таѓйирёбанда ва намуди ќимати натиљавии њисобшудаи ифода ба њамдигар мувофиќат кунанд. Масалан, дар навишти операторњои

K$=4I%=13.47L=”ВАЌТ”

Page 66: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

66

ба ѓалатњо роњ дода шудаанд. Агар зарурати ба таѓйирёбандаи як намуд бахшидани ќимати ифодаи намуди дигар пеш ояд, он гоњ намуди ќимати ифода ба намуди таѓйирёбанда табдил дода мешавад. Масалан, дар натиљаи иљрои оператори А%=1.75 таѓйирёбандаи А% соњиби ќимати 2 мегардад, чунки пеш аз бахшидани адади 1.75 ба таѓйирёбанда, аввал оператор онро то адади бутун, яъне 2 яклухт менамояд ва баъд ба А% мебахшад.

Агар пайдарпайии операторњои Х=5 : Х=Х+4 дода шуда бошанд, он гоњ ќимати охирони Х ба 9 баробар хоњад шуд, яъне оператори бахшиши дуюм ба ќимати аввалаи таѓйирёбандаи Х, ки ба 5 баробар аст, адади 4-ро зам намуда, натиљаро аз нав ба Х мебахшад.

Мисоли 2: Барномае тартиб медињем, ки он масоњати росткунљаи тарафњояш а ва b-ро њангоми а=2м ва b=3м будан њисоб намояд ва натиљаро бе нишондињии воњиди масоњат ба экран барорад:

A=2B=3S=A*BPRINT "Масоњат=";S

Баъди иљрои ин барнома дар экран ибораи Масоњат=6 пайдо мешавад. Ибораи мазкур тавассути оператори Print ба экран бароварда мешавад, ки ба омўзиши он дар дарсњои оянда шурўъ менамоем. Вале, тавре аз мазмуни ин барнома бармеояд, масоњати росткунља - S танњо барои ќимати тарафњояш A=2м ва B=3м њисоб карда мешаваду халос. Барои њосил намудани дигар ќиматњои S ба мо лозим меояд, ки ба сатрњои якум ва дуюми барнома таѓйирот ворид созем. Чї бояд кард, ки ин барнома бе воридсозии таѓйирот барои ќиматњои дилхоњи таѓйирёбандањои А ва В натиљањои заруриро пешкаш намояд? Илољи њалли масъала мављуд аст. Барои ин дар забони барномарезии Бейсик оператори махсуси дохилкунї - Input пешбинї шудааст, ки намуди умумии он чунин аст:

Page 67: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

67

[n:] Input [тавзењот] рўйхати таѓйирёбандањо

Дар ин љо n - раќами тартибии сатр, тавзењот - доимии рамзии дилхоњ ва рўйхати таѓйирёбандањо - пайдарпайии номи таѓйирёбандањоро ифода мекунанд. Номи таѓйирёбандањо аз њамдигар ба воситаи аломати вергул људо карда мешаванд.

Ин операторро бештар дар рељаи робитавї (диалогї) истифода мебаранд. Масалан, њангоми иљрои оператори Input А,В,С дар экран рамзи ? пайдо мешавад ва раванди иљрои барнома муваќќатан ќатъ мегардад. Ин маънои онро дорад, ки корбари компютер бояд бо ёрии сафњакалид барои љузъњои рўйхати таѓйирёбандањо - А, В, С ќиматњои мувофиќро дохил намояд. Агар корбар пас аз рамзи ? ададњои 4, 6, 10-ро дохил намояд ва тугмаи Enter-ро пахш кунад, он гоњ таѓйирёбандаи А соњиби ќимати 4, В - соњиби 6, С - соњиби 10 мешаванд ва пас аз он барнома ба кори худ идома мебахшад. Дар мавриди номувофиќатии миќдори ќиматњои дохилшаванда бо миќдори таѓйирёбандањои рўйхат, дар экран маълумоти зарурї оид ба навъи ѓалати содиршуда пайдо мегардад.

Оператори Input имконият медињад, ки барои осонии кор, пеш аз дохилкунии ќимати таѓйирёбандањо ба экран матнњои ёрирасон бароварда шаванд. Матни ёрирасонро пеш аз рўйхати таѓйирёбандањо дар дохили нохунакњо љойгир мекунанд ва пас аз он аломати нуќта-вергул мегузоранд. Масалан, њангоми иљрои операторњои

INPUT "Ќимати А-ро дохил кунед"; А

INPUT "Ќимати В-ро дохил кунед"; В

дар экран мувофиќан маълумотњои зерин пайдо мешаванд:

Ќимати А-ро дохил кунед ? 5

Ќимати В-ро дохил кунед ? 10

Page 68: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

68

Мисоли 3: Тарзи иљрои барномаи зеринро дида мебароем:

INPUT "К="; К INPUT "М="; М Н=К+М PRINT "Н="; Н

Тугмаи F5-ро пахш мекунем, дар экран матни К=? пайдо мешавад. Адади 25-ро дохил мекунем, дар экран матни М=? пайдо мешавад. Адади 30-ро дохил мекунем. Дар натиља компютер ба таѓйирёбандаи К ќимати 25 ва ба М ќимати 30-ро мебахшад. Дар сатри сеюм суммаи таѓйирёбандањои К ва М њисоб карда шуда, натиљаи он, яъне 55 ба таѓйирёбандаи Н бахшида мешавад. Сатри чорум ифодаи Н=55-ро ба экран мебарорад.

Бо назардошти ин гуфтањо барномаи дар мисоли 2 овардашударо, барои њисобкунии масоњати росткунљаи тарафњояш а ва b-и дилхоњ, дар шакли зерин пешкаш кардан мумкин аст:

INPUT "А ва В-ро дохил кунед"; А,ВS=A*BPRINT "Масоњат="; S

Операторњои Read, Data ва Restore. Гарчанде њангоми истифодаи оператори Input ќимати таѓйирёбандањои рўйхат тавассути сафњакалид дохил карда шаванд њам, вале дар QBasic имконияти бевосита дар матни барнома љойгир кардани ин ќиматњо мављуд аст. Барои амалишавии ин маќсад љуфти операторњои Read ва Data хизмат мерасонанд, ки намуди умумии онњо чунин аст:

[n:] Read рўйхати

таѓйирёбандањо

[m:] Data рўйхати додањо

Дар ин љо чун њарваќта n ва m – раќами сатрњо, Read (хон-дан), Data (додањо) - калимањои хидматї мебошанд.

Page 69: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

69

Мањз оператори Data имконият фароњам меоварад, ки додањоро пешакї дар барнома љойгир намоем. Оператори Read бошад, ба таври худкор, пай дар пай, аз рўйхати оператори Data ин додањоро ба таѓйирёбандањои рўйхати худ мебахшад. Љузъњои рўйхати ин операторњо ба воситаи вергул људо карда мешаванд. Дар як барнома миќдори дилхоњи ин ду операторро истифода бурдан мумкин аст.

Data аслан оператори иљронашаванда аст ва бе истифодаи оператори Read ягон маъное надорад. Ба воситаи ин оператор маљмўи додањо сохта мешавад. Ин операторро дар сатри дилхоњи барнома љой додан мумкин аст. Гарчанде якчанд операторњои Data-ро пайдарпай навиштан шарт на-бошад њам, вале чун одат онњоро дар аввал ё охири барнома меоранд. Масалан, дар натиљаи иљро шудани сатрњои

Read A,B,C$

DATA 5,7,“Информатика”

ба таѓйирёбандањои A, B, C$ мувофиќан ќиматњои 5, 7, Информатика бахшида мешаванд.

Миќдори додањои оператори Data аз миќдори таѓйирёбандањои оператори Read бояд кам набошад, ва-гарна дар экран маълумоти Out of Data (додањо кифоягї намекунанд) пайдо мешавад. Дар мавриди номувофиќатии намуди додањо бо намуди таѓйирёбандањо низ дар экран маълумот оид ба навъи ѓалати содиршуда пайдо мегардад.

Мисоли 4:

DATA 5, 10, 9READ M, N, TLET Y=M+N-TPRINT Y

Дар ин барнома чор оператор – Data, Read, Let ва Print истифода шудаанд. Мувофиќи ду оператори аввала ба таѓйирёбандаи M ќимати 5, ба N ќимати 10 ва ба T ќимати 9 бахшида мешавад. Дар сатри сеюми барнома ќимати Y њисоб ва дар сатри чорум он ба чоп дода мешавад.

Page 70: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

70

Мисоли 5: Бо ёрии оператори INPUT (намунаи 1) ва операторњои READ, DATA (намунаи 2) барномањое месозем, ки онњо ќимати ифодаи 4a2+b+c –ро њангоми а=3, b=6 ва с=-1 будан њисоб кунанд.

Намунаи 1 Намунаи 2

INPUT A, B, CPRINT 4*A^2+B+CRUN? 3, 6, -141

DATA 3, 6, -1READ A, B, CPRINT 4*A^2+B+CRUN 41

Мисоли 6: Барномаи њисобкунии масоњати секунљаи тарафњояш a=13, b=14, c=15-ро бо ду метод тартиб медињем.

Намунаи 1 Намунаи 2

INPUT A, B , C P= (A+B+C)/2 S=SQR(P*(P-A)*(P-B)*(P-C)) PRINT “S=”;S run ? 13, 14, 15 S=84

READ A, B , C P=(A+B+C)/2 S=SQR(P*(P-A)*(P-B)*(P-C)) PRINT “S=”;S DATA 13 DATA 14 DATA 15

Баъзан лозим меояд, ки додањои дар оператори Data овардаро такроран дар барнома истифода барем. Ин корро бо ёрии оператори Restore анљом додан мумкин аст, ки

намуди умумии он чунин аст:

[m:] Restore [n]Дар ин љо Restore (барќароркунї) - калимаи хидматї, m – раќами сатрест, ки дар он оператори Restore љойгир аст, n - раќами сатрест, ки дар он оператори Data љойгир аст.

Њангоми иљрои ин оператор идоракунї ба сатри n-уми барнома дода мешавад, ки дар он бояд ягон оператори Data мављуд бошад. Додањои рўйхати ин операторро оператори навбатии Read такроран истифода мебарад. Агар раќами n мављуд набошад, он гоњ Restore идоракуниро ба аввалин оператори Data медињад. Масалан, дар натиљаи иљрои ќитъаи барномаи зерин

Page 71: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

71

Read A, B, CData 8, 10, 15………………..RestoreRead X,Y

ба таѓйирёбандањои А, В, С мувофиќан ќиматњои 8, 10, 15 ва ба таѓйирёбандањои Х, Y низ такроран ќиматњои 8 ва 10 бахшида мешаванд.

L Саволњо:

1. Кадоме аз зеринњо оператори бахшиш шуда метавонад?а)x+1=x; b)x:=x+1; c)x=x-2; d)-t=k2-4ac; e)y=-y; f)y=sin(x)

2. Оператори x=x+1 чї тавр иљро мешавад?3. Вазифаи оператори Input аз чї иборат аст?4. Дар оператори Input бо кадом маќсад аз тавзењот

истифода мебаранд?5. Операторњои Data ва Read чї тавр иљро мешаванд?6. Барои ба таѓйирёбандањо бахшидани ќимати бузургињо

истифодаи операторњои Data ва Read мувофиќ аст ё оператори Input?

6 Супориш:1. Пас аз иљрои операторњои зерин ќимати таѓйирёбандањои

x ва y ёфта шавад: x=1 : y=2 : x=y : y=x

2. Ќиматњои таѓйирёбандањои x ва y мувофиќан ба 2 ва 5 баробар аст. Ќимати нави онњоро пас аз иљрои операторњои бахшиш муайян кунед: a)x=x+1: y=-2; b)x=5 : y=-y; c)x=x+y : y=x-e; d)x=x^2+y : y=y^2; e)t=x : x=y : y=t

3. Барномаи дар мисоли 1 овардашударо бо истифодаи оператори INPUT табдил дињед.

4. Бо истифодаи операторњои Data ва Read барномаи њалли муодилаи хаттии у=ах-ро тартиб дињед.

5. Барномаи њисоб кардани масоњати доираи радиусаш r-ро тартиб дињед.

6. Бо њамроњии омўзгор аз операторњои Data ва Read истифода бурда, барномае созед, ки он масофаи байни ду

Page 72: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

72

нуќтаро аз рўйи координатањояшон њисоб кунад.7. Блок-наќша ва барномаи њисобкунии суръатро аз рўйи

додањои ибтидоии ваќт ва масофа тартиб дињед.

1.2.5. ОПЕРАТОРЊОИ ХОРИЉКУНЇ

Оператори Print. Барои ба экран баровардан ва дар коѓаз чоп намудани натиљањои кори барнома оператори Print (чоп кардан), ки онро оператори хориљкунї низ мегўянд, хизмат мерасонад. Ин оператор на танњо барои хориљкунии натиљањои нињої, балки натиљањои мобайнї, ќимати буругињои додашуда, матнњои тавзењї, сатрњои холї ва ѓайра истифода бурда мешавад. Бо тарзи кори ин оператор мо ќисман шинос њастем. Намуди умумии он дар Бейсик чунин аст:

[n:] Print рўйхати бузургињои хориљшаванда

Љузъи рўйхати бузургињои хориљшавандаро доимї, таѓйирёбанда, функсия ва умуман ифодаи дилхоњ ташкил карда метавонад. Барои аз њамдигар људо кардани љузъњо аломатњои вергул (,) ё нуќта-вергулро (;) истифода мебаранд. Масалан, њангоми иљрои барномаи зерин

А=2 : В=3 : С=5PRINT A,B,C

компютер ба воситаи операторњои бахшиши сатри якум ба таѓйирёбандањои a, b ва c мувофиќан ќиматњои 2, 3 ва 5- ро бахшида, ба воситаи оператори хориљкунии сатри дуюм ин ќиматњоро мувофиќи тартиби дар оператори Print нишондодашуда ба экран мебарорад. Пас аз иљрои барнома мо дар экран чунин натиљаро дида метавонем:

2 3 5

Агар дар сатри дуюми барнома аломати вергулњоро бо нуќта – вергулњо иваз намоем, он гоњ дар экран натиљаи

зеринро мебинем:

Page 73: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

73

2 3 5

Фарќи оператори PRINT A,B,C аз оператори PRINT A;B;C дар он аст, ки дар мавриди якум натиљањо дар фосилаи муайян (барои њар кадомаш 14 мавќеъгї) ва дар мавриди дуюм наздик чоп карда мешаванд. Масалан, њангоми иљрои барномаи

А=10Х=15К=А+ХPRINT К,А;Х

дар экран натиљањо бо тарзи зерин љойгир мешаванд:

25 10 15

Агар сатри чоруми ин барномаро бо сатри

PRINT A+X,A,X/3

иваз кунем, он гоњ дар экран чунин натиљањо инъикос

мешаванд:

25 10 5Аз тарзи кори ин оператор маълум мешавад, ки

оператори хориљкунї метавонад аввал ќимати ифодаро њисоб кунад ва баъд онро чоп намояд. Агар аломати вергул пеш аз рўйхати хориљкунї гузошта шавад, он гоњ натиљањо аз мавќеи 14-уми сатр сар карда, чоп мешаванд. Масалан, натиљаи кори оператори PRINT , А; Х, К сатри зерин аст:

10 15 25Акнун барномаи болоиро чунин табдил медињем:

A=10X=15K=A+XPRINT “ A=”;APRINT “ X=”;XPRINT “ A+X=”;A+X

Дар натиљаи иљрои ин барнома сатрњои зерин дар экран

пайдо мешаванд:

Page 74: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

74

А=10Х=15А+Х=25

Њамин тариќ, сатри хориљкунии экрани дисплей ба 5 мавзеъ, ки њар кадомаш дорои 14 мавќеъ аст, таќсим шудааст. Мавзеъњо аз мавќеъњои 1, 15, 29, 43 ва 57-ум оѓоз меёбанд:

Мавзеи 1 Мавзеи 2 Мавзеи3 Мавзеи 4 Мавзеи 5

1 15 29 43 57

Оператори Print натиљањоро дар экран аз мавќеи аввалини сатри нав сар карда, хориљ мекунад. Лекин дар Бейсик имконияти давом додани хориљкунї дар сатри ба оператори пешинаи Print тааллуќдошта мављуд аст. Барои ин кофист, ки дар охири рўйхати хориљкунии оператори пешинаи Print аломати вергул ё нуќта-вергул гузошта шавад. Масалан, натиљаи кори барномаи

X=5Print X;X^2,Print X;X^3

сатри зерин аст:

5 25 5 125

Корбар метавонад барои осонии кораш, њангоми дохилкунии матни барнома, калимаи Print-ро бо рамзи

? иваз намояд. Пас аз пахши тугмаи QBasic ба таври худкор рамзи ?-ро ба калимаи Print табдил медињад.

Агар пас аз калимаи Print рўйхати хориљкунї нишон дода нашавад, он гоњ дар экран сатри холї партофта мешавад. Масалан, натиљаи кори операторњои

PRINT « A=»; A:?? « X=»;X:?:?

...............

Page 75: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

75

PRINT « A+X=»;A+X

сатрњои зерини экран мебошанд:

А=10

Х=15

А+Х=25

Масъалаи 1: Бо ёрии операторњои Let, Input, Read ва

Data се тарзи њисобкунии масоњати трапетсияро ( hbaS2+

= ) барномарезї кунед:

Let Input Read ва Data

A=2:B=6:Н=4.5 S=(A+B)/2*HPrint“S=”;S

Input A,B,НS=(A+B)/2*HPrint “S=”;S

Read A,B,НData 2,6,4.5S=(A+B)/2*HPrint “S=”;S

Оператори Print Using. Намуди умумии ин оператор чунин аст:

[n:] Print Using “формат”; рўйхати бузургињои хориљшаванда

Дар ин љо Print Using (чоп бо истифода аз) - калимаи хидматї ва формат - ифодаи сатрї – формати чопи бузургињои рўйхат мебошад.

Оператори Print Using имконият медињад, ки тарњи аниќи ќимати хориљшавандаи љузъи алоњидаи рўйхат офарида шавад ва барномарез тавассути ќоидањои махсуси Бейсик раванди хориљкунии ќимати бузургињоро мувофиќи табъи худ ба танзим орад. Њангоми истифодаи оператори муќаррарии Print бошад, имкониятњои барномарез хеле мањдуданд. Вай дар ин маврид метавонад раванди

Page 76: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

76

хориљкуниро танњо ба воситаи вергул ё нуќта-вергул идора намояду халос.

Формати хориљкунии бузургињои рўйхати оператори Print Using бо ёрии спетсификаторњо (рамзњои махсус) ташаккул дода мешавад. Онњо аз њамдигар бо ёрии вергул, фосилаи рамзї ё фосилаи љадвалї људо карда мешаванд.

Љадвали 10Рамз Вазифаи рамз Рамз Вазифаи рамз

#Мавќеъбандии разрядњои адад

$$Ишораи аломати доллар пеш аз адад

.Ишораи нуќтаи дањї

^^^^ Ишораи формати дараљавї

/Људокунии синфи разрядњо бо ёрии вергул

& Чопи пурраи ифодаи рамзї (матн)

+Ишораи аломати плюс

! Чопи рамзи якуми ифодаи сатрї

-Ишораи аломати минус

\n\Чопи n+2 рамзи аввалаи ифодаи сатрї (n - миќдори фосилањои рамзї)

Масалан, дар натиљаи иљрои барномаи:Print “Чопи адади 18,45 аз рўи формат”X!= 18.45Print Using “####”;X!Print Using “####.#”;X!Print Using “###.###”;X!

сатрњои зерин дар экран пайдо мешаванд:

Чопи адади 18,45 аз рўйи формат

18

18.5

18.450Азбаски дар формати оператори якуми Print Using нуќтаи дањї вуљуд надорад, бинобар он танњо ќисми бутуни адади 18,45 аз чоп баромадааст. Дар формати оператори дуюм бошад, пас аз нуќта якто рамзи # омадааст. Барои њамин

Page 77: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

77

њам, њангоми чоп, пас аз нуќта як раќами эътимоднок ба њисоб гирифта шуда, адад яклухт карда шудааст. Дар формати оператори сеюм пас аз нуќта сето рамзи # омадааст. Бинобар он њангоми чоп пас аз нуќта се раќами эътимоднок ба њисоб гирифта шуда, адади 18,45 дар шакли 18,450 аз чоп баромадааст.

Агар миќдори раќамњои эътимодноки адад (пас аз вергул) нисбат ба рамзњои формат камтар бошад, он гоњ мавќеъњои холї бо сифр пур карда мешаванд. Агар ќисми бутуни адад дар формати додашуда наѓунљад, он гоњ (њангоми чоп) пеш аз ќимати адад рамзи % илова карда мешавад. Масалан, дар натиљаи иљрои оператори Print Using “###.#”;7890.68 дар экран сатри %7890.7 инъикос мегардад.

Дар натиљаи иљрои барномаи:

A=-15.725 : B=625Print Using “###.### ###”;A;BPrint Using “A=###.###^^^^ B=###”;A;BX$=“Tojikiston”Print Using “!”;X$Print Using “&”;X$ Print Using “\ \”;X$ Print Using “& - kishvari man”;X$

дар экран сатрњои зерин пайдо мешаванд:

-15.725 625

A=-15.725E+00 B=625

T

Tojikiston

Tojik

Tojikiston kishvari man

L Саволњо:

1. Вазифаи оператори Print аз чї иборат аст? Print Using чї? Онњо аз њамдигар чї фарќ доранд?

Page 78: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

78

2. Кадом бузургињо метавонанд љузъи рўйхати хориљкунии операторњои Print ва Print Using бошанд?

3. Чї тавр барномаро бояд тартиб дод, ки натиљањо дар сатрњои гуногун чоп шаванд?

4. Пас аз иљрои операторњои зерин дар экран кадом сатрњо пайдо мешаванд?а) PRINT 10+3^2б) PRINT "t=";7*3в) PRINT, " Синфи ";6," мактаби № ";12

5. Њангоми иљрои оператори Print А,В;C ќимати таѓйирёбандањо дар кадом мавзеъњо чоп мешаванд? Агар вергул бо нуќта-вергул иваз карда шавад чї?

6. Натиљаи иљрои оператори Print 5+Sqr(36),7*8,100/10*5,“-Муодила” чист? Натиљаи кори операторњои a$=”Мисоли” : t=27 : k=2 : x=72 : Print Using “Варианти ## & #”;t;a$;k : Print Using “ Љавоб: ###.##”;x чї?

6 Супориш:

1. Барномае тартиб дињед, ки баъди иљрои он дар экран чор мисраъ шеъри дўстдоштаатон чоп шавад.

2. Барои додањои а, в ва х ќимати ифодањои К ва L-ро бо тарзњои зерин њисоб ва чоп кунед: а)бо ёрии оператори Let, в)бо ёрии оператори Input, с)бо ёрии оператори Read ва Data.

1.2.6. ОПЕРАТОРЊОИ ЁРИРАСОН. БАРНОМАЊОИ ХАТТЇ

Оператори Rem. Калимаи калидии Rem шакли кўтоњкардашудаи калимаи англисии remark буда, маънояш тавзењ (шарњ, эзоњ) аст. Оператори Rem оператори њатмии Бейсик нест. Вай дар барнома ягон амалиётро иљро наменамояд. Ин оператор танњо барои шарњдињии мазмуни ќисмњои гуногуни барнома хизмат мекунад. Тавзењот пас аз калимаи Rem навишта мешавад. Намуди умумии оператор чунин аст:

Page 79: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

79

[n:] Rem тавзењот

Дар ин љо n – раќами сатр ва тавзењот – пайдарпай-ии рамзњои дилхоњи забони Бейсик аст. Дар як барнома миќдори дилхоњи ин операторро истифода бурдан мумкин аст. Масалан:

REM Масоњати секунља: Формулаи Герон

rem Операторњои Бейсик Оператори End (интињо) ишораи охири кори барнома

аст. Пас аз иљрои ин оператор компютер ба барномаи љорї њусни анљом мебахшад. Оператори End одатан дар сатри охирони барнома меояд.

Оператори Stop (истодан) барои муваќќатан боздоштани раванди иљрои барнома хизмат мерасонад. Барои давом додани кори барнома аз фармони RunCon-

tinue ё тугмаи истифода бурдан кифоя аст. Мувофиќи зарурати алгоритмї онро дар сатри дилхоњи барнома љой додан мумкин аст.

Оператори Cls (Clear Screen - тозакунии экран) барои аз њама гуна навиштаљот пок намудани экран хизмат мерасонад.

Барномањои хаттї. Агар алгоритми њалли масъала хаттї бошад, он гоњ барномаи ба он мувофиќро низ хаттї мегўянд. Операторњои ин гуна барномањо пай дар пай (бо навбат) иљро мешаванд.

Мисоли 1: Алгоритм ва барномаи аз решаи квадратї

баровардани ададњои мусбатро тартиб медињем.

Алгоритм Барнома

алг Азрешабарорї (њаќ х, у) арг х нат у ибт

у := инт

REM Азрешабарорї

INPUT X

PRINT “Y=”;SQR(X)

END

Page 80: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

80

Сатри якум (оператори Rem), њамчун сатри сарлавња, мазмуну мундариљаи барномаро шарњ медињад. Ба воситаи сатри дуюм (оператори Input) ба таѓйирёбандаи Х ќимат бахшида мешавад. Ќимати ин таѓйирёбандаро танњо пас аз дар экран пайдо шудани аломати ? дохил намудан мумкин аст. Оператори Print (сатри сеюм) ќимати решаи квадратї аз Х-ро њисоб менамояд ва ба экран мебарорад. Дар экран ин натиља њамчун ќимати таѓйирёбандаи Y намудор мешавад. Сатри чорум (оператори End) баохиррассии барномаро нишон медињад. Тавре ки дида мешавад, операторњои барномаи мазкур бо навбат (дар намуди хаттї), яке аз паси дигар иљро мешаванд.

Мисоли 2: Алгоритм ва барномаи њисобкунии масоњати сатњ ва њаљми силиндри диаметраш d ва баландиаш h-ро тартиб медињем.

Алгоритм Барнома

алг Силиндр (њаќ d, њаќ S,V) арг d,h нат S,V ибт њаќ PI PI:=3,1416 S:= PI•(d/2+h) V:= PI•d2•h/4 инт

REM Силиндр PI=3.1416INPUT D,НLET S=PI*(D/2+H)LET V=PI*D^2*H/4P R I N T “S=”;S,“V=”;VEND

Дар барномаи мазкур сатри якум барои муайянкунии мазмуни барнома, сатри дуюм барои ба таѓйирёбандаи PI бахшидани ќимати доимии π(пи), сатри сеюм барои дохилкунии ќимати ибтидоии таѓйирёбандањои D ва H хизмат мерасонад. Бо ёрии сатрњои чорум ва панљум мувофиќан масоњати сатњ ва њаљми силиндр њисоб карда мешавад. Сатри шашум барои хориљкунии ќимати таѓйирёбандањои S ва V ва сатри њафтум барои анљом бахшидани кори барнома пешбинї шудааст. Масалан, њангоми D=0,6 ва H=1 будан, компютер натиљањои S=2.4504422698 V=.28274338823-ро ба экран мебарорад.

Page 81: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

81

Мисоли 3: Барномаи дар мисоли 2 овардашударо бо истифодаи операторњои Data ва Read табдил медињем.

REM СилиндрPI=3.1416READ D,НLET S=PI*(D/2+H)LET V=PI*D^2*H/4PRINT “S =”;S,“V =”;V

DATA 0.6,1Њангоми иљрои ин барнома таѓйирёбандањои D ва

H мувофиќан ќиматњои 0.6 ва 1-ро ќабул менамоянд. Дар натиља, дар экран сатри зерин намоён мешавад:

S=2.4504422698 V=.28274338823-ро ба экран мебарорад

Мисоли 4: Барномаи хориљкунии квадрат, куб ва дараљаи 4-уми адади А-ро тартиб медињем.

REM Бадараљабардорї INPUT A PRINT A^2, A^3, A^4END

L Саволњо:

1. Намуди умумии оператори Rem чї гуна аст?2. Оператори Cls барои чї хизмат мерасонад?3. Вазифаи операторњои Rem, Let, End ва Stop аз чї иборат

аст?4. Фарќи оператори End аз оператори Stop дар чист?5. Кадом барномањоро хаттї мегўянд?6. Барномањои хаттї чї тавр иљро мешаванд?

6 Супориш:

1. Алгоритм ва барномаи њисобкунии њосили зарб ва суммаи ду ададро тартиб дињед.

2. Алгоритм ва барномаеро тартиб дињед, ки њангоми х=10 будан, ќимати ифодаи -ро њисоб кунад.

3. Барои њисоб кардани масоњат ва периметри росткунља

Page 82: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

82

алгоритм ва барнома тартиб дињед.4. Барномае тартиб дињед, ки куби ададњои якраќамаро

хориљ намояд.

1.2.7. БАРНОМАЊОИ ШОХАНОК. ОПЕРАТОРЊОИ ГУЗАРИШ

Агар алгоритми њалли масъала шоханок бошад, он гоњ барномаи ба он мувофиќро низ шоханок мегўянд. Барномањои шоханокро бо ёрии операторњои гузариш месозанд. Операторњои гузариш имконият медињанд, ки иљрои хаттии (пай дар пайи) сатрњои барнома бекор карда шуда, идоракунї аз сатри љорї ба дигар сатри он (пеш ё пас) дода шавад. Операторњои гузариши Бейсикро ба операторњои гузариши ѓайришартї ва шартї таќсим мекунанд.

Оператори гузариши ѓайришартии Goto. Алгоритми њалли баъзе масъалањо талаб менамояд, ки иљрои барнома на аз сатри навбатї, балки аз ягон сатри дигари он да-вом дода шавад. Ин амалиёт бо ёрии оператори гузариши ѓайришартии Goto ба сомон расонида мешавад, ки намуди умумии он чунин аст:

[m:] Goto nДар ин љо Goto (гузаштан ба) калимаи калидии Бейсик, m – раќами сатри љойгирбудаи ин оператор ва n - раќами сатрест, ки њангоми иљрои оператор идоракунии барнома ба он дода мешавад.

Мисоли 1: Барномаи зеринро дида мебароем:

INPUT A,B,C,X GOTO 5030: Y=A*X^2+B*X+C GOTO 8050: PRINT “A=”;A, “B=”;B PRINT “C=”;C, “X=”;X GOTO 30

Page 83: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

83

80: PRINT “Y=”;Y END

Дар ин барнома оператори Goto се маротиба вомехўрад. Оператори дар сатри дуюмомада идоракуниро ба сатри раќамаш 50 медињад, ки ба воситаи он ќимати бузургињои А, В ва баъд (дар сатри оянда) ќимати бузургињои С ва Х чоп карда мешаванд. Оператори гузариши сатри њафтум идоракуниро ба сатри раќамаш 30 медињад, ки дар он љо ќимати бузургии Y њисоб карда мешавад. Оператори дар сатри чорумомада бошад, идоракунии барномаро ба сатри раќамаш 80 медињад. Бо ёрии оператори ин сатр ќимати Y ба чоп равон карда мешавад. Сатри охирон кори барномаро анљом мебахшад.

Пас аз иљрои барномаи 10: PRINT ”Чархи осиёб давр мезанад.” GOTO 10љумлаи Чархи осиёб давр мезанад. то лањзаи бо ёрии тугмањои Ctrl, Break маљбуран ќатъ гардонидани иљрои барнома,

такроран дар экран пайдо шудан мегирад.

Оператори гузариши шартии If…Then. Оператори гузариши шартї вобаста аз иљрои шарти дар он овардашуда (ифодаи мантиќї) идоракунии барномаро ё ба дигар сатри он равона месозад ва ё операторњои дар таркибаш нишондодашударо иљро менамояд. Операторњои гузариши шартї ба ду гурўњ - нопурра ва пурра таќсим мешаванд. Операторњои гузариши нопурраи шартї дар навбати худ

боз ба ду навъ људо мешаванд:

1) [m:] If шарт Then оператор

2) [m:] If шарт Then nДар ин љо If (агар) ва Then (он гоњ) калимањои калидї, шарт – ифодаи мантиќї, оператор – оператори алоњида (аз љумла, дигар оператори If) ё гурўњи операторњои Бейсик, m ва n – раќами сатр мебошанд.

Page 84: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

84

Дар мавриди якум: агар шарт иљро гардад, он гоњ оператори (операторњои) баъди Then-омада иљро мешавад ва дар њолати акс, идоракунї ба сатри навбатии барнома дода мешавад.

Дар мавриди дуюм: агар шарт иљро гардад, он гоњ идоракунї ба сатри n-уми барнома дода мешавад ва дар њолати акс, сатри навбатї иљро мегардад.

Операторњои гузариши шакли пурраи шартї бошанд, дар навбати худ боз ба се навъ таќсим мешаванд:

1) [k:] If шарт Then n Else m Endif2) [k:] If шарт Then оператор Else m Endif3) [k:] If шарт Then оператор Else оператор Endif

Дар ин љо мисли пештара If (агар), Then (он гоњ) ва Else (вагарна) EndIf (интињои агар) калимањои калидї, шарт – ифодаи мантиќї, оператор - оператори алоњида (аз љумла, дигар оператори If) ё гурўњи операторњои Бейсик, k, n ва m – раќами сатрњо мебошанд.

Тарзи иљрои ин операторњо аз операторњои гузариши шартии нопурра фарќ мекунад. Дар њамаи мавридњо (1, 2, 3), агар шарт иљро гардад, он гоњ идоракунї ё ба сатри n-уми барнома дода мешавад ва ё оператори (операторњои) баъди Then-омада иљро мегардад. Дар њолати акс бошад, ё идоракунии барнома ба сатри m-уми он дода мешавад ва ё оператори (операторњои) баъди Else-омада иљро мегардад.

Мисоли 2: Алгоритм ва барномаи аз ду адади додашудаи a ва b ёфтани адади калонтаринро тартиб медињем.

Забони алгоритмїЗабони Бейсик (намунаи

1)Забони Бейсик

(намунаи 2)

алг КАД (њаќ а,в, њаќ у) арг а,в нат уибт агар а>в он гоњ у:=а вагарна у:=в итмом инт

REM KAД (1)

INPUT A,B

IF A>B THEN 50

Y=B:GOTO 60

50: Y=A

60: PRINT “КАД=”;Y

END

REM KAД (2)

INPUT A, B

IF A>B THEN Y=A

ELSE Y=B

PRINT “КАД=”;Y

END

Page 85: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

85

Агар њангоми иљрои барнома ба a ќимати 5 ва ба b ќимати 3 бахшида шавад, он гоњ дар экран чунин натиља

пайдо мешавад: КАД=5Мисоли 3: Аз операторњои гузариши шартї ва ѓайришартї истифода бурда, барои њисоб кардани ќимати функсияи зерин барнома тартиб медињем:

REM Њисоб кардани ќимати функсия

INPUT А,ХIF Х<0 THEN 70IF Х=0 THEN 90Y= 1/SQR(2*А*Х)GOTO 100

70: Y=-SQR(A*Х) GOTO 10090: Y=0100: PRINT “ Y=”;Y END

Акнун ду мисолеро дида мебароем, ки дар алгоритми

онњо сохторњои хаттї ва шоханок бо њам омехта шудаанд.

Мисоли 4: Барномаи њисобкунии ќимати ифодаи 657

2 +−+

=xx

xy

-ро барои ќимати дилхоњи таѓйирёбандаи х тартиб медињем.

Забони алгоритмї Забони Бейсик

алг Њисобкунии ифода (њаќ х,у,лит t)

арг х нат у,tибт њаќ a,b a:=x2-5x+6 b:=x+7 агар а=0 он гоњ t:= “Ќимати Y муайян нест” вагарна y:=b/a y:=a/b итмом инт

REM Њисобкунии ќимати ифода INPUT X LET A=X*X-5*X+6 LET B=X+7 IF A=0 THEN 80 LET Y=B/A PRINT “X=”;X,“Y=”;Y : GOTO 9080: PRINT “Њангоми X=”;X;“ будан, ќимати Y муайян нест”90: END

Page 86: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

86

Сатри панљуми барнома шарти ба нул баробар будани махраљи ифодаро месанљад. Дар мавриди иљрои шарт идоракунї ба сатри раќамаш 80 ва дар њолати акс ба сатри шашум дода мешавад. Дар сатри њафтум ду оператор – хориљкунї ва гузариши ѓайришартї оварда шудааст, ки яке ќимати бузургињоро чоп ва дигаре идоракуниро ба охири барнома (сатри раќамаш 90) медињад. Агар бо талаби оператори дохилкунї (сатри дуюм) ба таѓйирёбандаи х ќимати 7 бахшида шавад, он гоњ дар экран натиљаи X=7 Y=.7 ва дар мавриди ба таѓйирёбандаи х ќимати 2 бахшидан натиља дар шакли Њангоми X=2 будан, ќимати Y муайян нест пайдо мешавад.

Мисоли 5: Барномаи њисобкунии ќимати функсияи зеринро меорем:

Забони алгоритмї Забони Бейсик

алг Њисобкунии Y (њаќ х,у) арг х нат уибт њаќ a a:= 5х агар х<0 он гоњ у:=3х

вагарна y:=( õ - a)/2 итмом инт

REM Њисобкунии Y

INPUT X

A=5*X

IF X<0 THEN Y=3*X ELSE

Y=(SQR(X)-A)/2 EndIf

PRINT “X=”;X,“Y=”;Y

END

Мисоли 6: Барномаи ёфтани калонтарин таќсимкунандаи умумии ду адади натуралии А ва B-ро месозем:

Мисоли 7: Барномаи њалли муодилаи квадратии ax2+bx+c=0, ки дар ин љо а≠ 0, b, c - ададњои њаќиќии ихтиёрианд, месозем:

Page 87: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

87

Print “A ва В-ро дохил кунед” Input A,B X=A:Y=B30: If X=Y Then 10 If X>Y Then 20 Y=Y-X Goto 3020: X=X-Y Goto 30 10: Print «КТУ=»;X End

Rem Ёфтани њалли муодилаи квадратї

Input A,B,C D=B*B-4*A*C

If D>0 Then X1=(-B+Sqr(D))/(2*A):X-2=(-B-Sqr(D))/(2*A): Print“X1=”;X-1,“X2=”;X2:Goto 10

If D=0 Then X=-B/(2*A):Print “X=”; X:Goto 10

Print “Муодила њал надорад”10: End

L Саволњо: 1. Кадом барномаро шоханок мегўянд?2. Барномањои шоханок чї тавр иљро мешаванд?3. Вазифаи оператори Goto аз чї иборат аст?4. Оё тарзи иљрои операторњои гузариши шартии пурра аз

нопурра ягон фарќе дорад? Чї тавр?5. Кадом шаклњои операторњои гузариши шартии пурра ва

нопурраро медонед?6. Раќами сатр дар таркиби операторњои гузариш кадом

вазифаро иљро менамояд?

6 Супориш:

1. Барои њисобкунии ќимати ифодањои зерин барнома созед:

2. Барномаи њисобкунии ќимати функсияњои зеринро тартиб дињед.

m=5t-4 ва n=6t2

212 32 ++

=xxy

Page 88: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

88

1.2.8. ОператОри гузариши шартии калидї. ОператОри ивазкунии ќимати

таѓйирёбандаЊО

Оператори гузариши шартии калидї. Њангоми сохтани барномаи масъалањои шартие, ки дар онњо миќдори шохањо аз дуто зиёдтар аст, бештар аз оператори гузариши шартии махсусе истифода мебаранд, ки онро оператори гузариши шартии калидї ном мебаранд. Намуди умумии ин оператор чунин аст:

[m:] On P Goto n1, n

2,…,n

k

Дар ин љо Р - ифодаи арифметикии намуди дилхоњ буда, m, n

1, n

2,…,n

k - раќами сатрњо мебошанд. Ифодаи Р-ро калиди

гузаришњо низ мегўянд.Њангоми иљрои ин оператор пеш аз њама ќимати ифодаи

арифметикии Р њисоб карда мешавад ва вобаста аз ќимати ќисми бутуни он - [P] идоракунї ба яке аз сатрњои раќамашон n

1 ё n

2 ва ё њоказо n

k дода мешавад, яъне дар мавриди [P]=i

будан, идоракунии барнома ба сатри раќамаш ni (i=1, 2,…,k)

дода мешавад. Инчунин бояд ќайд кард, ки ќимати [P] бояд љавобгўи шарти 0<[P]≤255 бошад. Дар мавриди [P]>k ё [P]≤0 будан, идоракунї ба сатре дода мешавад, ки он бевосита пас аз сатри мутааллиќи ин оператор омадааст. Адади 255 гувоњи он аст, ки миќдори раќами сатрњои дар рўйхати оператори гузариши шартии калидиомада, амалан метавонад то 255-то бошад.

Page 89: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

89

Мисоли1. Барномаи њисобкунии ќимати функсияњои тригонометрии sinx, cosx ва tgx-ро вобаста ба ќимати бузургии n барои ќиматњои гуногуни бо дараља ченшудаи аргумент – x месозем:

Print ”Яке аз раќамњои 1 ё 2 ва ё 3-ро пахш кунед” Input N40:Input X On N Goto 10,20,3010:Y=Sin(X*3.14159/180) Print “Y=”;Y: Goto 50 20:Y=Cos(X*3.14159/180) Print “Y=”;Y: Goto 50 30:T=X/90 If Int(T)*90=X And In-t(T/2)*2<>Т Then 40 Y=Tan(X*3.14159/180) Print “Y=”;Y 50:End

Мисоли 2. Барномаи њалли муодилаи квадратии ax2+bx+c=0-ро бо истифода аз оператори гузариши шартии калидї тартиб медињем.

Тавре медонем, њангоми a≠0 будан, ёфтани њалли муодила ва њисоббарорињои зарурї асосан аз аломати дискриминант вобастаанд. Аз ин рў, агар мо дар барнома аз функсияи аломати дискриминат, яъне SGN(D), истифода барем, он гоњ ин ба маќсад мувофиќтар аст. Вале ќиматњои имконпазири ин функсия ададњои -1, 0 ва 1 мебошанд. Барои њосил кардани ќиматњои 1, 2, 3 бошад, ин функсияро бояд ба функсияи SGN(D)+2 табдил дод ва баъд дар барнома истифода бурд.

Яке аз намунањои барномаи њалли муодилаи квадратї дар сутуни тарафи рост оварда шудааст.

Rem Ёфтани решањои муодилаи квадратї

Input a,b,c If a=0 Then 190 D=b^2-4*a*c:a1=2*a On Sgn(D)+2 Goto 80,100,140 Rem Гузариш ба охири барнома Goto 240

80: Print “Муодила решањои њаќиќї надорад” Goto 240100: x=-b/a1 Print “a=”;a;”b=”;b;”c=”;c Print “Муодила ду решаи якхе-лаи х=”;х;”-ро дорад”

Goto 240140: x1=(-b+Sqr(D))/a1 x2=(-b-Sqr(D))/a1 Print “a=”;a;”b=”;b;”c=”;c Print “x1=”;x1;”x2=”;x2 Goto 240190: If b=0 Then 200 Else 220200: Print “a=”;a;”b=”;b;”c=”;c Goto 240220: x=-c/b:Print “Муодила хаттї будааст”

Print “a=”;a;”b=”;b;”c=”;c 240: Rem Охири барнома

End

Page 90: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

90

Оператори ивазкунии ќимати таѓйирёбандањо. Ин оператор Swap ном дошта, чунин намуд дорад:

[m:] Swap α,βДар ин љо m - раќами сатр, Swap (ивазкунї) - калимаи хид-матї, α ва β - номи таѓйирёбандањои навъи якхела мебошанд.

Пас аз иљрои ин оператор ба таѓйирёбандаи α ќимати таѓйирёбандаи β ва баръакс, ба β ќимати α бахшида мешавад, яъне ќимати онњо байни якдигар иваз карда мешаванд. Аз оператори Swap ваќте истифода мебаранд, ки агар таѓйирёбандањои α ва β пешакї соњиби ягон ќимат бошанд. Истифодаи оператори мазкур махсусан њангоми

батартибории љузъи массивњо босамар аст.

Мисоли 3. Тарзи ивазкунии ќимати таѓйирёбандањои x ва y-ро бо ёрии оператори Swap ва оператори бахшиш дида ме-бароем:

Cls Rem Ивазкунии ќимати таѓйирбандањоRem бо ёрии оператори SwapInput “Ќимати х ва у-ро дохил кунед”;x,yPrint “Пеш аз ивазкунї x=”;x-;”y=”;ySwap x,yPrint “Пас аз ивазкунї x=”;x-;”y=”;yEnd

Натиљаи кори барнома:Ќимати х ва у-ро дохил кунед? 3,5Пеш аз ивазкунї x=3 y=5Пас аз ивазкунї x=5 y=3

Cls Rem Ивазкунии ќимати таѓйирбандањоRem бе ёрии оператори SwapInput “Ќимати х ва у-ро дохил кунед”;x,yPrint “Пеш аз ивазкунї x=”;x-;”y=”;yz=x:x=y:y=zPrint “Пас аз ивазкунї x=”;x-;”y=”;yEnd

Натиљаи кори барнома:Ќимати х ва у-ро дохил кунед? 3,5Пеш аз ивазкунї x=3 y=5Пас аз ивазкунї x=5 y=3

L Саволњо:1. Кадом ваќт аз оператори гузариши шартии калидї истифода

бурдан бењтар аст?2. Вазифаи оператори ивазкунии ќимати таѓйирёбандањо аз чї

иборат аст?

Page 91: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

91

6 Супориш:1. Барои барномаи мисоли 2 блок-наќша созед.2. Бо истифода аз оператори гузариши шартии калидї

барномае созед. Бо он масоњат ва њаљми панљ шакли геометриро њисоб кунед.

3. Барномањои мисоли 3-ро шарњ дињед.

1.2.9. Барнома ва операторњои даврї

Агар алгоритми њалли масъала даврї бошад, он гоњ барномаи ба он мувофиќро низ даврї (сиклї) мегўянд. Дар чунин барномањо баъзе пайдарпайии амалиёт якчанд маротиба такрор мешаванд. Мисоли 1. Алгоритм (блок-наќша) ва барномаи њисобкунии суммаи 50 адади аввалаи натуралиро тартиб медињем:

s=0 : i=1 20:s=s+i i=i+1 If i<=50 Then 20 Print “S=”;s End

Дар натиљаи иљрои барнома дар экран сатри зерин пайдо мешавад:

S=1275

Барномаи мазкур даврї (сиклї) мебошад, чунки операторњои дар сатрњои дуюм ва сеюм нишондодашуда 50 маротиба такроран иљро мешаванд. Операторњои такроршавандаро тани сикл мегўянд. Одатан дар чунин барномањо шарти баитмомрасии сикл нишон дода мешавад (дар мисоли мазкур i<=50). Ин гуна шартро дар мавќеи ихтиёрии тани сикл санљидан мумкин аст.

i≤50

Ибтидо

S:=0, I:=1

S:=S+I

I:=S+1

i=1; S=0

Интињо

Чопи S

ња

Page 92: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

92

Дар забони QBasic њангоми тартиб додани барномањои даврї бештар аз операторњои махсусе истифода мебаранд, ки сиклсозї бо ёрии онњо назар ба операторњои гузариши шартї осонтар аст.

Операторњои For-Next. Сохтори сикл ва намуди умумии ин операторњо чунин аст:

[m1:] For i=α To β [Step γ]

Тани сикл

[m2:] Next [i]

Дар ин љо m1,

m2 – раќами сатрњо, For (барои), То (то), Step

(ќадам), Next (оянда, навбатї) - калимањои хидматї, i - номи таѓйирёбандаи ададї (параметри сикл), α, β, γ - ифодањои арифметикї (мувофиќан ќимати аввала, ќимати нињої ва ќадами таѓйирёбии параметри сикл), Тани сикл – гурўњи операторњои такроршаванда.

Операторњои For ва Next-ро мувофиќан ибтидо (сар-лавња) ва интињои сикл низ мегўянд. Агар дар барнома оператори For истифода бурда шуда бошад, он гоњ дар он њатман оператори Next низ бояд мављуд бошад. Пайдарпайии амалиёти такроршаванда (тани сикл) низ мањз дар байни операторњои даврии For ва Next љой дода мешаванд. Њангоми γ=1 будан, калимаи калидии Step ва бузургии ќадам, яъне γ-ро навиштан шарт нест.

Тарзи иљрои сикл бо ёрии операторњои For ва Next дар наќшаи тарафи рост тасвир шудааст. Дар ин операторњо аввал ќимати ифодањои арифметикии α, β ва γ њисоб ва ќимати ќисми бутуни онњо ба ќайд гирифта мешавад. Пас аз он ба параметри сикл ќимати аввалааш бахшида мешавад, яъне i:=α ва тани сикл як маротиба иљро мегардад. Баъд, бо ёрии оператори Next ќимати љории параметри сикл бо бузургии ќадамаш зиёд карда мешавад, яъне i:=i+γ ва идоракунї аз нав ба оператори For дода мешавад. Бо ёрии ин оператор ќимати љории параметр бо ќимати имконпазири охиронаш

Page 93: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

93

муќоиса карда мешавад, яъне шарти i>β санљида мешавад. Агар ин шарт иљро гардад, он гоњ идоракунї ба операторе дода мешавад, ки он пас аз оператори Next омадааст. Дар њолати акс, яъне дар мавриди i≤β будан, тани сикл аз нав иљро мегардад. Агар ќимати ќадам манфї, яъне γ<0 (дар ин маврид α>β аст) бошад, он гоњ барои итмоми сикл иљрои шарти i<β талаб карда мешавад. Дар мавриди α=β будан, давр њамагї як маротиба иљро мешавад. Њамчунин бояд ќайд кард, ки барои њар гуна ќиматњои α, β, γ тани сикл аќаллан як маротиба иљро мешавад. Ба тани сикл танњо тавассути сарлавњаи он ворид шудан мумкин аст. Вале аз сикл пеш аз итмоми он низ баромадан мумкин аст. Дар ин маврид ќимати параметри сикл ба ќимате, ки он то аз сикл баромадан соњиб буд, баробар аст.

Мисоли 2: 10 FOR X=1 TO 10 STEP 220 Y=X^230 PRINT X,Y40 NEXT X

Дар ин барнома X параметри сикл буда, ќимати аввалааш ба 1, охиронаш ба 10 ва ќадами такроршавиаш ба 2 баробар аст. Сатрњои 20 ва 30 тани сиклро ташкил медињанд ва 5 маротиба такроран иљро мешаванд. Дар натиљаи кори барнома дар экран сатрњои зерин пайдо мешаванд:

Бо назардошти ин гуфтањо ва бо истифода аз операторњои For ва Next барномаи мисоли 1-ро чунин таб-дил медињем:

i>βi=i+v

Тани сикл

i=a

не

ња

1 13 95 257 499 81

Page 94: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

94

S=0FOR I=1 TO 50S=S+I

NEXT IPRINT “S=”;SEND

Мисоли 3: Алгоритм ва барномаи чоп ва њисобкунии суммаи ададњои дураќамаи тоќро тартиб медињем.

Забони алгоритмї Забони Бейсик

алг Суммаи ададњои тоќ (бут S) нат S ибт бут i S:=0 барои i аз 11 то 99 ќадам 2 ибс S:=S+i инс инт

REM Суммаи ададњои дураќамаи тоќ

S=0FOR I=11 TO 99 STEP 2PRINT I S=S+INEXT IPRINT “S=”;SEND

Баъзан як сикл метавонад як ё якчанд сикли дигарро дар бар гирад. Дар чунин мавридњо мегўянд, ки сикл сикли мураккаб аст. Дар сиклњои мураккаб бояд сиклњои дохилї пас аз ибтидои сиклњои нисбат ба онњо берунї сар шаванд ва пеш аз интињои сиклњои берунї ба охир расанд. Масалан, дар љадвали зерин якчанд сохторњои дуруст ва нодурусти сиклњои мураккаб нишон дода шудаанд:

Сикли дуруст Сикли дуруст Сикли нодурустСикли нодуруст

FOR I=L1 TO L2FOR J=M1 TO M2FOR К=N1 TO N2 ………………. NEXT К NEXT JNEXT I

FOR I=L1 TO L2FOR J=M1 TO M2FOR К=N1 TO N2 ………………. NEXT К,J,I

FOR I=L1 TO L2FOR J=M1 TO M2FOR К=N1 TO N2 ………………. NEXT I NEXT JNEXT K

FOR I=L1 TO L2FOR J=M1 TO M2FOR К=N1 TO N2 ………………. NEXT К,I,J

Page 95: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

95

Мисоли 4: Љадвали ададњои содаи аз адади натуралии N калон набударо тартиб медињем:

Print “Адади N-ро дохил кунед”Input NFor I=2 To N For J=2 To Int(I/2) If I/J=Int(I/J) Then 10 Next J Print I;

10:Next I End

Мисоли 5: Алгоритм ва барномаи њисобкунии ќиматњои функсия y-ро барои ќиматњои аргумент x=[a, b] бо ќадами доимии h тартиб медињем (a=-3,5; b=3,6; c=0; h=1):

Блок - схема Барнома

Data -3.5,3.6,0,1

Read A,B,С,H

A$ = String$(21, “-”)

Print A$

Print “| X | Y |”: Print A$

For X=A To B Step H

If X<=С Then Y=Sqr(Abs(X^2+X-

)):Goto 10

Y=Log(X+3.713)/Log(2)

10:Print Using”| ##.### |»;X;Y

Print A$

Next X

End

x>bx=a+h

x=a ња

њане

не

x c

a,b,c,h

Y:= log2 (x + 3,713)

i=1; S=0

Ибтидо

Ибтидо

x,y

xxy += 2:

Page 96: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

96

Натиљаи иљрои барнома чунин аст:

------------------------| X | Y |------------------------| -3.500 | 2.958 |------------------------| -2.500 | 1.936 |------------------------| -1.500 | 0.866 |------------------------| -0.500 | 0.500 |------------------------| 0.500 | 2.075 |------------------------| 1.500 | 2.382 |------------------------| 2.500 | 2.635 |

------------------------ | 3.500 | 2.851 |------------------------

Операторњои While-WEnd. Дар забони QBasic њангоми барномарезии њисоббарорињои итератсионї (пайдарпай наздикшавї) аз операторњои сиклии махсуси While ва WEnd истифода мебаранд, ки онњо чунин намуд доранд:

[m1:] While P

Тани сикл[m

2:] WEnd

Дар ин љо m1,

m2 – раќами сатрњо, While (то ваќте ки) ва WEnd

(интињои то ваќте ки) – калимањои хидматї, P – ифодаи мантиќї.

Њангоми иљрои ин операторњо аввал ќимати ифодаи мантиќии Р њисоб карда мешавад. Агар он њаќ (true) бошад, он гоњ тани сикл иљро мегардад, вагарна (дар мавриди дурўѓ – false будани ќимати Р) идоракунї ба оператори пас аз Wend омада дода мешавад. Дар ин маврид, миќдори такроршавии сикл пешакї маълум нест. Миќдори такроршавии он танњо аз иљро шудан ё нашудани шарт (ифодаи мантиќї) вобаста аст.

Page 97: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

97

Мисоли 5: Суммаи (n=0, 1, 2,…) ќимати таќрибии функсияи у=sinx-ро медињад. Ин гуна њисоббарории ќимати функсияњоро дар математика ба ќатори Тейлор пањн кардан мегўянд. Барномаи њисобкунии

ќимати суммаро бо сањењии ε,ε=0,0001 тартиб медињем.

Input X S=X:Y=X:Z=3 T=X^2 While Y>0.0001 Y=-Y*T/((Z-1)*Z) S=S+Y

Z=Z+2 WEnd Print “S=”;S End ? 1.21

S=0.91473

Оператори Do-Loop. Тарзи кори операторњои Do-Loop аз тарзи кори операторњои While-WEnd каме фарќ мекунад. Дар ин љо санљиши шарти мантиќиро ё дар аввал (санљиш аз боло) ва ё дар охир (санљиш аз поён) иљро кардан мумкин аст, яъне ин операторњо метавонанд яке аз чор намуди зеринро дошта бошанд:

Санљиш аз боло Санљиш аз поён

[m1:] Do While P [m

1:] Do Until P [m

1:] Do [m

1:] Do

Тани сикл Тани сикл Тани сикл Тани сикл

[m2:] Loop [m

2:] Loop [m

2:] Loop While P [m

2:] Loop Until P

Дар ин љо m1,

m2 – раќами сатрњо, Do (иљро кардан), While

(то ваќте ки), Until (то) ва Loop () – калимањои хидматї, P – ифодаи мантиќї.

Ањамиятнокии ќимати ифодаи мантиќии P (иљрои шарт) аз баргузини калимањои хидматии While ё Until вобаста аст. Агар дар операторњо калимаи While истифода шуда бошад, он гоњ сикл то ваќте идома меёбад, ки ќимати Р њаќ (true) бошад. Агар, баръакс, дар операторњо калимаи Until мавриди истифода ќарор дода шуда бошад, он гоњ сикл то даме идома меёбад, ки ќимати Р дурўѓ (false) бошад. Њангоми истифодаи тарзи санљиш аз поён, тани сикл аќаллан

як маротиба иљро мешавад.

Page 98: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

98

Мисоли 6: Барномаи мисоли 5-ро бо истифодаи намунањои гуногуни операторњои Do- Loop табдил медињем.

Бо тарзи санљиш аз боло Бо тарзи санљиш аз поён

Input XS=X:Y=X:Z=3 T=X*XDo Until Y<=0.0001Y=-Y*T/((Z-1)*Z)S=S+Y

Input XS=X:Y=X:Z=3T=X*X Do While Y>0.0001Y=-Y*T/((Z-1)*Z)S=S+Y

Input XS=X:Y=X:Z=3T=X*XDoY=-Y*T/((Z-1)*Z)S=S+Y

Input XS=X:Y=X:Z=3T=X*XDoY=-Y*T/((Z-1)*Z)S=S+Y

Z=Z+2LoopPrint “S=”;S

Z=Z+2LoopPrint “S=”;S

Z=Z+2Loop While Y>0.0001Print “S=”;S

Z=Z+2Loop Until L<=0.0001Print “S=”;S

L Саволњо:

1. Кадом барномаро даврї мегўянд?2. Кадом операторњои давриро медонед?3. Сикли Do-Loop– ро бо чанд тарз додан мумкин аст?4. Операторњои For ва Next чї тавр иљро мешаванд?

Операторњои While-WEnd ва Do-Loop чї?5. Вазифаи параметри сикл аз чї иборат аст?6. Кадом сиклро сикли мураккаб меноманд?7. Чї тавр як сиклро дар дохили сикли дигар љойгир кардан

мумкин аст? 8. Оё њамаи вазифањои операторњои For-Next-ро бо ёрии

операторњои If-Then иљро кардан мумкин аст?

6 Супориш:1. Алгоритм ва барномаи њисобкунии суммаи ададњои аз 5

то 20-ро тартиб дињед.2. Барномаеро созед, ки њамаи ададњои дураќамаи ба 5

каратиро дар экран чоп намояд.3. Aлгоритм ва барномаи ба экран баровардани квадрат ва

куби ададњои якраќамаро тартиб дињед.4. Барномањои њисоб кардани суммањои зеринро тартиб

дињед:

а) S=12+22+32+. . . +202

Page 99: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

99

в) S=2+22+23+…+210

с)

d)

5. Барномаи њисоби њосили зарби P= -ро то мавриди зарбшавандаи навбатии он аз бузургии 0,0001 хурд будан, тартиб дињед.

1.2.10. МАССИВ

Массив гуфта маљмўи љузъњои муназзами навъи якхеларо мегўянд, ки

онњо номи ягона доранд ва танњо бо индексашон фарќ мекунанд.

Њар як массив ном, ченак ва дарозии муайян дорад. Љузъњои массив дар ячейкањои хотира пай дар пай љойгир карда мешаванд. Аз ин љо, массивњои якченакаро, ба мисли математика, њамчун вектор ва дученакаро њамчун матриса дида баромадан мумкин аст. Дар Бейсик нисбат ба њамаи дигар навъи массивњо бештар аз массивњои якченака ва дученака истифода мебаранд. Ќимати љузъњои массиви якченака дар як сатр ва ё дар як сутун љой дода мешаванд. Њар як љузъи массив раќами тартибии мушаххас дорад, ки тавассути он мавќеи љойгиршавии онро дар байни дигар љузъњо муайян кардан мумкин аст. Миќдори индексњо – ченак ва миќдори љузъњо - дарозии массивро муайян мекунад.

Масалан, пайдарпайии ададњои 6; 7; 5; -3; 0; 4.5 метавонад ќимати љузъњои ягон массиви якченака бошад, ки он аз 6 љузъ иборат аст. Агар ин љузъњоро раќамгузорї кунем, он гоњ љузъи якуми он ба 6, сеюм ба 5 ва шашум ба 4.5 баробар аст. Ќайд кардан зарур аст, ки дар баъзе намунањои Бейсик раќамгузории љузъњо аз 0 (нул) сар мешавад. Аз рўйи раќами тартибии аз њама калон андозаи массивро низ пешакї муайян кардан мумкин аст.

Барои тасвир кардани андозаи массивњо оператори

Page 100: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

100

DIM (dimension – андоза) хизмат мерасонад. Масалан, опе-ратори 10 DIM A(5), B$(3) ду массиви якченакаро тасвир намудааст, ки яке аз онњо (якумаш) 6 љузъи навъи њаќиќї - А(0), А(1), А(2), А(3), А(4), А(5) ва дигараш 4 љузъи навъи рамзї - B$(0), B$(1), B$(2), B$(3) доранд.

Вазифаи оператори DIM дар он аст, ки вай бояд барои љузъњои массив дар хотираи компютер љой банд намояд. Дар хотир бояд дошт, ки њамаи љузъњои массив њатман бояд навъи якхела бошанд. Љузъњои массиви дученака дар сатрњо ва сутунњои љадвал љойгир карда мешаванд. Масалан, љузъњои љадвали зеринро

а11

а12

а13

… а1m

а21

а22

а23

… а2m

. . . . . . . . . . .а

n1 а

n2 а

n3 … а

nm

њамчун массиви дученака ќабул кардан мумкин аст. Массиви мазкур аз n сатр ва m сутун иборат аст. Љузъњои ин массив а

ij

(i=1, 2,…,n; j=1,2,…,m) буда, i ва j индексњои онњоро ифода менамоянд. Индекси i - раќами тартибии сатр ва j - раќами тартибии сутунеро нишон медињанд, ки љузъи додашуда дар буриши онњо љойгир аст. Ин массивро ба воситаи оператори DIM A(N,M) тасвир намудан мумкин аст.

Дар барнома оператори Dim бояд то истифодаи љузъњои он тасвир карда шавад. Тавсия медињем, ки он дар аввали барнома љойгир карда шавад. Дар забони QBasic бошад, имконияти истифодаи љузъњои массив, бе тасвири пешакии онњо дар оператори Dim, мављуд аст. Дар ин гуна мавридњо миќдори максималии љузъњои массив ба 10 баробар аст. Вале, чун одат миќдори минималии онњоро 1 мењисобанд (нул кам истифода мешавад). Агар ќимати бузургии индексњо бо ќимати раќами тартибии калонтарини љузъњо мувофиќат кунад, барнома содатар ва бештар фањмо мегардад. Барои иљрои ин маќсад аз оператори Option Base 1 истифода мебаранд. Масалан, массиви А(2,3), ки дорои

Page 101: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

101

3*4=12 љузъ аст, дар мавриди истифодаи ин оператор њаљми хотираро аз 12 то 6 ячейка кам мекунад.

Баъзан, аз нуќтаи назари сарфаи хотираи компютер, ченаки массиви бо ёрии оператори Dim муайяншударо, тавассути оператори Erase таѓйир додан мумкин аст. Ма-салан, агар дар барнома аллакай оператори Dim А(20) истифода шуда бошад, он гоњ хотираро бо ёрии оператори Erase А аз ин массив пурра тоза кардан мумкин аст ва баъд, масалан, бо ёрии оператори Dim А(3,4) онро њамчун массиви дученака, бо њамон ном, мавриди истифода ќарор додан мумкин аст. Илова бар ин, QBasic дорои имконияти ба таври ошкор нишон додани њудуди таѓйирёбии индексњои массив аст. Масалан, оператори Dim А%(30 То 40) нишон медињад, ки миќдори максималии љузъњои массиви А% аз 30 то 40-то шуда метавонад.

Агар дар массив миќдори сатр ва сутунњо ба њамдигар баробар бошад, он гоњ онро массиви квадратї меноманд. Шумораи љузъњои массиви дученака ба њосили зарби миќдори сатру сутунњои он баробар аст. Акнун якчанд барномањоеро дида мебароем, ки дар онњо сохторњои њам хаттї, њам шоханок ва њам даврї истифода шудаанд.

Мисоли 1: Барои аз системаи њисоби дањї ба дуї тарљума кардани адад, блок-наќша ва барномаро бе истифодаи массивњо месозем.

Page 102: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

102

Блок-наќша Барнома

INPUT X

S=0 : M=2

30: Y=X/2

X=INT(Y)

S=S+M*(Y-X)

M=M*10

IF X>0 THEN 30

PRINT “S=”;S

END

run

? 25

S=11001

Мисоли 2: Барномаи њисобкунии суммаи љузъњои диагонали асосии массиви квадратиро тартиб медињем.

INPUT “Tартиби массив”;NDIM A(N,N)S=0FOR I=1 TO NFOR J=1 TO N

INPUT A(I,J)

IF I=J THEN S=S+A(I,J)NEXT JNEXT IPRINT “Cумма=”;SEND

Сатри якуми барнома (оператори Input) дохилкунии тартиби массив ва сатри дуюм бошад, тасвири онро таъмин мекунанд. Сатри сеюм ба таѓйирёбандаи S, ки вазифаи

Дохилкунии x

S:=0, m:=2

Y:=x/2

x”[y]

S:=S+m(y-x)

M:10m

ња

не

Чопи S

x>0

Ибтидо

Интињо

Page 103: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

103

суммаи љузъњои диагоналии массиви квадратиро иљро менамояд, ќимати ибтидої сифр (нул) мебахшад. Сатрњои чорум то нуњум сикли мураккабро ташкил медињанд. Параметри сикли беруна таѓйирёбандаи I ва сикли дохилї J мебошад. Барои њамин њам оператори интињои сикли берунї (сат-ри нуњум) пас аз оператори интињои сикли дохилї (сат-ри њаштум) љойгир шудааст. Оператори сатри шашум дохилкунии ќимати љузъњои массивро таъмин менамояд. Оператори гузариши шартии сатри њафтум бошад, суммаи љузъњои дар диагонали асосии массиви квадратї љойгирбударо њисоб менамояд. Мањз сатрњои шашум ва њафтум сатрњои такроршавандаи барнома мебошанд. Онњо n2 маротиба иљро мешаванд. Сатри дањуми барнома суммаи њисобшударо ба экран мебарорад ва сатри ёздањум кори

барномаро ба охир мерасонад.

Мисоли 3: Барномаи дохилкунї ва чопи массиви дученака

Rem Дохилкунии массивOption Base 1 Dim A(3,4)For I=1 TO 3For J=1 TO 4Read A(I,J)Next JNext IData 1,2,3,4,5,6,7,8,9,10,11,12

Rem Чопи массивFor I=1 TO 3For J=1 TO 4Print A(I,J);Next JPrintNext IEnd

Натиљањои кори барнома:1 2 3 45 6 7 89 10 11 12

Акнун якчанд мисолњои дигарро дида мебароем, ки дар барномаи ба онњо мувофиќ аз массивњо истифода бурда мешаванд.

Page 104: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

104

Се тарзи дохилкунии ќиматњои массиви А={-10,5,11,21,10} бо ёрии операторњои:

Бахшиш Read ва Data Input

Dim A(5)A(1)=-10A(2)=5A(3)=11A(4)=21A(5)=10

Dim A(5)For I=1 To 5ReadA(I)Next IData -10,5,11,21,10

Dim A(5)For I=1 TO 5I n p u t A(I)Next I

Ду тарзи чопи массиви А={-10,5,11,21,10} дар:

Сатр Сутун

Нат

иља:Dim A(5)

For I=1 To 5ReadA(I)Print A(I);Next IData -10,5,11,21,10End

Dim A(5)For I=1 To 5ReadA(I)Print A(I)Next IData -10,5,11,21,10End

-105112110

Натиља:-10 5 11 21 10 Њисобкунии суммаи љузъњои массиви

бе истифодаи массив

Ёфтани љузъи калонтарини массиви А[1:n] ва мавќеи љойгиршавии он

Чопи љадвалии ќиматњои аргументи

ва функсияи y=x2

Ёфтани раќами аввалин љузъи манфии массиви А[1:n]

Page 105: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

105

S=0For I=1 To 10Input AS=S+ANext I Print “S=”;SЕnd

Input NDim A(N)For I=1 To NInput A(I)Next IK=1M=A(1)For I=2 To NIf M<A(I) Then M=A(I):K=INext IPrint M,КEnd

Dim Х(5),Y(5)For I=1 To 5Read Х(I)Data 1,2,3,4,5Next IFor I=1 To 5Y(I)=Х(I)^2Next IFor I=1 To 5Print X(I),Y(I)Next IEndНатиља:1 1 2 43 94 165 25

Input N Dim А(N) For I=1 TO N Input А(I) Next I For I=1 TO N If А ( I ) < 0 T h e n Print I Goto 20 Next I20: End

Њисобкунии ќимати бисёраъзогии

( ) xaxaxaxaxP nnnn

n ++++= −− ....22

110

аз рўйи схемаи Горнер:

Rem Схемаи ГорнерPrint “Дараљаи бисёраъзогиро дохил кунед”Input NPrint “Дар кадом нуќта њисоб карданиед”Input XPrint “Коэффисиентњоро дохил кунед”For I = 0 To N

Input A(I)Next IY=A(0)For I = 1 To NY=Y*X+A(I)Next IPrint “ Y=”; Y End

L Саволњо:

1. Массив чист?2. Вазифаи оператори Dim аз чї иборат аст?3. Дар Бейсик бештар аз кадом намуди массивњо истифода

мебаранд?4. Массиви квадратї гуфта чиро мефањмед?

Page 106: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

106

6 Супориш:1. Массиви якченакае дода шудааст, ки дорои 100 љузъ аст.

Барномае тартиб дињед, ки он миќдори љузъњои манфии массивро аз љузъи 16-ум то 87-умаш њисоб кунад.

2. Барномае тартиб дињед, ки он дохилкунии ќимати 15 љузъи массиви якченакаи навъи рамзиро таъмин намояд.

3. Массиви дученакаи зерин дода шудааст:

3 8 2 0

1 7 5 6

43 4 -5 -3

• Барномаи чопи ќимати љузъи дар сатри сеюм ва сутуни чоруми массив љойгирбударо созед.

• Барномае тартиб дињед, ки он индекси ададњои 5, 6, 43 ва –3-ро муайян кунад.

4. Барномаи сохтани массиви квадратиеро тартиб дињед, ки љузъњояш ададњои бутуни такрорнашавандаи аз 100 хурд бошад ва онњо квадрати ададњоро ташкил намоянд.

5. Блок-наќша ва барномаи муайянкунии миќдори љузъњои мусбат ва манфии массиви якченакаи В(15)-ро созед.

6. Массиви А(20) дода шудааст. Барномае тартиб дињед, ки он вобаста ба мављуд будан ё набудани адади 5 (њамчун ќимати љузъњои ин массив), мувофиќан љавоби «ња» ё «не»-ро ба экран барорад.

7. Массиви квадратии Х(6,6) дода шудааст. Барномаи њисобкунии суммаи љузъњои дар сатрњои дуюм ва панљуми массив љойгирбударо созед.

8. Массиви дученакаи А[1:n,1:m] дода шудааст. Барномаи њалли масъалањои зеринро тартиб дињед: њисобкунии суммаи љузъњои манфии массив њисобкунии суммаи љузъњои дар диагоналњо хобидаи

массив њисобкунии суммаи љузъњои аз диагонали асосї

поёнхобидаи массив ёфтани љузъи хурдтарини массив ва индексњои он.

Page 107: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

107

1.2.11. ЗЕРБАРНОМА

Операторњои Gosub ва Return. Баъзан лозим меояд, ки пайдарпайии амалиёти якхела дар љойњои гуногуни барнома якчанд маротиба, такроран, иљро гардад. Барои њар дафъа такроран нанавиштани ин гуна амалиёт, онњоро як маротиба, дар таркиби барномаи асосї, дар шакли барномаи алоњида тасвир менамоянд ва баъд дар љойњои зарурї ба он мурољиат мекунанд. Барномаеро, ки ба он аз ќисмњои гуногуни барномаи асосї мурољиат менамоянд, зербарнома мегўянд. Оператори мурољиаткунї ба зербарнома оператори Gosub (аз калимањои Go to – гузаштан ба ва Subroutine - зербарнома) мебошад.

Зербарномаро дар мавќеи дилхоњи барнома љой додан мумкин аст. Шакли он ва тарзи сохтанаш аз барномањои муќаррарї ягон фарќе надорад. Ба зербарнома ба воситаи раќами сатри аввалинаш мурољиат менамоянд. Намуди

умумии оператори мурољиаткунї ба зербарнома чунин аст: [m:] Gosub n

Дар ин љо m раќами сатри (оператори) мурољиаткунї ба зербарномаест, ки раќами сатри аввалини он n аст. Пас аз иљрои оператори Gosub идоракунї ба зербарнома дода мешавад ва њамаи амалиёти дар он пешбинишуда, то вохўрдани оператори Return [k], иљро мегарданд. Оператори Return (бозгашт) идоракуниро ба сатри раќамаш k медињад. Агар k нишон дода нашуда бошад, он гоњ оператори Return идоракуниро ба сатре бармегардонад, ки он бевосита пас аз оператори Gosub омадааст.

Њамин тариќ, оператори Gosub оператори нисбат ба зербарнома беруна буда, оператори Return бошад, оператори дохилии зербарнома аст. Дар як барнома миќдори дилхоњи зербарномањоро љой додан мумкин аст. Функсияњои стандартии пештар дида баромадаамон низ асосан аз рўйи њамин тарзи кор сохта шудаанд, бинобар ин онњо низ зербарномаанд. Фарќи функсияњои стандартї аз

Page 108: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

108

ин гуна зербарномањо танњо дар он аст, ки онњо дастраси доираи васеъи истифодагаронанд. Ин зербарномањо бошанд, танњо дар доираи барномаи муайян ва мушаххас истифода мешаванд. Инчунин, бояд ќайд намоем, ки аз дохили як зербарнома ба дилхоњ зербарномањои дигар

мурољиат кардан мумкин аст.Мисоли 1: Input x

Gosub 50 Print y Stop

50: y=x^2 Return

Мувофиќи ин барнома, аввал компютер дохилкунии ќимати таѓйирёбандаи х-ро талаб менамояд. Пас аз дохил намудани ќимати х он ба иљрои оператори Gosub мегузарад. Ин оператор идоракунии барномаро ба сатри 50 медињад, ки дар он ќимати y њисоб карда мешавад. Оператори Return идоракуниро ба оператори Print (сатри сеюм) бармегардонад. Ба воситаи оператори Print ќимати y ба чоп дода мешавад. Оператори Stop (сатри чорум) иљрои барномаро муваќќатан бозмедорад. Њамин тариќ, аз гуфтањои болої бармеояд, ки дар барномаи мазкур зербарномаро сатрњои панљум ва шашум ташкил намудаанд. Ба он њамагї як маротиба

мурољиат карда шудааст. Оператор-функсия. Айнан ба мисли истифодаи

функсияњои стандартї ё зербарномањои муќаррарї, њангоми тартибдињии барномањо баъзан лозим меояд, ки ќимати як ифода (арифметикї, сатрї ва ѓайра) барои ќиматњои гуногуни бузургињои дар таркибашбуда якчанд маротиба њисоб карда шавад. Дар чунин мавридњо, бо маќсади сарфаи њаљми хотираи компютер ва содагардонии раванди барномарезї, ин гуна ифодаро аз рўйи методи сохтани функсияњои стандартї дар ибтидои барнома тасвир менамоянд ва ба он, аз љойњои зарурии барнома, њамчун ба функсия мурољиат мекунанд. Азбаски мурољиаткунї

Page 109: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

109

ба чунин ифодањо, тавассути номашон (њамчун функсия), аз дохили ягон оператор амалї мегардад ва аз ин рў онњо дорои њам хосиятњои оператору њам функсия мебошанд, бинобар ин ба онњо оператор-функсия ном гузоштаанд. Оператор-функсияњоро дар радифи функсияњои стандартї баъзан функсияњои ѓайристандартї низ меноманд.

Намуди умумии оператор-функсия Def Fnα(γ)=β аст. Дар ин љо Def Fn (Definition Function - муайянкунии функсия) калимаи хидматї, α - номи функсия, γ - рўйхати интихобњои (параметрњои) расмї (формалї), β – ифодаест, ки дар он бо параметрњои расмї амалњо иљро карда мешаванд. Њангоми мурољиаткунї ба оператор-функсия параметрњои расмї бо параметрњои аслї иваз карда мешаванд.

Масалан, бигузор дар барнома њисобкунии ќимати ифодаи z=x2+y2 барои ќиматњои гуногуни x ва y якчанд маротиба талаб карда шуда бошад. Бо истифода аз имкониятњои Бейсик ифодаи мазкурро дар ибтидои барнома бо ёрии оператор-функсияи Def Fnz(x,y)=x^2+y^2 тасвир менамоем. Агар дар барнома оператори T=2*cos(4.5)-Fnz(2,3)+3*Fnz(1,1) вохўрад, он гоњ ин гувоњи он аст, ки мурољиаткунї ба функсия ду маротиба амалї гаштааст. Дар ин љо z - номи функсия, x ва y - параметрњои расмианд, ки њангоми мурољиат онњо бо ададњои мушаххас иваз карда шудаанд. Дар асл оператори овардашуда бо оператори T=2*cos(4.5)-(2^2+3^2)+3*(1^2+1^2) баробарќувва аст.

Мисоли 2: Бо истифода аз оператор-функсия ќимати ифодаи

дар мавриди x=1, a=2, b=3, c=4 будан ёфта

шавад. Дар ин љо xx

xx

eeeethx −

+−

= аст. X=1:A=2:B=3:C=4

Def Fnt(X)=(Exp(x)-Exp(-x))/(Exp(x)+Exp(-x)) D=A*X^2:E=B*X F=D+E+C Y=(Fnt(D)+Fnt(E)+Fnt(C))/Fnt(F)

Page 110: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

110

Print“Y=”;Y End

Мисоли 3: Барномаи њисобкунии , ва бо истифода аз зербарнома, барои ќимати мушаххаси х≠0.

Rem Истифодаи зербар-нома

Input X Y=15 Gosub 5 A=S:Y=25 Gosub 5 B=S:Y=18 Gosub 5 Print

“A=”;A,“B=”;5*B,“C=”;S/X End

5: Rem Зербарнома S=0 For K=2 To Y S=S+Log(Х)/Log(К) Next K

Return

Мисоли 4: Барномаи ёфтани калонтарин таќсимкунандаи умумии љузъњои массиви ададњои натуралии А[1:n]

A,5B,S/X

Зербарнома

Зербарнома

Зербарнома

Зербарнома

Зербарнома

Y=15

Y=15

K=2

K=K+1A=S;Y=25

A=S;Y=25

B=;Y=18

ња

не

Интињо

Интињо

x

Page 111: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

111

Print ”Миќдори љузъњои массивро дохил кунед” Input N Dim A(N) Print “Љузъњои массивро дохил кунед” For I=1 To N Input A(I) Next I X=A(1) For I=2 To N Y=A(I) Gosub 10 Next I Print “КТУ=”;Х

End

10:Rem Зербарнома40:If X=Y Then 20 If X>Y Then 30 Y=Y-X Goto 4030:X=X-Y Goto 40

20:Return

L Саволњо:

1. Зербарнома аз барномаи асосї чї фарќ дорад?2. Оператори мурољиаткунї ба зербарнома кадом аст?3. Вазифаи оператори Return аз чї иборат аст?4. Оё истифодаи зербарнома њалли масъаларо бењтар

мегардонад? Чаро?5. Як барнома чанд зербарномаро дар бар гирифта

метавонад?6. Оператор-функсия чї тавр тасвир карда мешавад?7. Параметрњои аслї аз расмї чї фарќ доранд?

6 Супориш:

1. Тарзи кори операторњои Gosub ва Return-ро бо ягон мисол маънидод кунед.

2. Барномаи њисобкунии ќимати ифодањои 5КТУ(а,в)+7КТУ(с,d) ва

m!+n!-ро созед.3. Бо истифода аз зербарнома ќимати ифодаи

-ро њисоб кунед.

Page 112: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

112

1.2.12. ФУНКСИЯЊО ВА ОПЕРАТОРЊОИ КОРКАРДИ

МАТН Тавре аллакай медонем, дар Бейсик зери мафњуми матн

пайдарпайии њар гуна рамзњои дар нохунак гирифташуда фањмида мешавад. Бо бузургињои матнї, ба мисли бузурги-њои ададї, амалиёти гуногунро гузаронидан мумкин аст. Масалан, бо ёрии оператори бахшиш ба таѓйирёбандањои матнї ќиматњои гуногунро бахшидан мумкин аст. Ёдовар мешавем, ки дар охири номи таѓйирёбандањои матнї рамзи $ (аломати доллар) илова мегардад: Х$=”Љашни Истиќлол, муборак!”

Бо матнњо танњо ду амал - конкатенатсия (љамъкунї, њамроњкунї) ва ќиёсро иљро кардан мумкин аст. Масалан, дар натиљаи иљрои барномаи

А$=”12345”В$=”678910”Print A$+B$End

дар экран сатри 12345678910 пайдо мешавад. Аз барномаи мазкур бармеояд, ки њангоми иљрои

амали конкатенатсия (оператори Print A$+B$) ба ќимати як бузургии матнї (A$) ќимати дигар бузургии матнї (B$) њамроњ (пайванд) карда шудааст. Дар натиља, ададњои рамзии 12345 ва 678910 на бо њамдигар љамъ, балки њамроњ карда шудаанд, яъне агар онњо чун дар математика љамъ карда мешуданд, он гоњ бояд 691255 њосил мешуд, аммо тавре дида мешавад, 12345678910 њосил шудааст.

Дар мавриди ќиёси ду бузургии матнї бошад, дар асл рамзи (коди) онњо муќоиса карда мешавад. Аввал рамзњои якуми матнњо (сатрњо) муќоиса карда мешаванд. Агар онњо баробар бошанд, сипас рамзњои дуюм ва ѓайра муќоиса карда мешаванд. Аввалин нобаробарї (яъне, рамзњои нобаробар), таќдири ќимати ифодаи матнии нисбиро муайян месозад. Аз ду рамз њамонаш калонтар њисобида мешавад, ки агар ќимати он аз ќимати дигараш калонтар бошад. Аз

Page 113: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

113

ин рў, пеш аз муќоиса, аввал дарозии матнњои ќиёсшаванда бо њамдигар баробар карда мешаванд. Яъне, барои баробар гаштани миќдори рамзњои матнњо, матни дарозиаш хурдтар аз тарафи рост бо рамзњои холї (фосилањо, пробелњо) пурра

гардонида мешавад.

Функсияи Lеn(α). Дар ин љо Lеn (lеngth - дарозї) - калимаи хидматї ва α ифодаи матнї аст. Вазифаи функсияи мазкур аз њисоб кардани миќдори рамзњои (аз он љумла фосилањо) матни α иборат аст.

Эзоњ: Дар оянда низ, агар мо пешакї ќайд накарда бошем, он гоњ бо ёрии α ифодаи матниро ишора мекунем.

Мисоли 1: А$=”Зинда бош, эй Ватан, Тољикистони озоди ман!” L=Len(А$) Print “Миќдори рамзњои матни А$-”;L End

Натиљаи иљрои барнома сатри Миќдори рамзњои матни А$ - 43 аст.

Функсияи ASC(“α”). Дар ин љо ASC (ASCII: Amеrican Standard Code Information Interchange – Стандарти амрикоии рамзбандї дар табодули иттилоот) - калимаи хид-матї аст. Дар стандарти ASCII барои њар як аломати матн, аз порчаи [0, 255] рамзи ададии ба он мувофиќ пешбинї шудааст. Ќимати функсияи ASC(“α”) адади бутунест, ки он рамзи аломати якуми ифодаи α ба њисоб меравад. Масалан, ќимати функсияи ASC(“z”) ба 122 баробар аст, чунки рам-зи ададии њарфи z 122 аст. Ќимати функсияи ASC(“zarif”) низ ба 122 баробар аст, чунки аломати якуми ифодаи матнї њарфи z аст.

Функсияи Сhr$(α). Дар ин љо Сhr$ (Chаrасtеr – аломат) - калимаи хидматї ва α - рамзи ададии аломат дар стандарти ASCII мебошад. Тартиби кори ин функсия баръакси

Page 114: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

114

тартиби кори функсияи ASC(“α”) аст. Агар дар он љо аз рўйи бузургии худи аломат рамзаш муайян карда шавад, дар ин љо, баръакс, аз рўйи рамз бузургии худи аломат муайян карда мешавад. Масалан, ќимати функсияи Сhr$(122) ба њарфи z баробар аст.

Функсияи Val(α). Дар ин љо Val (Value - ќимат) - калимаи хидматї аст. Функсияи мазкур матни раќамии α-ро ба адади α табдил медињад. Масалан, ќимати функсияи Val(“25”) адади 25 мебошад.

Функсияи Str$(α). Дар ин љо Str (String - сатр) – кали-маи хидматї ва α ифодаи арифметикї мебошад. Функсияи мазкур ќимати ададии α-ро ба матни раќамии α табдил медињад, яъне тартиби кори ин функсия баръакси тартиби кори функсияи Val(“α”). Масалан, функсияи Str$(25) ада-ди 25-ро ба матни аз рамзњои алоњидаи 2 ва 5 иборатбуда, табдил медињад.

Функсияи InStr([n,]α,β). Дар ин љо InStr (In String - дар сатр) - калимаи хидматї, n - ифодаи арифметикии ќисми бутунаш ба порчаи [0, 32767] тааллуќдошта (бидуни зикр, n=1) ва α, β – мувофиќан, ифодањои матнї ва зерматнї мебошанд. Функсияи мазкур мавќеи зерматнро дар матн муайян мекунад. Агар ќимати n аз дарозии матн калон бошад ё дарозии матн ба нул баробар бошад ва ё зерматн ёфта нашавад, ќимати функсияи InStr ба нул баробар

њисобида мешавад.

Функсияи Mid$(α,m[,n]). Дар ин љо Mid$ (Midle - миёнаљой) - калимаи хидматї, α - ифодаи матнї, m ва n - ифодањои арифметикии ќисми бутунашон ба порчаи [0, 32767] мансуббуда мебошанд. Функсияи мазкур аз мавќеи m-уми тарафи чапи матн n-то рамзро људо мекунад. Агар n мављуд набошад, он гоњ аз мавќеи m-уми тарафи чап то интињои матн људо карда мешавад. Масалан, натиљаи иљрои оператори Print Mid$(“Информатика”,3,5) калимаи форма аст.

Page 115: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

115

Функсияи Right$(α,n). Дар ин љо Right (рост) - кали-маи хидматї, α ва n – бузургињоеанд ба мисли бузургињои функсияи болої. Функсияи мазкур n-то рамзи ифодаи матнии α-ро аз тарафи рост људо мекунад. Масалан, натиљаи иљрои оператори Print Right$(“Информатика”,4) калимаи тика аст.

Функсияи Right$-ро њолати хусусии функсияи Mid$ шумурдан мумкин аст, чунки Right$(α,n)=Mid$(α,L-n+1,n), ки L - дарозии α-ро ифода мекунад.

Функсияи Left$(α,n). Дар ин љо Left (чап) - калимаи хид-матї аст. Функсияи мазкур n-то рамзи аввалини ифодаи матнии α-ро аз тарафи чап људо мекунад. Масалан, натиљаи иљрои оператори Print Left$(“Информатика”,6) калимаи Информ аст. Функсияи Left$ низ њолати хусусии функсияи Mid$ аст, яъне Left$(α,n)=Mid$(α,1,n) мебошад.

Функсияњои Ucase$(α) ва Lcase$(α). Дар ин љо Uсase (регистри болої) ва Lсase (регистри поёнї) - калимањои хидматї мебошанд. Функсияи Ucase$(α) барои рамзњои матни α-ро ба рамзњои (њарфњои) калон ва Lcase$(α), баръ-акс, барои ба рамзњои хурд табдил додан, пешбинї шудаанд. Бояд ќайд кард, ки ин функсияњоро танњо њангоми кор бо алифбои лотинї истифода бурдан мумкин аст.

Мисоли 2: Барномаи дар матни додашуда ба љойи як фосила гузоштани ду фосила, бе истифодаи таѓйирёбандаи нави рамзї

Мисоли 3: Барномаи ёфтани суммаи раќамњои адади бутуни мусбати N

Page 116: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

116

Input A$B=Len(A$)I=1

30: If Mid$(A$,I,1)=” “ Then 10Goto 20

10: A$=Mid$(A$,1,I)+Mid$(A$,I,B-I+1)I=I+2:B=B+1

20: I=I+140: If I<=B Then 30

Print A$End

Натиљаи иљрои барнома чунин аст:? Об - манбаи њаёт аст.Об - манбаи њаёт аст.

Input NN$=Str$(N):M=Len(N$):S=0For I=1 To MC=Val(Mid$(N$,I,1))S=S+CNext IPrint “Суммаи раќамњо”;S;“аст.”End

Натиљаи иљрои барнома чунин аст:? 298Суммаи раќамњо 19 аст.

Функсияи Tab(x) дар оператори Print истифода мешавад. Дар ин љо Tab калимаи хидматї ва x ифодаи арифметикии дилхоњ аст. Функсияи Tab(x) барои идораи мавќеи хориљкунии љузъњои рўйхати оператори Print пешбинї шудааст. Њангоми иљрои оператор дар сатри хориљкунї [x]-1 мавќеъ партофта мешавад ва аз мавќеи [x]-ум (0≤[x]≤255) сар карда, ќимати љузъи навбатии рўйхат ба чоп дода мешавад. Агар ќимати [x] аз миќдори умумии мавќеъњои сатри экран калон бошад, он гоњ курсор ба сатри оянда кўчонида мешавад. Дар њолати акс, яъне дар мавриди хурд будани ќимати [x] аз миќдори умумии мавќеъњои сатри экран, функсияи Tab(x) ягон амалро иљро намекунад.

Аз ин функсия бештар њангоми дар шакли љадвал ва графику диаграммањо хориљ кардани натиљањо истифода мебаранд. Масалан, барномаи сохтани графики функсияи y=x2 (дар порчаи [-5, 5] бо ќадами h=1) чунин аст:For X=-5 To 5Print Tab(X*X);“*”Next X

End

Page 117: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

117

Њангоми њар дафъа иљро шудани оператори Print (сатри дуюм), дар мавќеи зарурии экран, ки мувофиќи ќимати x*x муайян карда мешавад, рамзи * пайдо мегардад. Графики функсияи y=x2 тавассути 11 ситорача (*) сохта шудааст.

Мисоли 4: Print Tab(15);3Print Tab(20);”*”;Tab(30);13X=20Print Tab(x);x;Tab(x-10);x^2

Дар натиљаи иљрои сатри якуми барнома дар мавќеи 15-уми сатри якуми хориљкунї адади 3 ба чоп дода мешавад. Њангоми иљрои сатри дуюми барнома – дар мавќеи 20-ум аломати * ва дар мавќеъњои 30-юм ва 31-уми сатри хориљкунии оянда адади 13 ба чоп дода мешаванд. Ва нињоят, њангоми иљрои сатри чоруми барнома – ќимати х дар мавќеъњои 21-22-ум (мавќеи 20-ум барои хориљкунии аломати ќимати х пешбинї шудааст) ва адади 400 (ќимати х2) дар мавќеъњои 24-26-уми сатри сеюми хориљкунї ба чоп дода мешаванд. Њамин тариќ, натиљањои нињоии кори барнома чопи сатрњои зерин мебошад:

3

* 13

20 400

Функсияи Rnd(х) барои њосилкунии пайдарпайии ба ном ададњои тасодуфї хизмат мерасонад, ки онњо аз аргументи функсия - х вобаста буда, дар фосилаи (0, 1) мунтазам таќсим шудаанд. Дар ин љо Rnd (Randomize - тасодуфї) – калимаи хидматї ва х – ифодаи арифметикиест, ки ќиматаш метавонад адади манфї, нул ё мусбат бошад.

Дар мавриди х≤0 будан, функсияи Rnd(х) пайдарпайии ададњои якхела ва дар мавриди х>0 бошад, баръакс, пайдарпайии ададњои гуногунро њосил мекунад.

Page 118: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

118

Барнома Натиља Барнома Натиља

For I=1 To 3Print Rnd(-2)Next I End

0.71332570.7133257

0.7133257

For I=1 To 3Print Rnd(2)Next I End

0.70554750.5334240.5795186

Барои њосилкунии ададњои бутуне, ки ќиматашон дар порчаи [a,b] мехобанд, формулаи t=int(b-a+1)*rnd(1)+a хизмат мерасонад. Аз ададњои тасодуфї бештар дар бозињои компютерї ва барномањои омўзишї истифода мебаранд.

L Саволњо:

1. Бо бузургињои матнї кадом амалиётро иљро кардан мумкин аст?

2. Функсияи Len кадом вазифаро иљро мекунад?3. Дар кадом маврид ќимати функсияи InStr ба нул баробар

мешавад?4. Бо ёрии кадом формулањо функсияњои Right$ ва Left$-ро

ба воситаи функсияи Mid$ ифода кардан мумкин аст?

6 Супориш:1. Тавассути барнома миќдори њарфњои «а» ва «р»-ро дар

матни «Мушк он аст, ки худ бибўяд, на он ки аттор бигўяд» њисоб кунед.

2. Барои ёфтани миќдори калимањои матни «Бухл аз осори бењаёист ва бењаёї – ин далели нобиної» барнома тартиб дињед.

3. Барномаи сохтани матни баръакси матни «12345678910»-ро тартиб дињед.

1.2.13. ВОСИТАЊОИ ГРАФИКЇ

Забони QBasic воситањои сохтан, рангубор кардан ва азчопбарории нуќта, хати рост, росткунља, доира, камон, эллипс ва ѓайраро дорад. Њангоми истифодаи ин забон компютер дар ду реља - матнї ва графикї кор мекунад. Дар рељаи матнї экран аз 25 сатр ва 80 сутун иборат аст, яъне дар як сатр имконияти то 80 рамзро ѓунљонидан мављуд аст.

Page 119: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

119

Дар рељаи графикї бошад (воњиди ченаки экран нуќта аст), экран тавассути операторњои махсус идора карда мешавад ва сифати тасвирањо аз миќдори нуќтањои экранї вобаста мебошад.Оператори Screen n. Дар ин љо Screen (экран) - калимаи хидматї буда, n – аломати рељаи экран (n=0,1,2,…,13) аст. Њангоми n=0 ё 1 будан, рељаи кори экран матнї буда, дар дигар њолатњо графикї аст. Тавре ќайд кардем, дар рељаи графикї экран аз маљмўи нуќтањое иборат аст, ки мавќеи њар кадомаш тавассути координатањояш (х,y) муайян карда мешавад. Координатаи х аз рўйи самти уфуќї (аз чап ба рост) ва координатаи y аз рўйи самти амудї (аз боло ба поён) мавќеи нуќтаро муайян мекунанд. Ба сифати мисол, мавриди n=2, яъне оператори Screen 2-ро дида мебароем. Дар расми зерин координатањои нуќтањои кунљии экран дода шудаанд. Опе-ратори Screen 2 рељаи графикии экранро аз рўйи самти уфуќї бо 640 нуќта ва аз рўйи самти амудї бо 200 нуќта таъмин менамояд. Тасвирањои экранї бо ёрии нуќтањо ташаккул ёфта, мавќеашон тавассути системаи координата муайян карда мешавад. Ибтидои системаи координата њамеша дар ќисми чапи болоии экран љойгир аст.

Оператори View(х1,y

1)-(x

2,y

2) барои људо кардани

ќисми зарурии экран хизмат мерасонад. Дар ин љо View (намо) – калимаи хидматї,х

1,y

1:

координатањои кунљи чапи болої ва x

2,y

2 – координатањои кунљи

рости поёнї мебошанд. Масалан, дар натиљаи иљрои операторњои Screen 2: View(300,100)–(639,199) аз 640х200 нуќтаи экран, барои кор танњо нуќтањои росткунљаи Р-ро ташкилкунанда дастрасанд, яъне дар ин маврид соњаи фаъолияти операторњои графикї {300 ≤≤ Õ639; 199100 ≤≤ Y } аст.

Screen 2

(639,0)

(639,199)(0,199)

(0,0)

P

(300,100)(639,100)

(639,199)(300,199)

Page 120: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

120

Оператори Window(ха,y

а)-(х

в,y

в) барои кор дар

системаи координатаи декартї муайян шудааст, ки дар ин љо Window (равзана, тиреза, панљара) – калимаи хидматї, х

а,y

а ва х

в,y

в – нуќтањои координатї ба шумор мераванд.

Масалан, агар графики функсияи у=sinx-ро (-2ϖ≤x≤2ϖ) дар системаи координатаи декартї, бо истифода аз имкониятњои росткунљаи Р (мисоли болої) ва бањисобгирии шарти│sinx│≤1 сохтан зарур бошад, он гоњ бояд аз барномаи зерин истифода бурд:

Screen 2View(300,100)–(639,199)Window(-6.28,+1)–(6.28,-1)

Дар натиља, дар росткунљаи Р системаи координатаи муќаррарї њосил мешавад, ки

ва 11 ≤≤− Y аст.

Операторњои Pset ва PreSet. Ду намуди оператори Pset мављуд аст: Pset(x,y) ва Pset Step(x,y), ки Pset (Point Set - барќароркунии нуќта) ва Step (ќадам) – калимањои хидматї буда, x,y – мувофиќан координатањои тирњои ОХ ва ОУ (ба-рои оператори Pset(x,y)) ё бузургии лаѓжиш бо самти тирњои ОХ ва ОУ (барои оператори Pset Step(x,y)) мебошанд. Оператори мазкур ранги нуќтаро сиёњ ва ранги заминаашро сафед тасвир менамояд.

Оператори PreSet низ дар ду намуд - PreSet(x,y) ва PreSet Step(x,y) дода мешавад, ки PreSet (Point ReSet – то-закунии нуќта) – калимаи хидматї буда, x,y мазмуни бузургињои оператори Pset-ро дороанд. Ин оператор баръакси оператори Pset кор мекунад, яъне ранги нуќтаро сафед ва ранги заминаашро сиёњ тасвир менамояд.

Оператори Line ду намуди зеринро дорост: Line[(x1,y

1)]-

(x2,y

2) ва Line[Step(x

1,y

1)]-(x

2,y

2). Дар ин љо Line (хати рост)

ва Step – калимањои хидматї, x1,y

1 ва x

2,y

2 мувофиќан

P

(-6.28,+1)(6.28,+1)

(6.28,-1)(-6.28,-1)

Page 121: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

121

координатањои ибтидо ва интињои порчаанд.Оператори мазкур барои кашидани порчањои хати

рост хизмат мерасонад. Агар дар оператор координатањои ибтидои порча (x

1,y

1) партофта шуда бошанд, он гоњ порча

аз нуќтаи охирони баќайдгирифташуда, то нуќтаи интињояш додашуда (маълум), кашида мешавад. Масалан, дар натиљаи иљрои операторњои

Screen 7For I=10 To 30 Step 10Line(10,I)-(80,I),2Next I

порчањои се хати рост њосил мешаванд.

Мисоли 1: Барномаи сохтани графики функсияи y=sinx-ро дар порчаи [-2π,2π] тартиб медињем:

Screen 9 View(170,50)-(470,150) Window(- 6.28,+1)-(6.28,-1) Line(-6.28,0)-(6.28,0) Line(0,-1)-(0,+1) For x=-6.28 To 6.28 Step 0.1 Pset(x,sin(x)) Next x End

Бо ёрии оператори Line росткунљањоро низ кашидан мумкин аст. Барои кашидани росткунља кифоя аст, ки аз ин оператор чор маротиба истифода барем. Аммо, агар ба оператори Line параметрњои нав илова кунем, он гоњ тавассути як оператор низ ин корро ба анљом расонидан мумкин аст: Line(x

1,y

1)-(x

2,y

2),n,b ё Line(x

1,y

1)-(x

2,y

2),n,bf. Дар

ин љо x1,y

1 - координатањои кунљи болоии чапи росткунља,

x2,y

2 – координатањои кунљи поёнии рости росткунља, n –

рамзи ранг, b - рамзи росткунљакашї ва bf – рамзи кашида-ни росткунљаи рангуборшударо ифода менамоянд.

Масалан, дар натиљаи иљрои операторњои

Page 122: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

122

Screen 7Line(100,10)-(180,30),3,BEnd

дар экран расми росткунљае њосил мешавад, ки координатањои кунљи чапи болоияш ба (100,10) ва рости поёниаш ба (180,30) баробар аст.

Оператори Circle барои кашидани давра хизмат мерасонад. Намудњои умумии ин оператор чунин аст: Cir-cle(x,y),r ва Circle Step(x,y),r. Дар ин љо Circle (давра) ва Step - калимањои хидматї, x,y – координатањои маркази давра ва r - радиуси давра мебошанд. Масалан, дар натиљаи иљрои оператори Circle(140,80),10, даврае, ки координатањои марказаш (140,80) ва радиусаш r=10 аст, кашида мешавад.

Бо ёрии оператори Circle камони давра, эллипс ва секторро низ кашидан мумкин аст. Барои кашидани камон, эллипс ва сектор ба оператори Circle параметрњои навро илова кардан лозим аст: Circle(x,y),r,n,α,β,k. Дар ин љо мисли пештара x,y - координатањои маркази давра, r - радиуси давра, n - рамзи ранг, α - нуќтаи ибтидои камон (бо радиан чен карда мешавад), β - нуќтаи интињои камон ва k – коэф-фитсиентест, ки ба y/x њиссаи радиус баробар аст.

Бояд ќайд кард, ки -6,28319≤α,β≤6,28319 аст. Агар ќимати α аз β хурд бошад, он гоњ камони давра (эллипс) ба муќобили аќрабаки соат ва дар њолати акс аз рўйи аќрабаки соат сохта мешавад. Агар k=1 бошад, он гоњ r радиуси давра, агар k>1 бошад, он гоњ r нимтири амудии эллипс ва дар мавриди k<1 будан, r нимтири уфуќии эллипсро муайян месозад. Инчунин ќайд кардан зарур аст, ки њангоми дар оператори Circle(x,y),r,n,α,β,k партофтани баъзе параметрњо, аломати вергули ба онњо мувофиќро (ба истис-нои вергули охирин) партофтан мумкин нест. Масалан, дар натиљаи иљрои оператори Circle(140,80),20,1,,,5 эллипс ва пас аз иљрои оператори Circle(40,170),40,3,0,3.14159/2 камон кашида мешавад.

Page 123: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

123

Истифодаи ранг. Барои кашидани расмњои ранга Бейсик маљмўи рангњоеро пешнињод менамояд, ки онњо дар ороиш додани њам худи расм ва њам заминаи он истифода бурда мешаванд. Барои амалї гаштани ин маќсад, кифоя аст, ки дар интињои операторњои расмкашї боз як интихоби (параметри) нав - n илова карда шавад:

Pset(x,y),nPreSet(x,y),nLine[(x1,y1)]-(x2,y2),n

Circle(x,y),r,nДар рељаи Screen 2 танњо истифодаи ду ранг - сиёњу

сафед имконпазир аст. Бинобар ин, дар ин реља зарурияти истифода ва параметри ранг нолозим аст. Аммо дар рељањои Screen 1 ва Screen 4 бошад, як миќдор рангњои муайянро мавриди истифода ќарор додан мумкин аст, ки ба онњо ќиматњои аз 0 то 3 мувофиќ меоянд.

Оператори Paint барои ороиши рангаи расмњо хизмат мерасонад. Намуди умумии ин оператор Paint(x,y)[,n][,g] аст, ки дар ин љо Paint (ранг - краска) - калимаи хидматї буда, х ва y - координатањои нуќтаи ихтиёрии дохили соња, n - рамзи ранг ва g - рамзи ранги сарњади (њудудњои) соњаи сарбастро ифода мекунанд. Агар g мављуд набошад, он гоњ сарњади соња бо ранги рамзаш n ороиш дода мешавад. Раванди ороишдињї аз нуќтаи координатањояш (x,y) оѓоз ёфта, ба њама самт якбора равона карда мешавад. Дар рељаи Screen 1 параметри g ќиматњои 0-3-ро ќабул карда метавонад.

Оператори Color дар рељаи матнї истифода шуда, барои таѓйирдињии ранги аломатњо ва заминаи онњо хизмат мерасонад. Намуди умумии ин оператор Color [α][,β][,γ] аст, ки дар ин љо Color (ранг - цвет) - калимаи хидматї буда, α - рамзи ранги аломат (адади бутун аз порчаи [0,15]), β – рамзи ранги заминаи аломат ва γ – рамзи ранги сарњади экран мебошанд. Аз параметри γ ваќте истифода бурдан мумкин аст, ки агар оператори Screen аллакай иљро шуда бошад.

Page 124: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

124

Параметрњои α, β, γ метавонанд яке аз 16 ќимати зеринро соњиб бошанд:0 Шаффоф 4 Кабуди баланд 8 Сурхи миёна 12 Сабзи баланд

1 Сиёњ 5 Кабуди паст 9 Сурхи паст 13 Бунафшранг

2 Сабзи миёна 6 Сурхи љигарї 10 Зарди баланд 14 Хокистарранг

3 Сабзи паст 7 Осмонранг 11 Зарди паст 15 Сафед

Њангоми бакорандозии QBasic ба таври пешдид дар назар аст, ки аллакай фармони Color 7,0,0 иљро шудааст.

Оператори Draw Р низ барои кашидани расму тасвирањо хизмат мерасонад, ки дар ин љо Draw (расмкашї) - калимаи хидматї буда, P - пайдарпайии фармонњои графикии ин оператор аст:

Фармон Љойивазкунї Фармон Љойивазкунї

Un

ба боло Ln

ба тарафи чап

Dn

ба поён Rn

ба тарафи рост

En

аз рўйи диагонал ба боло ва рост

Gn

аз рўйи диагонал ба поён ва чап

Fn

аз рўйи диагонал ба поён ва рост

Hn

аз рўйи диагонал ба боло ва чап

Mx,y

ба нуќтаи (x,y) Cn

муайянкунии ранг

Bњаракати курсор бе расмкашї

Pn,m

рангубори соња

Дар ин фармонњо n, m, x ва y ададњои бутунро ифода мекунанд. Дар расми поёнї ба таври возењ самти иљрои

фармонњои оператор нишон дода шудааст.

E

R

F

D

G

L

H

Page 125: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

125

Мисоли 2: Барномаи кашидани расми хона

Screen 2Pset(140,112)Draw”E15R80L5U5L10D5R15U15L-110R5D30R100U30”Pset(155,122): Draw”D20R18U20L18”Pset(170,132):Draw”L5”Pset(195,122):Draw”R40D10L40U10R25D10U5L25”

Мисоли 3: Барномаи кашидани секуљаи росткунља

Screen 2 Pset(240,60)Draw“G54R55U54”

L Саволњо:

1. Барои ба рељаи графикї гузаштан аз кадом оператор истифода мебаранд?

2. Барои љорї кардани системаи координатаи декартї кадом оператор хизмат мерасонад?

3. Пас аз иљрои операторњои зерин кадом шакли геометрї њосил мегардад?

Screen 7Circle(150,100),50,5,1,2,11

4. Вазифаи оператори Paint дар чист? Оператори Color чї?5. Барои тасвири росткунљаи ороишдодашуда аз кадом

тарзи оператори Line истифода мебаранд?6. Оё Шумо фармонњои графикї ва самтњои ба онњо

мувофиќи оператори Draw-ро номбар карда метавонед?

6 Супориш:1. Бо истифода аз фармонњои графикї шаклњои зеринро

созед:

а) чойник; б) курсї; в) телефон; г) гул ва гулдон

(0,0) Х

Y

А(240,60)

С(240,114)В(185,114)

Page 126: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

126

1.2.14. КОМПИЛЯТОР, ИНТЕРПРЕТАТОР. ЃАЛАТЊОИ БАРНОМАВЇ

Транслятсия. Тавре ки маълум аст, воситањои техникии компютер бе истифодаи барномањо ягон корро иљро карда наметавонанд. Вале набояд фаромўш кард, ки компютер танњо барномањои бо тарзи махсус тартибдодашударо иљро карда метавонад. Ин гуна барномањоро барномањо дар забони мошинї ва ё бо рамзи дуї навишташуда мегўянд. Аммо барномањое, ки аз тарафи барномасозони компютер пешкаш мегарданд, одатан дар ягон забони барномарезї навишта мешаванд. Бинобар ин, масъалаи ба таври худкор аз забони барномарезї ба забони мошинї баргардонидани барномањо пеш меояд, ки ин равандро тарљумакунї ё худ транслятсия мегўянд. Ду намуди транслятсияи барномањо мављуд аст: компилятсионї ва интерпретатсионї. Бар-нома-трансляторњоро мувофиќан компилятор ва интер-претатор мегўянд.

Компилятор (талфифкунанда) барномаи системавї буда, матни барномаи дар забони барномарезї сохташударо аз ибтидо то интињо мехонад ва барои он дар забони мошинї барномаи баробарќувваро месозад. Раванди шаклдигаркунии барномаро компилятсия мегўянд. Њангоми компилятсия кор аз рўйи се марњала сурат мегирад. Дар марњалаи якум компютер барномаро аз забони барномарезї ба забони рамзбандии дуї тарљума мекунад. Дар марњалаи дуюм барномаи дар забони мошинї њосилшударо иљро мекунад. Дар марњалаи сеюм натиљањо ва матни нињоии барномаро аз нав дар забони барномарезї пешкаши корбари компютер мегардонад.

Интерпретатор (тафсиркунанда) низ барномаи сис-темавї буда, назорати синтаксиcии фармонњои (опера-торњои) барномаи додашударо ба ўњда дорад. Интер-претатор њар як оператори барномаро дар алоњидагї тарљума мекунад ва њангоми дарёфт накардани ѓалат якбора

Page 127: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

127

ба иљрокунии онњо шурўъ менамояд. Чунин тарзи иљрои барномаро интерпретатсия мегўянд.

Бартарии интерпретатор аз компилятор дар он аст, ки бо ёрии он тахт (дуруст) кардани барнома ва љустуљўи ѓалатњо хеле осон мебошад, вале камбудиаш - дар суръати нисбатан сусти иљрои барнома зоњир мегардад.

Системаи барномарезии муосир, аз љумла забони объектгарои Visual Basic, њам дар рељаи интерпретатсия ва њам компилятсия кор мекунад. Дар Visual Basic раванди дохилкунї ва тањрири барнома бо ёрии рељаи интерпретатсия ва иљрои барнома бошад, дар рељаи компилятсия амалї гардонида мешавад.

Таснифи ѓалатњо. Дар раванди барномарезї эњти-молияти аз тарафи барномарез содир кардани ѓалатњо њамеша мављуд аст. Аксарияти ѓалатњои содиршуда асосан њангоми иљрои барномањо дар компютер ошкор мегарданд. Агар таќрибан 40% ваќти барномарез барои тартибдињии барнома сарф шавад, он гоњ 60% ваќташ бе чуну чаро ба тањрири (ислоњи) он сарф мешавад.

Њамаи ѓалатњои барномавиро шартан ба чор гурўњ људо намудан мумкин аст: синтаксисї, њисобї, мантиќї ва техникї.

•Ѓалатњои синтаксисї асосан њангоми дохилкунии барнома ва додањои он содир мешаванд. Ба ин гурўњ ѓалатњое дохил мешаванд, ки онњо аз нодуруст навиштани калимаву ифодањои забони барномарезї бармеоянд. Ин гуна ѓалатњо аз тарафи интерпретатор зуд ошкор карда мешаванд. Масалан, њангоми дар барнома дучор омадани формулаи x=(a+5-(b+d), интерпретатор дар экран оид ба

нарасидани ќавси пўшида маълумот медињад. •Ѓалатњои семантикї (њисобї) он амалњоеанд, ки аз

нуќтаи назари синтаксиси забон дуруст инъикос ёфта бошанд њам, вале иљрои онњо аз тарафи компютер ѓайриимкон аст. Ин намуд ѓалатњоро низ асосан худи система ошкор мекунад. Маълумот оид ба чунин ѓалатњо дар намунањои гуногуни

Page 128: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

128

забони Бейсик бо тарзњои гуногун нишон дода мешаванд. Дар баъзе намунањо раќами сатри ѓалатдошта, дар дигар намунањо рамзи ѓалат ва ѓайра нишон дода мешавад. Одатан ин намуди ѓалатњо њангоми ба назар нагирифтани соњаи муайянии функсияњои математикї ва мањдудиятњои забони барномарезї содир мешаванд. Масалан, њангоми њисобкунї аз рўйи формулаи V=S/T, барои ќиматњои T=0 ва S=65, иљрои барнома ќатъ мегардад. Сабаб дар он аст, ки ададро ба нул (сифр) таќсим кардан мумкин нест.

•Ѓалатњои мантиќиро ошкор намудан мушкилтар аст, чунки онњо ба ќатъ гардидани иљрои барнома оварда намерасонанд. Дар бисёр мавридњо барнома ба таври расмї (муќаррарї) иљро мешавад, вале натиљањои зарурї њосил намегарданд. Ин намуди ѓалатњоро компютер ошкор карда наметавонад. Барои ошкор намудани онњо бо барнома санљиш гузаронидан зарур аст, яъне иљрои барномаро ба воситаи чунин додањое санљидан лозим аст, ки барояшон љавоби дуруст пешакї маълум бошад. Масалан, бигузор ба-рои њал намудани муодилаи квадратии ах2+bх+с=0 барнома тартиб дода шудааст. Дурустии барномаро барои ќиматњои а=0.1, b=0.2 ва с=0.1 месанљем. Яъне, дар асл барномаро барои њалли муодилаи квадратии 0,1х2+0,2х+0,1=0 омода месозем, ки натиљаи онро мо пешакї медонем. Агар барнома низ натиљањои x

1=-1 ва x

2=-1-ро дињад, пас вай

дуруст тартиб дода шудааст. Дар њолати акс лозим меояд, ки сохтори мантиќии барномаро аз нав дида бароем.

•Ѓалатњои техникї. Ба ин гурўњ ѓалатњое дохил мешаванд, ки онњоро бо роњи барномавї ислоњ кардан ѓайриимкон аст. Масалан, њангоми иљрои барнома аз кор баромадани ягон таљњизоти компютерї метавонад кори барномаро ќатъ гардонад.

Тарзи ислоњи ѓалатњо. Баъзан лозим меояд, ки тарзи иљрои барномаро ќадам ба ќадам (сатр ба сатр) тањлил намоем. Дар Бейсик ин амалиётро функсияи хидматии TRON иљро менамояд. Ин функсия имконият медињад, ки мавќеи

Page 129: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

129

аниќи ѓалат муайян карда шавад. Њангоми аз сафњакалид дохил намудани фармони TRON раќами тартибии сатрњои иљрошудаистода дар экран пайдо мешаванд. Иљрои фармони TRON пеш аз муњлат ба воситаи фармони TROFF ќатъ гардонида мешавад.

Мисоли 1: Фарз мекунем, ки барномаи њалли муодилаи квадратї дар шакли зерин оварда шудааст:

10 a=5:b=2:c=320 d=a+c-b30 print “D=”;d40 x1=d^250 x2=2*d60 print “x1=”x1,“x2=”x270 end

Њангоми истифодаи функсияи TRON дар экран сатрњои зерин пайдо мешавад:

[10] [20] [30] D=6 [40] [50] [60] x1=36 x2=12 [70]

Дар љадвали зерин навъњои ѓалатњои имконпазир оварда шудаанд:

№ Навъи ѓалат Сабаби содиршавии ѓалат

1 Syntax Error Ќоидањои синтаксисї риоя нашудааст

2Return without Go-sub

Калимаи хидматии Return бе оператори Gosub омадааст

3 Out of DataМиќдори додањои оператори Data аз миќдори љузъњои оператори Read камтар аст

4 Next without ForКалимаи хидматии Next бе оператори For омадааст

5 For without NextКалимаи хидматии For бе оператори Next омадааст

Page 130: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

130

6 OverflowЌимати таѓйирёбандаи ададї ё доимии сатрї аз њудуди имконпазир берун аст

7 Label not definedМурољиаткунї ба раќами сатри мављуднабуда

8Subcscript out of range

Индекс аз андозаи тавсифшудаи массив берун мехобад

9 Type mismathНомувофиќии намуди ќимат бо намуди бузургї

10 Function not definedФунксияи навъи Fn бе тасвири пешакї мавриди истифода ќарор ёфтааст

11 Array not definedДар барнома массив бе тавсифи пешакї истифода шудааст

12 File not foundНоми парвандаи мављуднабуда мавриди истифода ќарор ёфтааст

13 Device I/O error Ѓалати таљњизоти дохилкунї/хориљкунї

L Саволњо:

1. Чанд тарзи тарљумаи барномаро аз забони барномарезї ба забони мошинї медонед? Онњо чї ном доранд?

2. Фарќи компилятор аз интерпретатор дар чист?3. Кадом намуди ѓалатњои барномавиро медонед?4. Оё ѓалати техникиро бо роњи барномавї ислоњ намудан

мумкин аст?5. Ѓалати мантиќї аз ѓалати синтаксисї чї фарќ дорад?6. Оё барои ќимати дилхоњи α ќимати функсияи tg(α)-ро

њисоб кардан мумкин аст? Барои чї?7. Вазифаи фармонњои TRON ва TROFF дар чист?

6 Супориш:1. Магар дар навишти ифодањои зерин ѓалат њаст? Агар ња,

пас дар куљо?

a=2*coc(x) y=((( k+(r-4)+5)) u=d+/p-7b=3,6 c=a-b+1/sqr(sin(0) s=(a+b)/c

2. Барои њар чор навъи ѓалатњо мисолњо оред.

Page 131: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

131

1.2.15. МАРЊАЛАЊОИ АСОСИИ ЊАЛЛИ МАСЪАЛАТАВАССУТИ КОМПЮТЕР

Аслан бо ёрии компютер њал намудани масъала маънои онро дорад, ки барномаи њалли масъала ба воситаи компютер иљро карда мешавад. Вале пеш аз амалї гаштани ин марњалаи муњим ва нињої марњалањои дигаре мављуданд, ки онњо барои ин марњала асос ё замина ба њисоб мераванд.

Чун ќоида пеш аз њал кардани масъалаи дилхоњ, бояд аввал онро гузошт. Агар масъала характери њисобї дошта бошад, он гоњ онро бо ёрии имкониятњои математика бояд ба намуди расмї (формалї, ќатъї) овард ва аз рўйи зарурат аз методњои ададии њисоббарорињо истифода бурд. Пас аз он бояд алгоритми њалли масъаларо тартиб дод ва дар асоси он бо ёрии ягон забони алгоритмї барномаи онро сохт. Њар кадоми ин марњалањо метавонанд аз зермарњалањо иборат бошанд ва аз тарафи як иљрочї ё гурўњи иљрочиёни касбу ихтисосњои гуногун амалї гардонида шаванд. Ин марњалањоро ба таври мухтасар чунин тасвир кардан мумкин аст:

Гузориши масъала. Масъалањое, ки тавассути компютер њал мегарданд, аз соњањои гуногуни илм гирифта мешаванд. Онњо метавонанд характери њисобї ё ѓайрињисобї дошта бошанд. Масалан, масъалањои математикї, физикї, биоло-гї, химиявї ва ѓайра бештар характери њисобї доранд, вале масъалањои лингвистикї ва дигар фанњои гуманитарї, масъа-лањо аз соњаи мусиќї, варзиш ва ѓайра асосан характери ѓайрињисобї доранд. Новобаста аз характери масъала, бояд он пеш аз њалаш гузошта шавад. Гузориш, тањлил ва ќабули масъала ба зиммаи шахсе гузошта мешавад, ки вай бевосита мутахассиси соњаи мазкур аст.

Математикикунонии масъала. Тасвири аниќ ва ќатъии шартњои масъала, сохтани амсилаи (модели) математикї ва

Масъала Методи њал Барнома Компютер

Page 132: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

132

пешнињод намудани тарзи њалли онро математикикунонии масъала мегўянд. Зермарњалањои коркарди математикии масъалаи гузошташударо расмикунонї (ё формализат-сия) низ мегўянд. Дар онњо аз баробарию нобаробарињо, формулаю муодилањои математикї истифода бурда, амсилаи масъалаи додашударо месозанд. Агар масъалаи додашуда аз соњаи математика гирифта шуда бошад, он гоњ ин марњала соќит мешавад.

Интихоб ё коркарди методи њал. Баъзан амсилаи математикии масъала чунон сохта мешавад, ки ёфтани њалли ададии он душвор ё ѓайриимкон аст. Аммо маќсад аз истифодабарии компютер аз он иборат аст, ки њалли масъалањо на дар шакли формулањо (аналитикї), балки ададњо ёфта шавад. Як соњаи математика, ки математикаи њисоббарорї ном дорад, мањз ба коркарди методњо ва ёфтани њалли ададї ё таќрибии масъалањо машѓул аст. Барои њар як синфи масъалањои математикї методњои зиёде кор карда баромада шудаанд. Вазифаи алгоритмсоз аз он иборат аст, ки аз маљмўи методњои додашуда, бояд методи бењтаринро интихоб намояд, дар мавриди зарурї онро такмил дињад ва барои њалли масъалаи худ дуруст истифода барад. Агар ягон методи мављуда ё маълум барои њалли он масъала мувофиќ наояд, он гоњ вай бояд ба коркарди методи мувофиќтар камар бандад ва ё ба марњалаи математикикунонї аз нав баргардад. Умуман, марњалаи мазкур характери илмї-тадќиќотї дорад.

Алгоритмсозї. Бо ин марњала мо аллакай шиносем. Се марњалаи болоиро ба њисоб гирифта, барои масъалаи додашуда алгоритм сохтан зарур аст. Алгоритми њалли масъаларо дар намуди дилхоњ тартиб додан мумкин аст, аммо бештар аз блок-наќшањо истифода мебаранд.

Барномарезї. Марњалаи барномарезї низ барои хонанда нав нест. Дар асоси алгоритми пешнињодшуда, барномарез бояд тавассути ягон забони барномарезї барои компютер барнома тартиб дињад. Ин марњала марњалаи

Page 133: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

133

љамъбастї ба њисоб рафта, њамаи марњалањои болої мањз барои амалї гаштани њамин марњала пешбинї шудаанд. Тањлил ва бањодињии натиљањои компютериро мутахассисе ба зимма мегирад, ки ў ин масъаларо шахсан гузоштааст.

Њоло якчанд масъалањои физикиро муоина мекунем.

Масъалаи 1: Ќуввае ёфта шавад, ки зери таъсири он љисми массааш 25кг бо шитоби 0,25m/c2 њаракат кунад. Аз формулаи F=ma истифода бурда, барнома месозем:

REM ЌувваМ=25А=25F=М*АPRINT “F=”;F

Масъалаи 2: Гармигузаронии обљўшонаки барќиро вобаста аз рўйи шиддати U, ќувваи љараёни I ва ваќти t муайян кунед, ки он њарорати оби массааш m-ро аз T

1 то T

2 боло бардорад.

Барои њалли масъала аз формулањои миќдори гармї - Q=cm(T

2-T

1), кори љараёни барќ - A=IUt ва гармигузаронї -

N=Q/A истифода бурда, алгоритми њалли масъаларо бо ёрии забони алгоритмї, бо тарзи блок-наќшавї ва барнома дар забони Бейсик тартиб медињем.

Забони алгоритмї Блок-наќша Барнома

алг Гармигузаронї (њаќ с,м,t,T

1,T

2,I,U, њаќ N)

арг с,m,t,T1,T

2,I,U

нат N ибт Њисобкунии миќдори гармие, ки барои љўшонидани об лозим аст:

Q:=cm(T2-T

1)

Њисобкунии кори љараёни барќ:

A:=IUtЊ и с о б к у н и и гармигузаронї:

N:=Q/A интињоинт

REM Гармигуза-ронїI N P U T C,M,T,T1,T2,I,V Q=C*М*(Т2-Т1) A=I*U*TN=Q/APRINT “N =”;NEND

Ибтидо

Дохилкуниc,m,t,T

1,T

2,I,U

Q:=cm(T2-T

1)

A:=IUT

N:=Q/A

Чопи N

Интињо

Page 134: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

134

Масъалаи 3: Даври лаппиши маятники математикии дарозиаш l барои њолатњои зерин ёфта шавад: Нуќтаи M бењаракат аст. Нуќтаи M бошитоб ба боло ё ба поён њаракат мекунад.

Аз формулањои зерин истифода бурда, алгоритм ва барномаи масъаларо тартиб медињем:

Нуќта бењаракат астНуќта бо шитоби доимии a ба

боло њаракат мекунад

Нуќта бо шитоби доимии a ба поён њаракат мекунад

glT π2= ag

lT+

= π2ag

lT−

= π2

Ба доимии π номи PI дода, даври лаппиши маятникро дар мавриди якум бо Т, дуюм бо Т

1 ва сеюм бо Т

2 ишорат

менамоем. Дар натиља барномаи масъалаи додашуда дар Бейсик метавонад намуди зеринро дошта бошад:

REM Лаппиши маятники мате-матикї INPUT L,G,A IF A=0 THEN 70 T1=2*PI*SQR(L/(G+A)) T2=2*PI*SQR(L/(G-A)) GOTO 90 70: T=2*PI*SQR(L/G) PRINT “T=”;T:GOTO 100 90: PRINT “T1=”;T1,“T2=”;T2100: END

Барномаи мазкур дар асоси алгоритми зерин сохта шудааст:

Забони алгоритмї Блок-наќша

Page 135: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

135

алг Маятник (њаќ l,g,a; њaќ T,T

1,T

2)

арг l,g,a нат T,T

1,T

2

ибт агар а=0

он гоњ glT π2:=

вагарна

aglT+

= π2:1

aglT−

= π2:2

итмоминт

L Саволњо:

1. Марњалањои асосии њалли масъала кадомњоянд?2. Ба фикри шумо марњалае, ки бевосита бо ёрии компютер

иљро карда мешавад, кадом аст? Иљрочии дигар марњалањо кињо ё чињо шуда метавонанд?

3. Кадом ваќт гуфтан мумкин аст, ки амсилаи математикии њалли масъала аллакай маълум аст?

4. Гузориш ва тањлили натиљањо ба зиммаи кї супурда мешавад?

6 Супориш:

1. Дар дегчаи алюминии массааш 800 грамма 5 литр обро то њарорати 1000С гарм кардан (љўшонидан) лозим аст. Алгоритм ва барномаи њисобкунии миќдори гармии обљўшониро созед.

2. Бо ёрии омўзгор аз фанњои физика, химия ва биология дутогї масъала тартиб дињед ва барои онњо агоритму барнома сохта, ба воситаи компютер њаллашонро ёбед.

aglT

aglT

−=

+=

π

π

2:

2:

2

1

Ибтидо

a=0не

ња

Дохилкунииi,g,a

Хориљку-нии Т

Хориљку-нии Т

glT π2:=

Page 136: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

136

1.2.16. КОРКАРДИ ПАРВАНДАЊО

Бо мафњуми парванда (файл) мо дар синфњои поёнї шинос шуда будем. Хотиррасон менамоем, ки парванда – пайдарпайии номдори байтњо мебошад. Вазифаи асосии парванда – ин нигоњ доштани иттилоот аст. Вале он барои ирсоли додањо аз як барнома ба барномаи дигар ва аз як система ба системаи дигар низ хизмат мерасонад. Бо ифодаи дигар, парванда – махзани маълумоти додашудаи устувор ва мутањаррик аст. Аммо он махзани одии додањо нест, балки махзанест, ки соњиби ному хосиятњо (атрибут) аст ва ваќти эљоду ваќти охирин коркардашро доимо дар хотир дорад.

Парвандањо барномавї ва маълумотї мешаванд. Масалан, агар мо барномаи зерини аз чор оператори забони QBasic иборатбударо дар хотираи компютер бо ягон ном нигоњ дорем (сабт кунем), он гоњ онро парвандаи барномавї њисобидан мумкин аст:

Input A,X,BY=A*X+BPrint “Y=”;YEnd

Айнан њамин тавр, агар љадвали поёниро њамчун “Љадвали бањоњои хонанда” номгузорї карда, дар диск сабт кунем, он гоњ онро парвандаи маълумотї шумурдан мумкин аст:

1 5 4 3 22 4 4 3 53 3 3 3 34 5 4 5 5

Барои коркарди комили парванда, дар Бейсик мафњу-ми канали дохилкунї-хориљкунї љорї карда шудааст. Њангоми кушодани файли дилхоњи Бейсик ба он як канали хусусї бо раќами мушаххас мувофиќ гузошта мешавад, ки маълумотњо мањз тавассути он аз хотира хонда ё ба он сабт

Page 137: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

137

карда мешаванд. Бинобар ин њангоми барномарезї бояд панљ љузъ ба њисоб гирифта шавад: Номи парвандаро бо канали дохилкунї-хориљкунї

алоќаманд кардан ва тавассути оператори Open онро њамчун парвандаи кушода эълон намудан.

Парвандаро (барои дохилкунї ё хориљкунии маълумот) тавассути яке аз ду роњи табодули маълумот кушода эълон кардан: Input – аз диск дохилкунии додањо ба барнома, Output – хориљкунии натиљањо аз барнома ба парванда.

Эълон кардани навъи дастрасї ба парванда:• парвандањои матнии имконияти хондан ва сабт

кардани муттасилдошта (пайдарпайдошта - Sequential),

• парвандањои сохтории имконияти хондан ва сабт кардани мустаќимдошта (бевоситадошта - Random),

• парвандањои ѓайрисохтории дуї (Binary). Фиристодан ва ќабули маълумот тавассути операторњои

Print ва Input ё операторњои Put ва Get. Пўшидани канали дохилкунї-хориљкунї бо ёрии

оператори Close.

Мисоли 1: Барномае месозем, ки бо ёрии он ва тавассути сафњакалид ному насаб ва соли таваллуди хонандагон ба хотираи компютер дохил карда мешавад ва худи барнома њамчун парвандаи муттасил (пайдарпай - Sequential) дар диск нигоњ дошта мешавад.

Open “Khonandagon” For Output As#1While F$<> “*”Input “Ному насабро дохил кунед. Барои итмоми кор аломати *-ро пахш кунед”;f$If f$<> “*” Then Input “Соли таваллудро дохил кунед - 4 раќам”,st Write#1,f$:Write#1,stEnd ifWEndClose#1Stop

Page 138: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

138

Дар ин барнома оператори Open парвандаи навро бо номи «Khonandagon» (агар дар диск парвандае бо њамин ном мављуд бошад, он гоњ он њазф карда мешавад) муаррифї менамояд ва онро њамчун парвандаи кушодаи раќами канали дохилкунї-хориљкуниаш ба 1 баробарбуда эълон мекунад. Сатрњои дуюм ва сеюм (операторњои While ва Input) ба таври даврї ному насаби хонандагонро дохил мекунанд ва ба таѓйирёбандаи сатрии f$ мебахшанд. Агар ба љойи ному насаб аломати ситорача - * дохил карда шавад, он гоњ давр ба итмом мерасад ва парванда тавассути оператори Close пўшида мешавад. Дар њолати акс (сатрњои чорум, панљум), санаи соли таваллуди хонандагон дохил карда мешавад, он ба таѓйирёбандаи st бахшида мешавад ва дар якљоягї бо ному насаб, бо ёрии операторњои Write (сатри шашум), дар парванда бо раќами 1 сабт мегардад.

Мисоли 2: Барномаеро тартиб медињем, ки он парвандаи пешинаро (Khonandagon-ро) њамчун парвандаи маълумотї ба њисоб мегирад ва ному насаби хонандагонро вобаста ба соли таваллудашон меёбад ва дар экран инъикос менамояд.

Input “Кадом соли таваллуд лозим?”;grPrint “Рўйхати хонандагон»:”:PrintOpen «Khonandagon» For Input As#1k=0While Not EOF(1)Input #1,f$,stIf gr=st Then k=k+1Print k;“ ”;f$End IfWendPrint “Интињои маълумот”Close #1Stop

Дар ин барнома оператори Open парвандаи «Khon-

Page 139: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

139

andagon»-ро њамчун парвандаи маълумотї (барои хондан) кушода, ба он раќами 1 мебахшад (агар маълумотро дар як ваќт аз якчанд парванда хондан зарур бошад, он гоњ онњоро бо раќамњои гуногун кушодан лозим аст). Њисобкунаки k - раќами тартибии рўйхат буда, дар ибтидо ќимати он ба нул баробар аст. Бо ёрии оператори Input аз парванда ному насаб ва соли таваллуди хонандагон дохил карда мешаванд (ёфта мешаванд, хонда мешаванд) ва ба таѓйирёбандањои f$ ва st бахшида мешаванд. Тавассути оператори While, бо ёрии функсияи EOF (End of File), шарти ба итмом расидани парвандаи маълумотї санљида мешавад. Агар додањои маълумотии парванда ба охир расида бошанд (ё аз аввал мављуд набошанд), он гоњ ќимати функсияи EOF True аст ва сикли дохилкунии парванда ба итмом мерасад (ё сар наме-шавад). Бо ёрии оператори шартии If барнома ному насаби хонандагонеро, ки соли таваллудашон ба st баробар аст, барои чопкунї ба ќайд мегирад ва дар ин маврид ќимати њисобкунак ба як воњид зиёд мегардад.

L Саволњо:

1. Мафњуми парвандаро чї тавр шарњ додан мумкин аст?2. Кадом навъњои дастрасиро ба парвандањо медонед?

6 Супориш:1. Мисолњои дар мавзўъ овардашударо бо ёрии компютер

иљро кунед ва онњоро такмил дињед.

Page 140: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

140

БОБИ 3

САБКИ ОБЪЕКТГАРОИ барнОмарезї

1.3.1. ЗАБОНИ БАРНОМАРЕЗИИ VISUAL BASIC

Барномарезии объектгаро (БО) фалсафаи нав, шакли нави тафаккури алгоритмї дар саноати барномарезї ба њисоб меравад. Фањмиш ва тарзи фикрронии инсон, ки характери ассотсиативї дорад, њангоми омўзиш ва њалли масъалањои нав кўшиш ба харљ медињад, ки консепсияи мављударо бо консепсияњои пешина алоќаманд карда, байни онњо робитаи дедуктивї барќарор намояд.

Фарњанги барномарезии классикї, ки анъанаи бештар аз нимасра дорад, асосан ба принсипи фон Нейман бунёд ёфтааст. Забонњои аввалини барномарезї, аз ќабили Ассемблер, Фортран, Алгол, Паскал, Ада, Си ва ѓайра аз рўйи сохторашон бевосита ба сохти компютер алоќаманданд. Барномарезии объектгаро бошад, ба раванди барномарезї њамчун ба раванди танзимкунандаи љузъњои барнома муносибат карданро таќозо менамояд.

Табиист, ки забонњои барномарезии объектгарои муосир дар љойи холї пайдо нашудаанд. Пайдоиши онњо пеш аз њама бо пайдоиши забонњои Simula ва Small Talk алоќаманд аст, ки дар онњо аввалин маротиба ба сифати мавод «объект»-њо истифода бурда шудаанд. Мафњуми барномарезии объектгаро низ пас аз пайдоиши њамин забонњо мавриди истифода ќарор дода шудааст. Аммо соли 1980 аз тарафи кормандони ширкати AT&T забони нави С++ тавлид гашт ва маълум гардид, ки инќилоби барномарезї њанўз дар пеш аст. Дар айни њол, бояд ќайд кард, ки инќилоби амалишуда барои инсоният њанўз ягон оќибати фољиавї наовардааст. Њоло барномарезон дар баробари истифодаи методњои нави объектаро, аз методњои устувору собиќадори барномарезии классикї низ ба таври васеъ истифода мебаранд.

Page 141: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

141

Visual Basic (VB). Соли 1991 ширкати Microsoft барои њаводорони компютер намунаи якуми забони барномарезии VB-ро пешнињод намуд. Соли 1992 намунаи дуюми ин забон пањн гардид, ки вай нисбат ба намунаи якумаш имкониятњои зиёдтар дошт. Намунаи сеюми VB соли 1993 тавлид гардид. Дар он афзорњои пуриќтидортар мавриди истифода ќарор доштанд. Дар њаќиќат VB њамќадами замон аст. Њоло намунаи њафтуми он – Visual Basic.Net мавриди истифода ќарор дорад. Вале корбарон аз намунањои чорум, панљум ва шашуми VB низ ба таври васеъ истифода мебаранд, ки њар кадомашон аз њамдигар аз рўйи тавоної ва имкониятњои худ фарќ мекунанд. VB воситаи пуриќтидори эљоди муњити (интерфейси) графикии экрании (визуалии) корбар ба њисоб меравад.

VB системаи нави барномарезї буда, бо ёрии он барномањои дараљаи мураккабиашон гуногунро сохтан мумкин аст. Ба воситаи ин забон на танњо барнома, балки замимањои Windows-ро низ хеле осон сохтан мумкин аст. Ва аљоиботаш дар он аст, ки барои иљрои ин гуна корњо тайёрї ва дониши махсус талаб карда намешавад. Вале бояд дар назар дошт, ки гарчанде асоси Visual Basic-ро забони алго-ритмии Бейсик ташкил дињад њам, тарзи кори ин забонњо аз њамдигар ба куллї фарќ доранд.

VB аз зумраи он забонњои аввалини барномарезии сифатан нав мебошад, ки тавассути он барномањо дар асоси идоракунии объектњо ва њодисањо сохта мешаванд. Њодиса гуфта амали муќаррарии (баргузини фармон, пахши тугмаи муш дар равзана, љойгузини нишондињандаи муш ва ѓайра) Windows-ро меноманд, ки он бояд аз тара-фи корбар иљро карда шавад. Дар ин маврид, барномарезї бештар ба сохтани замимањои Windows шабоњат дошта, аз маљмўи объектњои (микробарномањои, протседурањои) ба њам алоќаманд иборат аст. Њангоми сохтани барнома барномарез мекўшад, ки њарчи бештар аз зербарнома (прот-седура) ва функсияњои тайёри дар хазинаи (китобхонаи)

Page 142: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

142

зербарномањо мањфузбуда истифода барад. Операторњои алоњида, ки дар ин љо рамзи (коди) барномавї ном бурда мешаванд, танњо барои пайвастани объектњои барнома мавриди истифода ќарор дода мешаванд. Бо ибораи дигар, барнома дар VB биноеро мемонад, ки он тавассути љузъњои алоњида (объектњо, блокњо) ва масолењи сохтмонї бунёд карда шудааст.

Мафњумњои асосї. Фарз мекунем, ки аз барномарез тартиб додани барномаи кашидани доираи ранга талаб карда шуда бошад. Дар ин маврид тавре ки маълум аст, бояд ќимати бузургии радиус, координатањои марказ ва ранги доира пешакї маълум бошад. Ва агар барои амалї гаштани ин маќсад мо аз имкониятњои барномарезии муќаррарї истифода барем, он гоњ мо дар барнома бояд таѓйирёбандањои зеринро ворид созем: R - радиуси доира, Х,Y – координатањои маркази доира ва Rang – ранги доира. Пас аз он ба мо протседурае лозим меояд, ки он тавассути интихобњои (параметрњои) R, X, Y, Rang бояд дар экран доираро тасвир намояд. Онро метавонем, масалан, Draw номгузорї кунем.

Камбудии сабки барномарезии муќаррарї аз он иборат аст, ки дар он маълумотњо бо њам алоќаманд нестанд. Масалан, бигузор талаб карда шуда бошад, ки тавассути якчанд доира расми «Бобои барфї» њосил карда шавад. Супориши мазкурро бо ду тарз иљро кардан мумкин аст:

• Барои њар як доираи дар расм истифодашаванда маљмўи параметрњои мувофиќро муайян кардан ва протседураи Draw-ро њар дафъа аз нав навиштан.

• Протседураи Draw-ро як маротиба навиштан ва онро барои њар як доира бо ќиматњои нави параметрњои R, X, Y, Rang татбиќ кардан.

Дар мавриди якум истифодаи миќдори зиёди таѓйирёбандањо лозим меояд, ки ин боиси њаљман калон шудани барнома мегардад. Аз ин рў, ин тарзро роњи хуби

Page 143: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

143

њалли масъала шумурдан нашояд. Дар мавриди дуюм бошад, њангоми дохил кардани ќиматњои нави параметрњои R, X, Y, Rang ќиматњои пешинаи онњо нест мешаванд. Аз ин нуќтаи назар, ин тарзро низ мукаммал њисобидан мумкин нест, зеро дар хотираи компютер танњо ќимати параметрњои доираи охирин боќї мемонанду халос.

Агар дар барнома танњо бо сохтани расми «Бобои барфї» мањдуд шавем, он гоњ камбудии тарзи дуюм эњсос намешавад. Вале њангоми аз рўйи зарурат ба барнома ворид сохтани таѓйироту иловањо нотавонии ин тарзи барномарезиро ба зудї пай бурдан мумкин аст. Масалан, барои ба самтњои гуногуни экран равона кардани «Бобои барфї» донистани координатаи мавќеи пешинаи он зарур нест. Ин масъаларо бо ёрии протседураи Move њал кардан мумкин аст. Ва дар ин маврид тарзи дуюми барномарезї пурра љавобгўи гузори масъала аст. Аммо њангоми њаракати «Бобои барфї» барои њар як доираи таркибии он таъмин намудани ранги алоњида, аз тарзи дуюми барномарезї истифода бурдан ѓайриимкон аст. Зеро, тавре ки дар боло ќайд кардем, дар ин маврид ќимати параметрњои њамаи доирањо, ба истиснои доираи охирин, аз хотира пок мешавад. Њангоми истифодаи тарзи якум бошад, њамаи таѓйиротњои зикршударо љорї кардан мумкин аст. Дар ин маврид бо истифода аз протседураи, масалан, Change Color ранги њар як доираи «Бобои барфї»-ро дигаргун кардан мумкин аст. Ин протседура дорои ду параметр - номи объекти (доираи) рангаш таѓйирёбанда ва намуди ранг мебошад. Дар ин љо мушкилї танњо дар он аст, ки њар як протседураро барои њар як ќисми «Бобои барфї» дар алоњидагї навиштан лозим аст.

Агар бо назардошти параметрњои номбаркардашуда, барномаи тасвир кардани якчанд «Бобои барфї» талаб карда шуда бошад, он гоњ истифодаи сабки барномарезии муќаррарї кори барномарезро хеле мушкил мегардонад. Пеш аз њама ин ба афзоиши њаљми барнома оварда

Page 144: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

144

мерасонад. Њаљман калон гардидани барнома бошад, хондани онро мушкил мегардонад. Одатан дар ин гуна мавридњо ба барнома ворид сохтани њар гуна таѓйироту иловањо кори боз сангинтар аст.

Њалли масъали овардашуда, яъне сохтани якчанд «Бобои барфї»-и доирањояшон рангаи њаракаткунанда, аз нуќтаи назари сабки барномарезии объектгаро ягон мушкилие надорад. Дар ин сабк ба љойи миќдори зиёди таѓйирёбандањо њамагї аз якчанд объект истифода мебаранд. Дар ин љо доирањо объектњои мустаќили дорои сохтори якхела буда, аз њамдигар танњо бо ќимати параметрњояшон фарќ мекунанд. Протседурањои Draw, Move, Change Color барои њар кадоми ин объектњо ба таври ягона ва ба худ хос истифода мегардад.

Њамин тариќ, аз нуќтаи назари БО объект – мафњумест, ки дар худ маљмўи додањо ва амалњои бо онњо татбиќшавандаро муттањид месозад. Дар мисоли мо ба сифати объектњо доирањои «Бобои барфї» баромад мекунанд, ки онњо ба як навъ тааллуќ дошта, хосият ва протседураи якхелаи коркард доранд, яъне њамаи доирањо љузъњои синфи муайянанд. Параметрњо ё нишондињандањои њолати объект (радиус, координатањои марказ, намуди ранг ва ѓайра) хосият ва протседураву функсияњои даъватї (амалњои коркарди объект - бањаракаторї, рангкунї) методњои объект номида мешаванд.

L Саволњо:

1. Барномарезии объектгаро чї гуна барномарезї аст? Он аз барномарезии муќаррарї (классикї) чї фарќ дорад?

2. Зери мафњуми рамзи (коди) барномавї чї дар назар дошта шудааст?

3. Объект чист? Хосияти объект ва методи объект-чї?

6 Супориш:1. Матни мавзўъро бодиќќат хонед.2. Камбудињои сабки барномарезии муќаррарї ва

Page 145: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

145

бартарињои сабки барномарезии объектгароро номбар кунед.

1.3.2. ИНКАПСУЛАТСИЯ, МЕРОСГУЗОРЇ ВА ПОЛИМОРФИЗМ

Хосиятњо ва методњои объектро дар якљоягї инкапсулатсия мегўянд. Дар ин маврид объектро њамчун “капсулае” тасаввур кардан мумкин аст, ки дар он рамзи барномавї (метод) ва маълумотњо (хосиятњо) мањфузанд. Инкапсулатсия имконият фароњам меоварад, ки фањмиш, тањрир ва таѓйир додани барнома осон гардонида шавад ва бе донистани дарунмояи объект, истифодаи худи объект дар барнома таъмин карда шавад.

Акнун мазмуни мафњумњои овардашударо дар мисоли барномарезии расми «Бобои барфї» аз нуќтаи назари БО баён месозем. Синфи объектњоро (доирањоро) Round номгузорї мекунем. Пас Round дорои чунин хосиятњо:

• R - радиуси доира; • Х,Y - координатањои маркази доира;• Rang - ранги доира

ва фарогири методњои зерин мебошад:

• Draw - тасвиркунандаи доира, мутобиќи параметрњои додашуда;• Move - њаракатдињандаи доира ба масофаи муайян, аз рўйи самти додашуда;• Change Color - таѓйирдињандаи ранги доира.

Барои дар экран њосил намудани тасвири «Бобои барфї» њамагї се объект (доира) кифоя аст: объекти болоиро – Head, мобайниро – Body ва поёниро – Foot ном мегузорем. Њамаи ин объектњо мансуб ба як синф, яъне

Объект

Хосиятњо

Методњо

Page 146: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

146

Round мебошанд. Аз ин љо, њамаи онњо дорои хосиятњои якхела (R, X, Y, Rang) ва методњои якхела (Draw, Move, Change Color) мебошанд.

Гарчанде дар аксари мавридњо барои њалли як масъала масрафи њаљми хотираи компютер дар ѓунљонидани барномаи объектгаро бо њаљми барномаи муќаррарї баробар бошад њам, вале дохил намудани таѓйироту иловањо ба барномаи объектгаро нисбат ба барномаи муќаррарї якчанд маротиба осонтар ва зудтар амалї мегардад. Барои исботи ин гуфтањо «Бобои барфї»-ро бо чашмони милт-милткунанда тасвир мекунем, яъне ба барномаи объектгаро боз объектњои нав – чашмонро илова менамоем. Бояд ќайд кард, ки њамаи хосияту методњои ба объект-доирањо тааллуќдоштаи синфи Round ба объект-чашмон низ тааллуќ доранд. Бо ибораи дигар, чашмони «Бобои барфї» бояд бо ќисмњои дигари дар экран њаракаткунандаи он њамрадиф буда, илова бар ин дорои хосияти таѓйирдињии ранг бошад.

Барои иловаи ин таѓйирот, ба барнома боз як синфи нав - Eyes (чашмон)-ро њамроњ намудан лозим аст. Тавре ќайд кардем, синфи Eyes ба ѓайр аз дар бар гирифтани њамаи хосияту методњои синфи Round, бояд боз як методи дигар - Blinc (милт-милткунї)-ро низ дар бар гирад. Барои дар синфи Eyes аз нав такроран нишон надодани хосиятњо ва методњои ба синфи Round тааллуќдошта, дар БО механизми махсус - меросгузорї пешбинї шудааст. Хосияти меросгузории объект имконият фароњам меоварад, ки як ќисми рамзи барномавии лоињаи он дастраси лоињањои дигар бошад. Тавассути хосияти меросгузорї алоќаи байни объектњо ташаккул дода мешавад. Меросгузорї бо роњи ташкил намудани сохтори зинавии (иерархии) синфњо амалї гардонида мешавад.

Барои содатар ифода намудани раванди меросгузорї, аз мафњумњои “волидайн” ва “насл” (ё “фарзанд”) истифо-да мебаранд. Масалан, дар барномаи “Бобои барфї” ав-

Page 147: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

147

вал синфи Rоund тарњрезї шудааст, ки он ифодагари решаи сохтори зинавї ба њисоб меравад. Си-пас синфи Eyes сох-та шудааст, ки дар он ба ѓайр аз методи нави Blinc, бе ягон таѓйирот њамаи хо-сиятњо ва методњои синфи Rоund ворид гаштаанд, яъне син-фи Eyes хосиятњо ва методњои синфи Round-ро ба мерос гирифтааст. Азбаски

дар сохтори зинавї синфи Eyes пас аз синфи Round меояд, бинобар он Round нисбат ба Eyes волидайн ва Eyes нисбат ба Round фарзанд (насл) ба њисоб меравад. Њамин тариќ, хосияти меросгузории объектро њамчун ба синфи фарзандї дастрас будани њамаи хосиятњо ва методњои синфи волидай-нї маънидод кардан мумкин аст.

Калимаи полиморфизм тавассути калимањои юнонии poly (бисёр) ва morphos (шакл) сохта шудааст. Барои кушодани мазмуни мафњуми полиморфизм, фарз мекунем, ки татбиќи амалњои пештар барои сохтани доирањо пешбинишуда (кашидан, њаракат кунонидан, таѓйир додани ранг ва ѓайра), дар сохтани дигар шаклњои геометрї (ма-салан, росткунљањо) низ талаб карда шуда бошад. Аммо бояд ќайд кард, ки барои кашидани росткунља донистани координатањои яке аз ќуллањои он ва бузургињои дарозиву бари ин шакл лозиманд. Барои амалї гардонидани ин маќсад, дар барнома синфи нави Rect (Rectangle - рост-кунља)-ро њамчун синфи фарзандии дигари Round созмон

Round

Eyes

Хосиятњо:RX,YRang

Хосиятњо:RX,YRang

Методњо:DrawMoveChenge Color

Методњо:DrawMove + BlincChenge Color

Page 148: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

148

медињем ва хосиятњои синфи Round-ро барои синфи Rect чунин татбиќ (муайян) мекунем: X,Y – координатањои яке аз ќуллањои баргузидаи

росткунља; R – бузургии дарозии (ё бари) росткунља.

Тавре аз миќдори хосиятњои росткунља бармеояд, дар ин маврид тавсифи боз як хосияти дигари он – бар (ё дарозї) аз мадди назар берун мондааст. Аз ин рў, азбаски синфи Round барои тасвири шаклњои геометрии муайян (танњо доирањо) пешбинї шудааст, бинобарин ба он зарурати бахшидани (додани) мазмуни нав пеш меояд. Барои оммавї гардонидани синфи Round, яъне барои тасвири њарчи бештари намудњои шаклњои геометрї, бояд мо хосиятњои онро дигар намоем. Дар ин маврид мо ба љойи радиус ва координатањои маркази доира тавсифи хосиятњои зеринро пешнињод менамоем:

Top – координатаи сарњади болоии шакл; Left – координатаи сарњади чапи шакл; Height – баландии шакл; Width – бари шакл.

Мувофиќи чунин тарзи танзими хосиятњо, барзиёдї ё норасоии координатањоро барои њар гуна шакл муайян (њисоб) кардан мумкин аст. Масалан, барои ёфтани њамаи координатањои ќуллањои росткунља ба координатаи сарњади чапаш бари онро илова карда, аз координатаи сарњади болоияш баландии онро тарњ кардан лозим аст. Мисол, њангоми Top=50, Left=20, Height=30, Width=60 будан, координатаи сарњади рости росткунља аз рўйи формулаи Left+Width=20+60=80 ва координатаи сарњади поёниаш аз рўйи формулаи Top-Height=50-30=20 њисоб карда мешавад. Ва њамин тариќ, росткунљаи сохташаванда дорои координатањои A(20,50), B(80,50), C(80,20), D(20,20) мебошад.

Page 149: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

149

Акнун дар асоси синфи волидайнии Round, бо тавсифи маљмўи хосиятњои нав (Top, Left, Height, Width), барои тасвири росткунљањо синфи фарзандии Rect-ро месозем. Аммо тарзи кашидани росткунљањо дар ин маврид бояд аз тарзи кашидани доирањо фарќ кунад. Ба таври дигар гўем, методи Draw барои синфи Rect бояд аз методи Draw барои синфи Round фарќ дошта бошад, вагарна њангоми барои объект даъват намудани протседураи Draw, ба љойи росткунља дар экран хоњу нохоњ доира кашида мешуд.

Њамин тариќ, агар барои синфи Rect мувофиќан методи хусусии Draw муайян карда шавад, он гоњ барои объекти синфи Round даъвати њамон як протседураи Draw тасвири доира ва барои объекти синфи Rect бошад, тасвири росткунљаро њосил мекунад. Ин гуна хосияти барномарезии объектгароро полиморфизм меноманд.

СинфиRound

СинфиRect

МетодиDraw

Тасвириросткунља

Тасвиридоира

Page 150: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

150

L Саволњо:

1. Инкапсулатсия чист?2. Хосияти меросгузории объектро кадом ваќт мавриди

истифода ќарор медињанд?3. Зарурати истифодаи хосияти полиморфизм дар чист?4. Оё хосиятњои Top, Left, Width ва Height-ро барои тасвири

шакли геометрии дилхоњ татбиќ кардан мумкин аст?

6 Супориш:

1. Матни мавзўъро бодиќќат хонед ва мафњумњои асосии барномарезии объектгароро шарњ дињед.

1.3.3. МУЊИТИ VISUAL BASIC 6.0

Агар дар компютер барномаи Visual Basic 6.0 насб шуда бошад, он гоњ онро бо тарзи зерин ба кор андохтан мумкин аст: Оѓоз►Барномањо ►Microsoft Visual Studio►Microsoft Visual Basic 6.0 (Пуск►Программы►Microsoft Visual Studio► Microsoft Visual Basic 6.0). Пас аз ин дар экран равзанаи муњити кории интегронидашудаи VB – Integreted Development

Enviroment (IDE VB) пайдо мегардад:Enviroment ( ) пайдо мегардад:

Тавре аз расм дида мешавад, дар миёнаљойи равзанаи

Page 151: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

151

асосии муњити эљодии интегронидашудаи VB равзанаи Лоиња (Project - Проект) љойгир шудааст, ки он дар навбати худ фарогири равзанаи Форма (Form - Форма) мебошад.

Эзоњ: Лоиња маљмўи парвандањоест, ки онњо њангоми тартиб додани барнома истифода мешаванд. Ба лоињаи нав компютер ба таври худкор номи Project1 (Лоиња1)-ро мегузорад.

Муњимтарин љузъњои муњити эљодии Visual Basic 6.0 инњоянд:

Сатри меню (Menu). Вазифаи ин сатр ба мисли дигар сатрњои менюи равзанањои Windows аст. Фармонњои дар бандњои меню овардашуда барои сохтани барномањо дар муњити VB пешбинї шудаанд. Дар байни онњо ба ѓайр аз бандњои стандартии равзанањои Windows инчунин бандњое мављуданд, ки онњо барои сохтан, ба кор андохтан ва тањриру такмили барнома пешбинї шудаанд: Лоиња (Project - Проект), Иљро (Run - Запуск), Санљиши дурустї (Debug - Отладка).

Лавњаи љузъњои идоракунии объектњо (Љузълавња - ToolBox). Вазифаи љузълавња ба форма ворид намудани ягон љузъи идоракунї аст. Ном ва вазифаи љузъњои алоњидаи ин лавња дар љадвали 11 оварда шудааст. Агар дар айни њол лавњаи мазкур дар муњити VB мављуд набошад, он гоњ онро бо яке аз тарзњои зерин насб намудан мумкин аст:

Бо ёрии фармони Намо (View - Вид)►Љузълавња (ToolBox)

Бо пахши тугмаи дар лавњаи афзорњои стандартї.

Љадвали 11

Ишоракунак (Pionter) Интихоби љузъи идоракунї

Лавњаи расм (PictureBox)Содири љузъи графикї дар шакли форма

Page 152: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

152

Љузъ Ном Вазифа

Нишона (Label)Гузоштани нишонаи навиштаљот дар форма

Лавњаи матн (TextBox)Дохилкунии (гузоштани) матн дар форма

Чорчўба (Frame)Ба гурўњ табдил додани љузъњои гуногуни идоракунї

Тугмаи амрї (Command-Button)

Иљрои амали муайяни барнома

Рўйхати байраќчањо (CheckBox)

Барќарор/Ќатъи амали танзим

Калид (OptionButton)Баргузини яке аз бандњои имконпазир

Рўйхати омехта (Combo-Box)

Интихоби љузъ аз рўйхат

Рўйхати љузъњо (ListBox) Интихоби навъи љузъ

Тасмаи тобдињии уфуќї (HscrollBar)

Вараќгардонии рўйхат аз рўйи самти уфуќї

Тасмаи тобдињии амудї (VscrollBar)

Вараќгардонии рўйхат аз рўйи самти амудї

Ваќтсанљ (Timer)Санљиши ваќти иљрои амали барнома

Рўйхати дискњо (DriveList-Box)

Баргузини диск дар компютер

Рўйхати љузъдонњо (DirL-istBox)

Баргузини љузъдон дар диск

Рўйхати парвандањо (FileL-istBox)

Баргузини парванда дар љузъдон

Шакл (Shape) Баргузини шакли геометрї

Хат (Line) Баргузини навъи хат

Тасвир (Image)Гузоштани љузъи графикї дар форма

Маълумот (Data) Пайвасткунї бо хазинаи додањо

Page 153: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

153

Љузъ Ном Вазифа

OleИстифодаи имкониятњои барномањои ѓайр

Лавњањои афзор (ToolBars – Панели инструментов). Дар IDE VB чор лавњаи афзор мављуд аст:

• Санљиши дурустї (Debug - Отладка)• Вироиш (Edit - Правка)• Вироишгари форма (Form Editor - Редактор формы)• Стандартї (Standard - Стандартная)

Пахши тугмаи мувофиќи лавњаи дилхоњ иљрои амали мушаххасро бе истифодаи меню таъмин менамояд. Бидуни зикр дар экран танњо лавњаи Стандартї намоён аст. Барои пайдо ё нопадид гардонидани лавњањои дигар кифоя аст, ки фармони Намо (View - Вид)►Лавњањои афзор (ToolBars – Панели инстру-ментов) иљро карда шавад ва дар назди номи лавњаи зарурї байраќча гузошта шавад.

Акнун мухтасар вазифаи њар як лавњаро дида мебароем:

1. Лавњаи Санљиши дурустї (Debug - Отладка) барои назорати раванди иљрои барнома пешбинї шу-дааст. Он имконият фа-роњам меоварад, ки бо истифода аз методи тест љараёни кори барнома тањти назорати барномарез ќарор дода шавад. Бо ёрии имкониятњои ин лавња санљиши ќиматњои мобайнї ва нињоии таѓйирёбандањои барнома, иљрои ќадам ба ќадами барнома, дар ягон ќадами муайян муваќќатан ќатъ намудани иљрои барнома ва ѓайраро ба роњ мондан мумкин аст.

2. Лавњаи Вироиш (Edit - Правка) барои дохил намудани таѓйироту иловањо ва ислоњи камбудињои матни барнома

назорати раванди иљрои барнома пешбинї шу-дааст. Он

Page 154: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

154

пешбинї шудааст. Ин лавња ќариб тамоми имкониятњои вироишгарони (тањриргарони) матнии одитаринро соњиб аст. Масалан, тавассути он амалњои нусха бардоштан, бури-дан, љустуљў ё љойгузин кардан ва иваз намудани калимањои матни барномаро бе ягон душворї иљро кардан мумкин аст.

3. Лавњаи Вироишгари форма (Form Editor - Редактор формы) барои тањрир намудани форма пешбинї шудааст. Бо ёрии ин лавња амалњои љойгузини љузъњои идоракунии форма, таѓйирдињии андозаи љузъњо, радифсозии онњо нисбат ба хатњои сарњадии форма ва ѓайраро иљро кардан мумкин аст.

4. Лавњаи Стандартї (Standard - Стандартная) унсури асосии IDE Visual Basic 6.0 ба њисоб рафта, ба воситаи он амалњои мухталифро, ки аксарияташон бо амалњои воќеан стандартии Windows якхелаанд, иљро кардан мумкин аст.

Дизайнери форма (Form Desinger - Дизайнери форма). Њар як формаи фаъол соњиби дизайнери хусусии худ мебошад. Равзанаи дизайнери форма одатан дар маркази IDE љойгир аст. Ин равзана барои ороиш ва такмили форма, яъне илова ё њазфи (соќит кардани, нест кардани) љузъњои гуногуни идоракунии форма хидмат мерасонад.

Равзанаи хосиятњо (Properties – Свойства). Ин равзана барои таѓйирдињии хосиятњои (ном, ранг, шакли сарњад ва ѓайра) объектњои људокардашуда, аз љумла љузъњои идоракунї, истифода мешавад. Равзанаи мазкур чун ќоида дар ќисми рости IDE љойгир аст. Агар ин равзана муваќќатан дар муњити Visual Basic мављуд набошад, он гоњ онро бо яке аз тарзњои зерин фаъол гардонидан

Page 155: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

155

мумкин аст:

Бо ёрии фармони Намо (View - Вид)Хосиятњо (Proporties - Свойства)

Бо пахши тугмаи дар лавњаи афзорњои стандартї

Интихоби банди Proporties аз менюи контекстии объект.

Равзанаи роњбалади лоиња (Project Explorer – Проводник проекта). Аз ин равзана одатан дар мавриди якбора бо якчанд лоиња ва якчанд форма кор кардан истифода мебаранд. Дар он сохтори зинавии (иерархии) лоињањо ва формањо таљассум меёбад. Агар пеш аз номи ягон лоиња ё форма аломати + намоён бошад, он гоњ ин маънои онро дорад, ки сохтори зинавии лоиња ё формаи мазкур њоло пўшида аст. Барои кушодани сохтор кифоя аст, ки нишондињандаи мушро ба болои аломати + оварда, тугмаи чапашро як маротиба пахш кунем ва ё бевосита онро ба болои номи лоиња ё форма гузошта, тугмаи чапро ду маротиба пахш намоем. Дар ин маврид ба таври худкор аломати + ба аломати - иваз шуда, сохтори зарурї кушода мешавад. Агар равзанаи мазкур дар муњити Visual Basic мављуд набошад, он гоњ онро бо яке аз тарзњои зерин насб кардан мумкин аст:

Бо ёрии фармони Намо (View - Вид)►Роњбалади лоиња (Project Explorer – Проводник проекта)

Бо пахши тугмаи дар лавњаи афзорњои стандартї

Интихоби банди Proporties аз менюи контекстии объект.

Равзанаи љойгиркунии форма (Form Layout – Размещение

Page 156: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

156

формы). Ин равзана имко-ният медињад, ки мавќеи љойгиршавии форма дар экран пеш аз оѓози кори барнома муайян карда шавад. Барои ин нишондињандаи мушро ба болои нишонаи формаи ин равзана чунон мегузоранд, ки он шакли -ро гирад. Сипас тугмаи чапи мушро пахшкунон формаро ба мавќеи лозимии экран лаѓжонидан лозим аст. Агар равзанаи мазкур дар муњити Visual Basic мављуд набошад, он гоњ онро бо яке аз тарзњои зерин фаъол гардонидан мумкин аст:

Бо ёрии фармони Намо (View - Вид)►Равзанаи љойгиркунии форма (Form Layout Window – Окно размещение формы)

Бо пахши тугмаи дар лавњаи афзорњои стандартї

Равзанаи тањрири матни (рамзи) барнома (Code – Код). Равзанаи мазкур барои тартиб додан ва тањрир кардани матни барнома, ки онро рамзи барномавї низ ном мебаранд, пешбинї шудааст. Агар ошкоро нишон додани (кушода-ни) матни (рамзи) барномавии объекти ихтиёрї талаб карда шуда бошад, он гоњ ин амалро тавассути пахши дукаратаи њамон объект амалї гардонидан мумкин аст. Айнан њамин натиљаро бо ёрии фармони Намо (View - Вид)►Рамз (Code – Код) низ соњиб гаштан мумкин аст.

L Саволњо:

1. Visual Basic-ро чї тавр ба кор омода месозанд?2. Муњимтарин љузъњои муњити эљодии Visual Basic 6.0 ка-

Page 157: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

157

домњоянд?3. Дар IDE VB чанд лавњаи афзор мављуд аст? Онњо

кадомњоянд?4. Агар равзанаи хосиятњо дар муњити VB мављуд набошад,

онро бо кадом роњ насб кардан мумкин аст? Равзанањои дигарро чї?

5. Вазифаи равзанаи тањрири матни барнома аз чї иборат аст? Равзанањои дигар чї?

6 Супориш:1. Љузъњои асосии муњити Visual Basic-ро баён кунед.2. Вазифаи њар яке аз равзанањо ва лавњањои афзори IDE VB-

ро мухтасар дар дафтар нависед.3. VB-ро ба кор омода созед ва њар як љузъи онро дар экран

нишон дињед.

1.3.4. БАРНОМАСОЗЇ ДАР VISUAL BASIC

Марњалањои асосии банаќшагирї, сохтан ва бакорандозии барнома дар Visual Basic инњоянд:

Сохтани намуди зоњирии (муњити корї, интерфейси) барнома

Муайянкунии хосиятњои љузъњои барнома Тартибдињии рамзи барномавї Бакорандозии барнома.

Асоси интерфейси њар гуна барномаро форма ташкил медињад, ки дар он њамаи объектњои истифодашаванда ба ќайд гирифта мешаванд. Дар форма инчунин љузъњое љой дода мешаванд, ки онњо дар љараёни кори барнома ноаёнанд.

Мисоли 1: Барномае месозем, ки он бояд тавассути ду тугма навиштаљоти Hello, World! (Салом, Дунё!)-ро, ки ба объекти Label вобаста карда шудааст, идора кунад. Пахши якумбораи тугмаи якум бояд навиштаљоти мазкурро ба чоп дињад (ба экран барорад) ва пахши дуюмборааш ин навиштаљотро аз экран нест намояд. Вазифаи тугмаи дуюм

Page 158: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

158

бошад, таъмин намудани амали баромадан (хориљ шудан) аз барнома аст.

Эзоњ: Дар сохтан ва амалї гардонидани барномаи мазкур аз

љузъњои идоракунандаи CommandButton (тугма амрї) - ва

Label (нишона) - истифода мебарем.

Объект ё љузъро дар форма бо ду тарз љойгир намудан мумкин аст.

Тарзи якум аз иљрои пай дар пайи амалњои зерин иборат аст:

дар Љузълавња (ToolBox) ба воситаи тугмаи чапи муш

баргузидани тугмаи амрии (CommandButton)

нишондињандаи мушро ончунон ба болои нишонаи форма гузоштан, ки он шакли -ро гирад

ба мавќеи зарурии форма лаѓжонидани нишондињандаи муш ва сар додани тугмаи чапи он

дар мавќеи ќайдшудаи форма њосил шудани тугмаи амрии .

Тарзи дуюми љойгиркунии объект аз он иборат аст, ки нишондињандаи муш дар љузълавња ба болои нишонаи

гузошта мешавад ва тугмаи чапи муш ду маротиба пахш карда мешавад. Дар натиља дар форма тугмае њосил мегардад, ки мавќеъ, хосият ва андозаи онро компютер ба таври худкор муайян мекунад.

Барои аз нав муайян намудани андоза ё мавќеи объекти сохташуда, аввал онро баргузидан лозим аст, яъне тугмаи чапи мушро дар болои он як маротиба пахш карда сар додан зарур аст. Пайдо шудани квадратчањои сиёњ дар канорњои объект шањодати људо гардидани он аст. Агар нишондињандаи мушро ба болои квадратчаи самти муайяни таѓйирдињии объекти мазкур гузошта, тугмаи чапи мушро пахшкунон лаѓжонем, он гоњ андозаи онро таѓйир додан (калон ё хурд кардан) мумкин аст. Барои таѓйирдињии мавќеи объект дар форма бошад, кифоя аст, ки объектро баргузинем ва онро ба мавќеи зарурї кўчонем. Дар љараёни

Page 159: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

159

иљрои ин амал то сар додани тугмаи чапи муш контури объект ва њангоми сар додани он худи объект мавќеашро таѓйир медињад.

Њамин тариќ, интерфейси бо яке аз тарзњои баёнгардида

сохташуда, дар расми зерин оварда шудааст.Хосияти љузъњои идоракуниро бо ёрии равзанаи хосиятњо

(Proporties) муайян кардан мумкин аст. Тавассути майдончаи рўйхати љузъњои ин равзана љузъи зарурї ё объектњои дар форма љойгиршударо баргузидан мумкин аст. Майдончаи номбурда, ки дар ќисми болоии равзанаи хосиятњо љойгир аст, дар расми тарафи рост худро бо навиштаљоти Label1 Label муаррифї намудааст, ки он гувоњи баргузинии объекти Label аст. Ќисми асосї ва марказии равзанаи хосиятњоро майдони корї банд намудааст, ки он ба ду њисса (чап ва рост) таќсим шудааст. Дар ќисми чапи ин майдон номи хосиятњо ва дар ќисми росташ ќиматњои мувофиќи хосиятњо оварда мешаванд. Ќимати хосиятро бо роњи баргузиниш ё дохилкунии бевосита аз сафњакалид муайян кардан мумкин аст. Масалан, дар расми мазкур барои хосияти Visible (ди-

Page 160: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

160

дашавандагї, аёнии) объекти Label (нишона) аз байни ду ќимати имконпазири он - True ва False ќимати True баргузида шудааст. Ќимати љории ин хосияти объекти Label аз он шањодат медињад, ки ин объект њоло дар экран намудор аст. Агар ќимати хосияти Visible ба False баробар мебуд, он гоњ объекти Label дар экран намудор намешуд, яъне ноаён мемонд. Вазифаи замиматугмањои (тугмањои ќабатии) равзанаи хосиятњо бошад, аз рўйи алифбо (Alphabetic) ё категорияњо (Categorized) ба танзим овардани рўйхати хосиятњо мебошад.

Тарзи муайян кардани ќимати хосият дар рамзи барномавї чунин аст:

Номи_объект.Хосият = Ќимат

Масалан, дар навишти Lblmatn.Visible=True номи объект Lblmatn, номи хосияти объект Visible ва ќимати хосият True аст. Агар пас аз номи объект аломати нуќта мављуд бошад, он гоњ рўйхати хосиятњои имконпазири объекти мазкур ба таври худкор кушода мешавад. Њангоми дохил кардани њарфи аввал, он хосиятњое, ки номашон бо њамин њарф сар мешаванд, дар экран пайдо мегарданд. Агар мо ба воситаи тугмањои тирчадори сафњакалид ё муш аз ин номгўй хосияти мушаххасро баргузинем ва тугмаи ТАВ-ро пахш намоем, он гоњ дар пањлуи номи объект хосияти мазкур љойгир мешавад.

Акнун мо ба мисоли 1 бармегардем ва рўйхати хосиятњои объектњоеро, ки таѓйир доданием дар љадвали 12 гирд меоварем.

Љадвали 12

Объект Хосият Мазмун Ќимат

Form

Name Номи форма Form1

Caption Сарлавњаи объектБ а р н о м а и аввалин

StartUpPositionМавќеи форма дар экран

2-Center Screen

Page 161: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

161

Label

Name Номи объект lblmatn

Caption Матни объект Hello, World!

VisibleДидашавандагии объект

False

Font ЊуруфMs Sans Serif, ѓафс, 12

CommandButton

(Ok)

Name Номи объект cmdOk

Caption Матни объект Ok

CommandButton

(Exit)

Name Номи объект CmdExit

Caption Матни объект Exit

Рамзи барномавї (матни барнома) бо ёрии равзанаи махсус дохил карда мешавад, ки онро бо яке аз тарзњои зерин кушодан мумкин аст:

бо ёрии фармони Намо (View - Вид)Рамз (Code – Код)

тавассути пахши дукаратаи объекте, ки барояш иљрои ягон амал талаб карда шудааст.

Дар мисоли болої рамзи барномавии амали чопи навиштаљоти Hello, World! тавассути равзанае дохил карда шудааст, ки он њангоми пахши дукаратаи тугмаи Ok ба кор омода гаштааст. Дар ин равзана сарлавњаи протседураи коркарди «пахши тугмаи Ok» аллакай (пешакї) мављуд аст:

Private Sub cmdOk_Click ( )

End Sub

Дар байни ин ду сатр рамзи барномавие, ки шартњои дар мисол овардашударо ќаноат мекунонад, љой дода мешавад (нигар ба расми тарафи рост).

Айнан бо њамин тарз барои тугмаи Exit рамзи барномавие навиштан мумкин аст, ки он кори барномаро ба итмом мерасонад:

Page 162: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

162

Private Sub CmdExit_Click( )EndEnd Sub

Умуман барои коркарди њар гуна объект маљмўи амалњои стандартї, яъне њодисањо пешбинї шудаанд, ки дар барнома онњо бо ёрии протседурањои мушаххас тасвир карда мешаванд. Дар мисоли мо барои истифодаи тугмањои Ok ва Exit бояд протседурањое тартиб дода шаванд, ки онњо њодисаи Click ( ), яъне амали пахш кардани тугмаро бояд коркард намоянд. Агар дар њамин маврид барои ин объектњо зарурати коркарди њодисањои дигари имконпазир низ пеш ояд, он гоњ тавассути майдончаи рўйхати кушодашавандаи тарафи рости равзанаи рамзи барномавї унсури лозимиро баргузида, сарлавњаи протседураи мувофиќашро ба таври худкор њосил кардан мумкин аст. Дар майдончаи рўйхати тарафи чапи расми болої дар айни њол калимаи CmdExit ва майдончаи рўйхати рост бошад, калимаи Click фаъол мебошанд.

Барномаи тартибдодашударо бо яке аз тарзњои зерин ба кор омода сохтан мумкин аст: дар лавњаи афзорњои стандартї пахш кардани тугмаи Оѓоз(Start

- Пуск) -

бо ёрии фармони Иљро (Run - Запуск)Оѓоз (Start - Пуск)

дар сафњакалид пахш намудани тугмаи F5.

Дар натиљаи амалї гардонидани яке аз ин роњњо дар экран формаи эљодшуда дар шакли расми дар тарафи рост овардашуда њосил мегардад. Ва тавре пешакї ќайд карда будем, њангоми пахши тугмаи Ok дар экран навиштаљоти Hello, World! пайдо мегардад. Дар мавриди маротибаи дуюм пахш кардани

Page 163: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

163

ин тугма бошад, навиштаљоти мазкур аз экран нопадид мегардад. Барои умуман аз ин барнома хориљ шудан, кифоя аст, ки тугмаи Exit пахш карда шавад.

Барои дар хотира нигоњ доштани барнома яке аз амалиёти зеринро иљро кардан лозим аст:

амалї гардонидани фармони Парванда (File - Файл)Сабти лоиња (Save Project - Сохранить проект).

дар лавњаи афзорњои стандартї пахш кардани тугмаи (Save Project).

Бояд ќайд кард, ки дар мавриди сабти аввали барнома нишон додани номи њамаи љузъњои он, аз ќабили номи парвандаи форма, номи лоиња ва ѓайра њатмист.

L Саволњо:1. Марњалањои асосии барномасозї дар Visual Basic

кадомњоянд?2. Интерфейси барнома дар асоси чї сохта мешавад?3. Чї тавр объект ё љузъро дар форма љойгир мекунанд?4. Кадом равзана барои муайянкунии хосияти љузъњои

идоракунї пешбинї шудааст? 5. Рамзи барномавї гуфта чї дар назар дошта мешавад?6. Ќимати хосиятро дар рамзи барномавї бо кадом тарз

муайян кардан мумкин аст?7. Кадом тарзњои ба кор омода сохтани барнома ва дар

хотира нигоњ доштани онро медонед?

6 Супориш:1. Хосиятњои њамаи љузъњои барномаро номбар кунед.2. Бо ёрии устод масъала гузоред ва онро бо назардошти

маводди мавзўъ дар Visual Basic барномарезї кунед.

Page 164: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

164

1.3.5. ТАЃЙИРЁБАНДА, ДОИМЇ , ФУНКСИЯ

Дар Visual Basic барои тавсифи таѓйирёбанда аз оператори зерин истифода мебаранд:

Dim Таѓйирёбанда [As Навъи таѓйирёбанда]Дар ин љо Dim ва As калимањои хидматї буда, мувофиќан барои тавсиф кардани ном ва навъи таѓйирёбанда пешбинї шудаанд.

Номи таѓйирёбанда нодир буда, дар љараёни иљрои барнома бояд дигар нашавад. Ном њатман бояд бо њарфи лотинї оѓоз ёбад. Дар таркиби ном истифодаи нуќта, фосила ва њарфњои алифбои русї ё тољикї манъ аст. Миќдори аломатњои ном набояд аз 225-то зиёд бошад. Одатан барои осонфањм гаштани матни барнома барномарезон ба номи таѓйирёбанда пешванди махсусро илова менамоянд, ки он мансубияти таѓйирёбандаро ба навъи маълумот муайян мекунад. Масалан, дар оператори

Dim intSumma As Integer

пеш аз номи таѓйирёбандаи Summa пешванди int илова карда шудааст, ки он ба навъи бутун (integer) тааллуќ доштани таѓйирёбандаро таъкид менамояд. Бо ёрии як оператор якчанд таѓйирёбандаро, ки аз њамдигар бо вергул људо карда мешаванд, тавсиф кардан мумкин аст. Масалан,

Dim intMax, intMin As Integer, dblMat as Double

Љадвали 13 оид ба навъ ва хусусиятњои таѓйирёбандањо

дар Visual Basic маълумот медињад. Љадвали 13

Навъи таѓйирёбанда

МазмунЌиматњои

имконпазирЊаљми хотира

Пешванди ном

Integer Бутун [-32768, 32767] 1 байт Int

LongБутуни дароз

[-2147483648, 2147483647]

4 байт Lng

Page 165: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

165

Навъи таѓйирёбанда

МазмунЌиматњои

имконпазирЊаљми хотира

Пешванди ном

SingleЊаќиќии сањењиаш якчанда

7-8 раќами эътимоднок аз порчаи [-1.4·10-45, 3·1038]

4 байт Sng

DoubleЊаќиќии сањењиаш дучанда

15-16 раќами эътимоднок аз порчаи [-5.0·10-324, 1.7·10308]

8 байт Dbl

Currency ПулїАдади навъи пулї

8 байт Cur

Boolean Мантиќї True ё False 2 байт Bln

String Сатрї Сатри матнїба њар як

рамз 1 байт

Str

Byte Байтї Ададњои бутун аз [0, 28-1]

1 байт Byt

Date Санавї [01.01.0100, 31.12.9999]

8 байт Dtm

Object ОбъектїМурољиат ба объекти ихтиёрї

4 байт Obj

Variant ВариантїЌимати ихтиёрї

16 байт Vnt

Доимињо, ки ќиматашон дар рафти иљрои барнома таѓйир намеёбад, ба мисли таѓйирёбандањо тавсиф карда

мешаванд:

Const Номи доимї [As Навъи доимї]=Ќимати доимї

Ба мисли тавсифи таѓйирёбанда дар ин љо низ Const ва As калимањои хидматї буда, мувофиќан барои тавсиф кардани

ном ва навъи доимї пешбинї шудаанд. Масалан:

Page 166: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

166

Const dblPi As Double = 3.1415 92654Const intN1=5885, intN2=5555 Const blnRost as Boolean= TrueConst strMatn As String = “Тољикистон, љашни

истиќлол муборак!”

Дар Visual Basic ба ѓайр аз имкониятњои фаровони барномарезї инчунин имконияти истифодаи барномањои тайёр низ мављуд аст, ки онњо дар хазинаи зербарномањои забон мањфузанд ва њангоми барномасозии масъалањои мухталиф мавриди истифода ќарор дода мешаванд. Ин гуна барномањоро, ки онњо одатан барномаи коркарди ягон функсия мебошанд, чун анъана функсияњои стандартї меноманд. Номгўй ва тарзи навишти чанде аз функсияњои стандартии математикї дар љадвали 14 оварда шудааст. Аргументи функсияњои тригонометрї бо радиан чен карда мешаванд.

Љадвали 14

Номи функсия Навишт дар VBСинуси х Sin(х)

Косинуси х Cos(х)

Тангенси х Tan(х)

Арктангенси х Atn(х)

Решаи квадратї аз х Sqr(х)

Экспонента аз х Exp(х)

Логарифмаи натуралї аз х Log(х)

Ќимати мутлаќи х Abs(х)

Ќисми бутуни х Int(х)

Функсияи аломат Sgn(х)

Партофтани ќисми касрии х Fix(х)

Њосилкунии ададњои псевдотасодуфї (ќалбакии тасодуфї)

Rnd(х)

Масъалаи 1. Њисоббарори (калкулятори) содатарин сохта шавад, ки он чор амали арифметикиро иљро карда тавонад

Page 167: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

167

ва њангоми иљрои амали таќсим, ба сифр (нул) таќсим нашудани ададро низ ба њисоб гирад.

Интерфейси барномавии масъалаи мазкур намуди дар расми зерин овардашударо дорад. Аз расм дида мешавад, ки дар объектњои гузошташуда навиштаљоти Label1, Label2, Text1, Text2, Command1 ва ѓайра мављуданд. Онњоро компютер ба таври худкор (автоматї) мегузорад. Барои он ки интерфейси барномавї ба масъалаи гузошташуда мувофиќат кунад, зарур аст, ки хосиятњои объектњо аз рўйи љадвали 15 муайян карда шаванд. Дар ибтидо тарзи муайянкунии хосиятњои объектњои Label1 ва Label2-ро дида мебароем. Аввалин хосияте, ки дар љадвал барои ин объектњо нишон дода шудааст ин хосияти Name (ном) мебошад. Азбаски дар барнома ба ин объектњо мурољиат карда намешавад (онњо дар барнома њамчун навиштаљот истифода мешаванд), бинобар он номи онњо таѓйир дода нашудааст. Њамчунин бо дарназардошти он ки ин объектњо хосиятњои умумї доранд, дар љадвал ба љойи номњои Label1 ва Label2 мухтасар Label1,2 омадааст. Ин чунин маъно дорад, ки барои объекти Label1 хосияти Name ќимати Label1 ва барои объекти Label2 хосияти Name ќимати Label2-ро доро мебошад.

Љадвали 15

Хосияти дигар, ки онро таѓйир доданием, хосияти Alignment аст. Ин хосият мавќеи љойгиршавии навиштаљотро дар объекти Label муайян мекунад. Барои дар миёнаљойи объ-екти Label љойгир кардани навиштаљот (А ё В) аз лавњаи Properties ќимати Center-и (маркази) хосияти Alignment ин-тихоб карда мешавад.

Page 168: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

168

Барои мувофиќан ба А ва В табдил додани на-виштаљотњои Label1 ва Label2 аз хосияти Caption ис-тифода мебарем. Дар лавњаи Properties хосияти Caption-ро људо карда, ќимати он - Label1-ро тоза мекунем ва ба љояш њарфи А менависем. Барои Label2 низ айнан ња-мин амалиётро такрор меку-нем.Њамаи хосиятњои объектњои боќимондаи интерфейси масъалаи мазкур низ ба мисли нишондоди болої аз рўйи љадвали 15 муайян кар-да мешаванд. Дар натиљаи муайян гаштани кулли хосиятњои интерфейс формае њосил мегардад, ки дар тарафи рост оварда шудааст.

Акнун барои тасвир кардани њар як тугмаи ифодагари ин ё он амали арифметикї мувофиќан рамзи барномавї тартиб медињем:

Dim A,B As DoublePrivate Sub CmdJ_Click( ) ‘Амали љамъA=Val(TxtA.Text)B =Val(TxtB.Text) Формаи НатиљаLblNatija.Caption=A+BEnd Sub

Private Sub CmdTq_Click( ) ‘Амали таќсимA=Val(TxtA.Text)

Объект Хосият Ќимат

Text1,2NameAlignmentText

TxtA, TxtB1-Right Justify“ ”

Command1,2,3,4NameCaption

cmdJ, cmdTr, cmdZ, cmdTqA+B, A-B, A*B, A/B

Объект Хосият Ќимат

Form1NameCaption

Form1Калкулятор

Frame1Name Caption

Frame1Натиља

Label1,2NameAlignmentCaption

Label1,22-CenterА, В

Label3

NameAlignmentBackColorBorderSryleCaption

LblNatija1-Right JustifyСафед1-Fixed Single“ ”

Page 169: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

169

B=Val(TxtB.Text)If B=0 ThenMsgBox “Ба сифт (нул) таќсим кардан мумкин нест!”, vbCritical, “Нодуруст”ElseLblNatija.Caption=A/BEnd IfEnd Sub

Private Sub CmdTr_Click( ) ‘Амали тарњA=Val(TxtA.Text)B=Val(TxtB.Text)LblNatija.Caption=A-BEnd Sub

Private Sub CmdZ_Click( ) ‘Амали зарбA=Val(TxtA.Text)B=Val(TxtB.Text)LblNatija.Caption=A*BEnd Sub

L Саволњо:

1. Дар Visual Basic таѓйирёбандаро чї тавр тавсиф мекунанд? Доимиро чї?

2. Чанд навъи таѓйирёбандањои Visual Basic-ро медонед? Онњо чї ном доранд?

3. Вазифаи пешванди номи таѓйирёбанда аз чї иборат аст? 4. Функсияи стандартї чист?5. Кадом хосияти объектњо дар барномарезии калкулятори

содатарин истифода шудаанд?

6 Супориш:1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Навъњои таѓйирёбандањо ва доимиро бо мисолњо шарњ

дињед.3. Барномаи масъалаи 1-ро тањлил кунед.4. Барномаи калкулятори содатаринро мукаммал гардонед.

Ба он ба ѓайр аз амалњои арифметикї боз чор амали дигар

Page 170: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

170

– бадараљабардорї, азрешабарорї, ёфтани фоизи адад ва њисоб кардани ќимати n!-ро илова кунед.

1.3.6. ОПЕРАТОРЊОИ ШАРТЇ

Ќисми зиёди операторњои Visual Basic вобаста ба иљро гардидани ягон шарт амалеро ба сомон мерасонанд. Аз ин рў онњоро операторњои шартї мегўянд. Тарзи навишт ва алгоритми иљрои операторњои шартии VB бо операторњои њамномашон дар забони барномарезии QBasic хеле шабоњат доранд. Масалан, намудњои оператори шартии нопурра чунин аст:

If Ифодаи мантиќї Then Операторњо

If Ифодаи мантиќї Then ОператорњоEnd If

Дар ин љо низ аввал ќимати Ифодаи мантиќї (шарт) њисоб карда мешавад. Операторњои пас аз калимаи калидии Then-омада (операторњои таркиби оператори If) танњо дар мавриди True будани ќимати Ифодаи мантиќї иљро мешаванд. Агар ќимати ифода False бошад, он гоњ якбора оператори навбатии барнома иљро мегардад.

Намуд ва тарзи иљрои оператори шартии пурраи VB ќариб аз оператори шартии пурраи QBasic ягон фарќи љиддие надорад, яъне њангоми True будани ќимати ифодаи мантиќї Гурўњи якуми операторњо ва њангоми False будан Гурўњи дуюми операторњо иљро мегарданд:

If Ифодаи мантиќї Then Гурўњи якуми операторњо Else Гурўњи дуюми операторњо End If

Page 171: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

171

Агар миќдори шартњои санљиш (ифодањои мантиќї) якчандто (аз дуто зиёд) бошад, он гоњ аз тарзи навишти оператори шартии мураккаб истифода мебаранд:

If Шарти якум Then Гурўњи якуми операторњо ElseIf Шарти дуюм Then Гурўњи дуюми операторњо

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Else Гурўњи n-уми операторњо End if

Тарзи иљрои ин оператор чунин аст. Аввал Шарти якум санљида мешавад. Њангоми True будани ќимати он Гурўњи якуми операторњо иљро мегарданд ва бо њамин оператори шартї ба кори худ њусни анљом бахшида, идоракуниро ба оператори навбатии барнома медињад. Дар мавриди False будани ќимати шарти якум Шарти дуюм санљида мешавад ва айнан ба мисли пештара дар мавриди True будани ќимати он Гурўњи дуюми операторњо иљро мегарданд, вагарна Шарти сеюм санљида мешавад. Ва бо њамин тарз ќадам ба ќадам метавонанд дигар шартњо низ санљида шаванд. Агар дар дилхоњ ќадам шарте иљро гардад, яъне ќимати он True бошад, он гоњ гурўњи операторњои ба он мувофиќ иљро мегарданд. Агар ягон шарти оператори If иљро нагардад, он гоњ идоракунї аз рўйи навбат ба оператори ояндаи барнома дода мешавад.

Масъалаи 1. Дар соњаи маорифи Тољикистон низоми бањогузории панљхола љорї аст. Барномае тартиб дода шавад, ки ќимати бањои ададии дохилшударо бо матнї иваз кунад. Масалан, 5-ро бо «панљ», 4-ро бо «чор» ва ѓайра. Дар мавриди дохил кардани ададњое, ки ќиматашон бањо нест, яъне аз 1 хурду аз 5 калонанд, барнома навиштаљоти «Ин гуна бањо нест!»-ро аз чоп барорад. Намуди умумии формаи Бањогузорї дар расми зерин оварда шудааст.

Page 172: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

172

Хосиятњои он объектњоеро, ки дар барнома мавриди истифода ва таѓйирдињї ќарор доданием, дар љадвали 16 оварда шудаанд.

Љадвали 16

Объект Хосият Ќимат

FormName Form1

Caption Бањогузорї

TextBoxName TxtAdad

Тext “ ”

Label1

Name lblNatija

BackColor &H00FFFFFF& (сафед)

BorderStyle 1-Fixed Single

Caption “ ”

Label2Name lblA

Caption Ададро дохил кунед:

Label3Name lblB

Caption Натиља:

CommandButton1Name Command1

Caption Ok

CommandButton2Name Command2

Caption Баромад

Рамзи барномавии зерин њангоми дар формаи

Бањогузорї пахш намудани тугмаи Оk ба кор оѓоз менамояд:

TextBox

Label1

ComandButton1 ComandButton2

Lfbel3

Label2

Page 173: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

173

Private Sub Command1_Click( )Dim intA As IntegerDim strNatija As StringintA=TxtAdad.TextIf intA=5 ThenstrNatija=”Панљ”ElseIf intA=4 ThenstrNatija=”Чор”ElseIf intA=3 ThenstrNatija=”Се”ElseIf intA=2 ThenstrNatija=”Ду”ElseIf intA=1 ThenstrNatija = “Як”ElsestrNatija=”Ин гуна бањо нест!”End IflblNatija.Caption=strNatija

End SubБарои кори барномаро ќатъ гардонидан (ба охир

расонидан) кифоя аст, ки дар форма тугмаи Баромад пахш карда шавад. Ба амали пахши ин тугма рамзи барномавии

зерин вобаста карда шудааст: Private Sub Command2_Click( )EndEnd Sub

Њамин тариќ, агар корбар дар майдончаи Ададро дохил кунед:-и форма ягон адади ихтиёрии бутунро дохил намояд ва тугмаи Оk-ро пахш кунад, он гоњ мувофиќи иљрои рамзи барномавии дар боло овардашуда, дар майдончаи Натиља-и форма ин ё он навиштаљоте пайдо мешавад. Масалан, њангоми ба форма дохил кардани ададњои 5 ва 10 дар майдончаи Натиља-и он мувофиќан навиштаљоти “Панљ” ва “Ин гуна бањо нест!” пайдо хоњанд шуд (нигар ба расмњои поёнї):

Page 174: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

174

Масъалаи 2. Барномаи ёфтани њалли муодилаи квадратии ax2+bx+c=0, ки a≠ 0, b, c - ададњои њаќиќии ихтиёрианд, сохта шавад.

И н т е р ф е й с и барномавии масъалаи мазкур дар расми тарафи рост оварда шудааст. Он хосиятњои объектњо, ки дар барнома мавриди истифода ва таѓйирдињї ќарор мегиранд, дар љадвали 17 оварда шудаанд.

Љадвали 17Объект Хосият Ќимат

FormName Form1

Caption Муодилаи квадратї

Frame1Name Frame1

Caption Коэффитсиент

Frame2Name Frame2

Caption Натиља

PictureBoxName Picture1

Picture Bitmap

Label1,2,3

Name Label1,2,3

Caption a=, b=, c=

Alignment 1-Right Justify

Масъалаи 2Масъалаи 2Масъалаи . Барномаи ёфтани њалли муодилаи квадратии ax2+bx+c=0, ки a≠ 0, b, c - ададњои њаќиќии ихтиёрианд, сохта шавад.

И н т е р ф е й с и барномавии масъалаи мазкур дар расми тарафи рост оварда шудааст. Он

Page 175: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

175

Label4,5,6

Name Label4,5,6

Caption X=, X1=, X2=

Alignment 1-Right Justify

Label7,8,9

Name LblX, lblX1, lblX2

Caption “ ”

BackColor Ранги сафед

Text1,2,3Name Txta, Txtb, Txtc

Text “ ”

Command1Name CmdOk

Caption Ok

Command2Name CmdEx

Caption Exit

Пас аз муайян намудани ќимати хосиятњо намуди интерфейс шакли дар расми тарафи рост овардашударо мегирад.

Акнун барои ёфтани њалли муодила ба тугмаи Ok рамзи барномавии мувофиќро вобаста мена-моем, ки њангоми пахши он барномаи мазкур ба кори худ њусни оѓоз мебахшад. Дар рамзи барномавї, пас аз тавсифи таѓйирёбандањо, хосияти Visible-и љузъњои идоракунандаи label4-9 таѓйир дода шудааст, яъне барои ноаён гардонидани ин объектњо ба хосияти Visible ќимати False бахшида шудааст. Дар ќадамњои навбатии кори барнома, вобаста ба ќимати дискриминант, хосияти Visible метавонад ќимати True-ро ќабул намояд, ки он маънои аз чоп баровардани натиљањоро дорад.

Private Sub CmdOk_Click( )Dim a,b,c As IntegerDim d,x,x1,x2 As Double

Page 176: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

176

Label4.Visible=FalseLabel5.Visible=False

Label6.Visible=FalseLblX.Visible=FalseLblX1.Visible=FalseLblX2.Visible=Falsea=Val(Txta.Text)b=Val(Txtb.Text)c=Val(Txtc.Text)d=b^2-4*a*cIf d>0 ThenLblX1.Visible=TrueLabel5.Visible=True Натиљаи нињоии кори барнома LblX2.Visible=TrueLabel6.Visible=TrueLblX1.Caption=(-b+Sqr(d))/(2*a)LblX2.Caption=(-b-Sqr(d))/(2*a)ElseIf d=0 ThenLblX.Visible=TrueLabel4.Visible=TrueLblX.Caption=-b/(2*a)

ElseMsgBox “Муодила њал надорад”, vbOKOnly,

“Муодилаи квадратї”End If

End Sub

Бо ёрии оператори End ба тугмаи Exit рамзи барномавии анљоми кори барномаро вобаста менамоем:

Private Sub CmdEx_Click( )EndEnd Sub

Натиљаи нињоии кори барнома дар расми болої оварда шудааст.

Масъалаи 3. Барномаеро тартиб дињед, ки он вобаста ба ќиматњои тарафњои секунља масоњат ва периметри онро

Page 177: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

177

Label4.Visible=FalseLabel5.Visible=False

Label6.Visible=FalseLblX.Visible=FalseLblX1.Visible=FalseLblX2.Visible=Falsea=Val(Txta.Text)b=Val(Txtb.Text)c=Val(Txtc.Text)d=b^2-4*a*cIf d>0 ThenLblX1.Visible=TrueLabel5.Visible=True Натиљаи нињоии кори барнома LblX2.Visible=TrueLabel6.Visible=TrueLblX1.Caption=(-b+Sqr(d))/(2*a)LblX2.Caption=(-b-Sqr(d))/(2*a)ElseIf d=0 ThenLblX.Visible=TrueLabel4.Visible=TrueLblX.Caption=-b/(2*a)

ElseMsgBox “Муодила њал надорад”, vbOKOnly,

“Муодилаи квадратї”End If

End Sub

Бо ёрии оператори End ба тугмаи Exit рамзи барномавии анљоми кори барномаро вобаста менамоем:

Private Sub CmdEx_Click( )EndEnd Sub

Натиљаи нињоии кори барнома дар расми болої оварда шудааст.

Масъалаи 3. Барномаеро тартиб дињед, ки он вобаста ба ќиматњои тарафњои секунља масоњат ва периметри онро

њисоб намояд. Дар барнома шарти мављудияти секунља ба эътибор гирифта шавад.

Барои тартиб додани барномаи зарурї аввал интерфейси онро созмон медињем, ки намуди умумии он дар расми тарафи рост оварда шудааст. Сипас тавассути равзанаи хосиятњо барои њар як объекти дар барнома истифодашаванда хосиятњои лозимиро муайян менамоем

(љадвали 18).

Љадвали 18

Объект Хосият Ќимат

Form1Name Form1

Caption Масоњат ва периметри секунља

Frame1Name Frame1

Caption Тарафњо

PictureBoxName Picture1

BackColor Ранги сафед

Text1,2,3

Name Txta,Txtb,Txtc

Text “ ”

ToolTipTex Ќимати тарафи а(b,c)-ро дохил кунед

Label1,2,3

Name Label1,2,3

Caption a=, b=, c=

Font MS Sans Serif, ѓафс, 12

Alignment 1-Right Justify

Label4,5,6,11

Name Label4,5,6

Caption a,b,c,S

Font MS Sans Serif, ѓафс, 12

Autosize True

Page 178: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

178

Label7

Name Label7

Caption Масоњати секунља S:

Font MS Sans Serif, ѓафс, 9

Label8

Name Label8

Caption Периметри секунља Р:

Font MS Sans Serif, ѓафс, 9

Объект Хосият Ќимат

Label9,10

Name Lbls,Lblp

Caption “ ”

Alignment 1-Right Justify

BackColor Ранги сафед

BorderStyle 1-FixedSingle

Command1Name cmdOk

Caption OK

Command2Name cmdEr

Caption Erase

Command3Name cmdEx

Caption Exit

Барои он ки тавассути Лавњаи расм (PictureBox) секунљаро дар шакли форма тасвир намоем, аз объектњои лавњаи љузъњои идоракунї истифода мебарем. Яке аз чунин объектњои ин лавња объекти Хат (Line) ба шумор меравад, ки он барои баргузинии навъи хатњои рост хизмат мерасонад. Ба воситаи ин объект мо бо навбат њар як тарафи секунљаро месозем (тасвир менамоем). Аслан тасвир намудани хати рост низ ба мисли дар форма гузоштани объектњои дигари муњити кории интегронидашудаи VB амалї гардонида мешавад, яъне кифоя аст, ки нишондињандаи мушро ба болои объекти Line гузорем ва тугмаи чапи онро як маротиба пахш намоем. Пас аз он нишондињандаи мушро ба он мавќеи экран, ки ифодагари яке аз ќуллањо ва ибтидои тарафи ба он мувофиќи секунља аст, мегузорем. Баъд тугмаи

Page 179: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

179

чапи мушро пахшкунон нишондињандаро ба самти зарурї то мавќеи нав, ки ифодагари интињои тарафи секунља аст, мелаѓжонем ва тугмаи мушро сар медињем. Дар натиља тарафи зарурии секунља њосил мегардад. Айнан њамин тавр дигар тарафњои секунља низ сохта мешаванд.

Акнун ба њисобкунии масоњат ва периметри секунља шурўъ менамоем. Асоси алгоритми њисобкунии масоњати секунљаро формулаи Герон ташкил медињад, яъне

, ки дар ин љо 2cbap ++= периметри

секунља ва a, b, c тарафњои секунљаро ифода менамоянд.Пеш аз он ки компютер масоњати секунљаро њисоб

кунад, аввал он шарти мављудияти секунљаро месанљад, ки мувофиќи он шарт суммаи ду тарафи дилхоњи секунља бояд аз тарафи сеюми он калон бошад.

Тамоми њисоббарорињои барнома бо амали пахши тугмаи Ok-и форма вобаста карда шудаанд, ки рамзи барномавии он чунин аст:

Private Sub CmdOk_Click( )Dim inta, intb, intc, intPer As IntegerDim dblP, dblS As Doubleinta=Val(txta.Text)intb=Val(txtb.Text)intc=Val(txtc.Text) If (inta+intb>intc) And (inta+intc>intb) And (intb+intc>inta)

ThenintPer=inta+intb+intcdblP=intPer/2dblS=Sqr(dblP*(dblP-inta)*(dblP-intb)*(dblP-intc))Lbls.Caption=dblSLblp.Caption=intPerElseMsgBox “Хато кардед!”+Chr(13)+”Аз рўйи ин тарафњо

секунљаро сохтан мумкин нест.”+Chr(10)+”Суммаи ду тарафи дилхоњи секунља бояд аз тарафи сеюми он калон бошад.”,vbCritical+vbOKOnly,”Нодуруст!”

Page 180: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

180

Call TozakuniEnd IfEnd Sub

Барои аз ќиматњои ададии номаќбули тарафњои секунља тоза намудани майдончањои форма, протседурае тартиб медињем, ки он дар барнома дар ду маврид амалї мегардад:

њангоми иљро нагаштани шарти мављудияти секунља, яъне дар ваќти суммаи ду адад аз адади сеюм хурд будан,

њангоми пахш намудани тугмаи тозакунї - ERASE.

Тарзи навишти протседураи мазкур дар мавриди аввал чунин аст:

Private Sub Tozakuni( )txta.Text=»»txtb.Text=»»txtc.Text=»»Lbls.Caption=»»Lblp.Caption=»»End Sub

Дар мавриди дуюм, яъне њангоми пахши тугмаи ERASE бошад, тарзи даъвати ин протседура чунин аст:

Private Sub CmdEr_Click( )Call TozakuniEnd Sub

Барои аз барнома берун шудан, пахши тугмаи EXIT-ро истифода мебарем, ки он ба иљрои рамзи барномавии зерин меорад:

Private Sub CmdEx_Click( )EndEnd Sub

Дар расмњои поёнї ду намунаи натиљаи кори барнома

Page 181: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

181

пешкаш шудааст. Дар расми якум њолате ба ќайд гирифта шудааст, ки ќимати тарафњои секунља шарти мављудияти онро ќаноат мекунонанд, вале дар расми дуюм на.

Дар Visual Basic ба ѓайр аз сохтори анъанавии операторњои шартї, яъне If…Then…Else, инчунин сохтори махсуси оператори If мављуд аст, ки онро оператор-функсияи IIf мегўянд:

IIf(Ифодаи мантиќї, Ќимати якум, Ќимати дуюм)

Тарзи иљрои ин оператор-функсия чунин аст. Агар ќимати Ифодаи мантиќї њаќ (True) бошад, он гоњ функсия соњиби Ќимати якум, вагарна Ќимати дуюм мешавад.

Мисол:

Dim intA, intB As IntegerDim strV As String intA=10intB=2strV=IIf(intA Mod intB<>0,“тоќ”,“љуфт”)

L Саволњо:

1. Оё тарзи навишт ва алгоритми иљрои операторњои шартии VB аз њамин гуна операторњои QBasic ягон фарќи љиддие доранд? Агар ња, пас чї?

2. Кадом намудњои операторњои шартии VB – ро медонед?

Page 182: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

182

3. Дар кадом мавридњо аз оператори шартии мураккаб истифода мебаранд?

4. Сохтори анъанавии операторњои шартї кадом аст? Он аз сохтори оператор – функсияи IIf чї фарќ дорад?

6 Супориш:1. Тарзи иљрои оператори шартии мураккабро фањмонед.2. Барномањои дар мавзўъ овардашударо тањлил кунед ва

онњоро дар компютер иљро намоед.3. Барномаи ба масъалаи 2 тааллуќдоштаро чунон такмил

дињед, ки дар формаи он хориљ намудани ќимати дискриминант низ ба њисоб гирифта шавад.

4. Барои сохтани ягон формаи нав масъала гузоред ва барномаи онро тартиб дињед.

1.3.7. ОПЕРАТОРИ SELECT CASE. СОХТОРЊОИ ДАВРЇ

Оператори Select Case. Агар њангоми барномарезии масъалањои алгорe истифода барем, он гоњ лозим меояд, ки барои њар як шохаи (самти) алгоритми итмашон шоханок аз операторњои шартии навъи If…Then…Elsон санљидани шарти алоњидаро ба њисоб гирем. Дар мавриди истифодаи оператори Select Case…End Select бошад, вобаста ба ќимати як Ифодаи тањлилї идоракуниро ба яке аз якчанд Гурўњи операторњои иљрояшон имконпазир додан мумкин аст. Аз ин оператор махсусан ваќте истифода бурдан муфид аст, ки агар миќдори шохањо зиёд бошад. Намуди умумї ва тарзи навишти оператори Select Case чунин аст:

Агар ќимати Ифодаи тањлилї ба Ќимати_1 баробар бошад, он гоњ идоракунї ба Гурўњи якуми операторњо дода мешавад. Дар мавриди ба Ќимати_2 баробар будани ќимати Ифодаи тањлилї идоракунї ба Гурўњи дуюми операторњо дода мешавад. Ва њамин тариќ, њар як гурўњи операторњои дар таркиби оператори Select Case шомилбуда, вобаста ба ќимати ифодаи тањлилї имконияти иљро шудан ё нашуданро дорад. Агар ќимати ифодаи тањлилї ба њељ кадом аз ќиматњои ба гурўњњои операторњо вобасташуда баробар набошад, он

Page 183: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

183

гоњ идоракунї ба Гурўњи n- уми операторњо дода мешавад, ки он пас аз калимаи хидматии Case Else омадааст.

Агар зарурати иљрои яке аз гурўњи операторњо барои якчанд ќимати Ифодаи тањлилї мављуд бошад, он гоњ рўйха-ти тавассути вергул људо кардашудаи ин ќиматњоро пас аз калимаи хидматии Case овардан лозим аст.

Масъалаи 1. Барномаи Низоми бањогузорї (масъалаи 1-и мавзўи гузашта) бо истифода аз оператори Select Case

мавриди таљдиди назар ва такмил ќарор дода шавад. Барои њалли масъалаи мазкур дар формае, ки пештар

сохта будем, њамаи объектњо ва хосиятњояшонро бетаѓйир монда, танњо як тугмаи навро бо номи Select_Case илова

менамоем ва номи тугмаи Ok- ро ба IF_Then иваз мекунем. Њангоми пахши тугмаи IF_Then айнан он рамзи барномавие

иљро мешавад, ки он дар ваќти пахши тугмаи Ok иљро мешуд. Ба амали пахши тугмаи Select_Case бошад, рамзи барномавии зеринро вобаста менамоем:

Private Sub Command3_Click( )Dim intA As IntegerDim strNatija As StringintA=TxtAdad.TextSelect Case intACase 5strNatija=”Панљ”

Select Case Ифодаи тањдидїCase Ќимати_1 Гурўњи якуми операторњоCase Ќимати_2 Гурўњи дуюми операторњо............................................................................................................[Case Else Гурўњи n-уми операторњо]End Select

Page 184: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

184

Case 4strNatija=”Чор”Case 3strNatija=”Се”Case 2strNatija=”Ду”Case 1strNatija=”Як”Case ElsestrNatija=”Ин гуна бањо нест!”End SelectlblNatija.Caption=strNatijaEnd Sub

Масалан, њангоми ба майдончаи Ададро дохил кунед:-и форма бо ёрии сафњакалид дохил кардани адади 4 ва пахш намудани тугмаи Select_Case дар майдончаи Натиља-и он навиштаљоти Чор пайдо мешавад, ки айнан њамин натиљаро њангоми пахши тугмаи IF_Then низ њосил кардан мумкин

аст.

Сохторњои даврї. Дар забони барномарезии объектгарои Visual Basic аз се сохтори даврї (операторони сиклї) истифода мебаранд. Сохтори якум For...Next ном

дорад ва тавсифи умумии он чунин аст:

Page 185: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

185

Аз сохтори даврии For…Next бештар ваќте истифода мебаранд, ки агар ќаблан миќдори такроршавии сикл маълум бошад. Гурўњи операторњоро (якљоя њам якум ва њам дуюмро) чун дар QBasic тани сикл, сатри For-ро сарлавњаи сикл ва сатри Next- ро интињои сикл мегўянд. Тарзи иљрои ин сохтори даврї низ аз сохтори даврии For…Next- и QBasic ягон фарќе надорад, яъне аввал ба Њисобкунак (таѓйирёбандаи сикл) Ќимати_аввала бахшида шуда, дарњол шарти Њисобкунак ≥ Ќимати_охирон санљида мешавад. Дар мавриди True будани ќимати ифодаи мантиќии мазкур операторњои дар тани сиклбуда иљро мешаванд, вагар-на (яъне False будан) сохтори даврї ба кори худ хотима мебахшад ва идоракуниро ба операторе медињад, ки он бевосита пас аз сатри Next омадааст.

Пас аз иљрои тани сикл ба ќимати мављудаи Њисобкунак ќимати Ќадами сикл илова карда мешавад ва аз нав шарти Њисобкунак ≥ Ќимати_охирон санљида мешавад ва амалиёти болої такрор ба такрор иљро мешавад.

Айнан ба мисли QBasic, агар ќадами сикл ба 1 баробар бошад, он гоњ параметри Step 1- ро наменависанд. Оператори Exit For бошад, ваќте иљро мегардад, ки агар аз сикл пеш аз мўњлат (пеш аз итмоми муќаррарї) баромадан лозим бошад.

For Њисобкунак=Ќимати_аввала То Ќимати_охирон [Step (Ќадами_сикл)] Гурўњи якуми операторњо[Exit For] Гурўњи дуюми операторњоNext [Њисобкунак]

Page 186: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

186

Љадвали 19

Масъалаи 2. Барномае созед, ки он ќимати n-факториалро (n!=1·2·3·...·(n-1)·n) њисоб намояд.

Пеш аз сохтани барнома интерфейси зеринро тартиб медињем:

Хосиятњои объектњои дар барнома истифодашаванда дар љадвали 19 оварда шудаанд.

Объект Хосият Ќимат

Form1Name Form1

Caption Факториал

Text1Name txtAdad

Text “ ”

Label1

Name Label1

Caption N-ро дохил кунед:

AutoSize True

Label2

Name Label2

Caption N!=

AutoSize True

Label3

Name LblNatija

Caption “ ”

AutoSize True

Com-mand1

Name cmdOk

Caption OK

Com-mand2

Name cmdExit

Caption Баромад

Барои њисоб кардани ќимати факториал ба амали пахши тугмаи Ok (Command1) рамзи барномавии зеринро вобаста менамоем:

Private Sub cmdOk_Click()Dim intI, intA As IntegerDim dblN As DoubledblN=1intA=txtAdad.TextFor intI = 1 To intAdblN=dblN*intINext intILblNatija.Caption=dblNEnd SubБарои аз барнома берун шудан, ба амали пахши тугмаи

Баромад (Command2) рамзи барномавии зеринро вобаста мекунем:

Private Sub cmdExit_Click()EndEnd Sub

Page 187: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

187

Масалан, агар дар майдончаи N-ро дохил кунед:- и форма адади 15- ро дохил карда, тугмаи Ok- ро пахш кунем, он гоњ дар майдончаи N!= ќимати зарурї ба чоп дода мешавад (нигар ба расми тарафи рост).

Сохторњои даврии шартї. Сохторњои дуюм ва сеюми даврии Visual Basic сохторњои даврии шартї буда, мувофиќан Do…Loop ва While…Wend ном доранд. Аз сохторњои даврии шартї одатан ваќте истифода мебаранд, ки агар миќдори такроршавии сикл пешакї маълум набошад. Ном ва тарзи кори онњо бо њамин гуна сохторњои даврии забони барномарезии QBasic хеле шабоњат доранд. Аз ин рў мо дар ин љо ба тавсифи ин сохторњо машѓул намешавем. Тарзи кори ин сохторњоро бо ёрии барномарезии баъзе масъалањо мефањмонем.

Љадвали 20

Масъалаи 3. Маълум, ки

12lim T1

T=

∞→ аст. Чунин адади натуралии Т ёфта шавад, ки аз он сар карда

нобаробарии иљро гардад.

Интерфейсро дар шакли зерин тартиб медињем:

Объект Хосият Ќимат

Form1

Name FrmDL

CaptionИстифодаи Do…Loop

Frame1Name Frame1

Caption Натиља

Picture1Name Picture1

Picture Bitmap

Label1

Name Label1

Alignment 2-Center

Caption T =

Label2

Name LblNatija

BackColor Сафед

BorderStyle 1-Fixed Single

Caption “ ”

Command1Name CmdOk

Caption Ok

Command2Name CmdExit

Caption Exit

Page 188: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

188

Хосиятњои объектњо мувофиќи љадвали 20 муайян карда мешаванд. Барои дар Лавњаи расм (PictureBox) љойгир кардани формулаи

12lim T1

T=

∞→ аввал бо ёрии моњири формуласози Word Microsoft Equation 3.0 ё дигар вироишгари формулањо формулаи мазкурро месозем. Баъд формуларо нусхагирї карда, ба майдони кории вироишгари графикии Paint мегузорем. Сипас андозаи майдони кории Paint-ро то ќадри њосил шудани андозаи зарурии формула хурд менамоем. Пас аз он формуларо њамчун парвандаи расмї дар ягон љузъдон (масалан, мизи корї) бо ягон ном (масалан, мисоли lim) нигоњ

медорем. Дар ќадами оянда тугмаи -и хосияти Picture-ро пахш мекунем, ки дар натиља равзанаи Load Picture кушода мешавад. Тавассути ин равзана файли расми сохтаамонро баргузида, тугмаи Открыть-ро пахш мекунем. Формула дар Лавњаи расм (PictureBox) пайдо ме-шавад. Пас аз таѓйир до-дани хосиятњои объектњо интерфейси барнома на-муди дар расми тарафи рост овардашударо мегирад.

Акнун бо истифода аз сохтори сиклии Do…Loop ба амали пахши тугмаи Ok яке аз чор рамзи барномавии зеринро вобаста мекунем:

Page 189: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

189

Private Sub CmdOk_Click() Dim T As Integer Dim Y As Double T=1 Y=2^(1/T)-1.001 Do While Y>=0 T=T+1 Y=2^(1/T)-1.001 Loop LblNatija.Caption=T

End Sub

Private Sub CmdOk_Click() Dim T As Integer Dim Y As Double T=1 Y=2^(1/T)-1.001 Do T=T+1 Y=2^(1/T)-1.001 Loop While Y>=0 LblNatija.Caption=T

End Sub

Private Sub CmdOk_Click() Dim T As Integer Dim Y As Double T=1 Y=2^(1/T)-1.001 Do Until Y<=0 T=T+1 Y=2^(1/T)-1.001 Loop LblNatija.Caption=T

End Sub

Private Sub CmdOk_Click() Dim T As Integer Dim Y As Double T=1 Y=2^(1/T)-1.001 Do T=T+1 Y=2^(1/T)-1.001 Loop Until Y<=0 LblNatija.Caption=T

End Sub

Дар њолати дилхоњ натиљаи кори барнома чунин мешавад:

Page 190: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

190

L Саволњо:

1. Дар оператори Select Case ифодаи тањлилї кадом ќиматњо-ро ќабул карда метавонад?

2. Агар ќимати ифодаи тањлилї ба њељ кадом ќиматњои нишондодашуда баробар набошад, пас чї њодиса рўй медињад?

3. Чанд сохтори сиклї мављуд аст? Онњо кадомњоянд?4. Сохтори For…Next дар Visual Basic чї хел иљро мешавад?5. Сохторњои сиклии шартиро кадом ваќт истифода

мебаранд?6. Барои њисоб кардани суммаи S=101+99+97+…+1

истифодаи кадом сохтори сиклї бењтар аст?

6 Супориш:

1. Барномањои дар мавзўъ овардашударо тавассути компютер иљро кунед.

2. Барномае тартиб дињед, ки он дар форма мувофиќи раќами тартибии рўзи њафта номи рўзро аз чоп барорад.

3. Лоињае созед, ки он њамаи аъзоњои мусбати прогрессияи арифметикии аъзои аввалинаш ба 18 ва фарќаш ба -3 баробарбударо дар форма чоп кунад.

1.3.8. ПРОТСЕДУРА. ФУНКСИЯ

Протседура. Мафњуми протседураи Visual Basic бо мафњуми зербарномаи QBasic баробарќувва аст. Одатан аз протседурањо њангоми сохтани барномањои њаљман калон ё мураккаб истифода мебаранд. Тарзи даъват ва иљрои протседура низ ба мисли зербарнома аст. Агар протседура аз барномаи асосї даъват шуда бошад, онро протседураи умумї мегўянд. Пас аз иљрои протседура идоракунї аз нав ба таври худкор ба мавќеи даъватии барнома бозмегардад. Њар гуна протседураи умумї номи нодир дошта, тавассути рўйхати параметрњои (интихобњои) воридотї ва содиротї муайян карда мешавад. Параметри содиротии протседура

Page 191: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

191

таѓйирёбандаест, ки ќиматаш дар натиљаи кори протседура муайян мегардад. Тавсифи протседураи умумї чунин аст:

Протседураи умумї инчунин метавонад дар таркиби модули барномавї (парвандаи навъи .frm) ё универсалї (парвандаи навъи .bas) мављуд бошад. Даъвати протседура бо ёрии оператори даъват (Call) амалї мешавад, ки он метавонад дар ду намуд мавриди истифода ќарор гирад:

Рўйхати параметрњои даъватї метавонад аз таѓйирёбандањо, ифодањо ё ќимати онњо, ки аз њамдигар тавассути вергул људо карда мешаванд, иборат бошад. Дар байни онњо метавонанд параметрњои воридотї ва содиротї бошанд. Миќдор ва навъи параметрњои даъватии оператори даъват бояд бо миќдор ва навъи параметрњои протседура (оператори Sub) мувофиќ бошанд. Агар ба сифати параметри воридотї таѓйирёбанда ё ифода дар рўйхат иштирок кунад, он гоњ дар лањзаи даъват он бояд соњиби ќимат бошад. Параметри содиротї бошад, дар натиљаи кори протседура соњиби ќимат мегардад.

Протседурањои умумї ба протседурањои мањаллї (локалї) ва саросарї (глобалї) таќсим мешаванд. Протседураи мањаллї танњо дар доираи модули барномавии мушаххас дастрас буда, имконияти онро аз дигар модулњо даъват кардан вуљуд надорад. Он чунин муайян карда мешавад:

Private Sub номи протседура;Рамзи барномавї

End Sub

Протседураи саросариро бошад, аз дилхоњ модули

Sub Номи протседура (Рўйхати параметрњо) Рамзи барномавїEnd Sab

Call Номи протседура ([Рўйхати параметрњои даъватї])ё

Номи протседура ([Рўйхати параметрњои даъватї])

Page 192: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

192

барномавї даъват кардан мумкин аст. Он чунин муайян карда мешавад:

Public Sub номи протседураРамзи барномавї

End Sub Функсия. Дар забони барномарезии Visual Basic се

намуд функсияњо истифода бурда мешаванд:

[Private/Puplic] [Static]Function Номи функсия ([Рўйхати параметрњо]) As Type[операторњо]

Номи функсия = Ифода[Операторњо][Exit Sub][Операторњо]

End Function

Функсияи намуди Private-ро (хусусиро) танњо аз он модул ё формаи мушаххасе даъват кардан мумкин аст, ки ин функсия дар он љо тасвир ёфта бошад. Функсияи намуди Public-ро (оммавиро) аз њар гуна модул ё формаи лоињаи додашуда даъват намудан мумкин аст. Функсияи намуди Static (статикї, ором) аз он шањодат медињад, ки таѓйирёбандањои дар дохили он эълоншуда таѓйирёбандањои мањаллї мебошанд.

Номи функсия ба мисли номи таѓйирёбанда муайян карда мешавад. Дар Рўйхати параметрњои функсия аргументњои функсия (таѓйирёбандањо бо навъашон) нишон дода мешаванд. Type калимаи калидї буда, навъи бузургиеро муайян месозад, ки он натиљаи иљрои функсия аст. Оператори Exit Sub барои пеш аз муњлат ќатъ гардонидани кори функсия хидмат мерасонад.

Функсия низ ба монанди протседура метавонад дар таркиби модули барномавї (парвандаи навъи .frm) ё универсалї (парвандаи навъи .bas) мављуд бошад. Вале

Page 193: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

193

даъвати функсия аз даъвати протседура фарќ дорад. Азбаски функсия тавассути ном ва параметрњояш даъват карда мешавад, аз ин рў кифоя аст, ки номи он ва рўйхати параметрњояш дар ќисми рости ягон оператори бахшиш нишон дода шавад. Њамчунин азбаски функсия њангоми мурољиат танњо соњиби як ќимат шуда метавонад, бинобар он тасвир намудани ном ва навъи он њатмї мебошад, чунки натиљаи кори функсия ба номаш (таѓйирёбанда) бахшида мешавад.

Масъалаи 1. Барномаи аз рўйи тарафњо ва ду диагонали панљкунљаи барљаста њисоб намудани периметр ва масоњати панљкунља сохта шавад. Њалли масъалаи мазкурро аз тартиб додани интер-фейс шурўъ мекунем. Барои дар форма дохил кардани ќиматњои панљ тараф ва ду диагоналаш аз љузъи идо-ракунандаи TextBox (Text1-Text7) истифода мебарем. Барои ишорат намудани тарафњо ва диагоналњо бошад, аз љузъи идоракунандаи Label (Label1-Label14) истифода мебарем. Сипас ба воситаи объекти Frame (Frame1, Frame2) онњоро гурўњбандї мекунем. Бо ёрии хатњои графикии Line - панљкунљаро дар объекти Лавњаи расм (PictureBox) тасвир менамоем. Барои њисоб кардани масоњату периметри панљкунља ва хориљ шудан аз барно-ма љузъњои идоракунандаи CommandButton (Command1, Command2)-ро истифода мебарем. Натиљањои њосилшуда та-вассути объектњои Label18 ва Label19 аз чоп бароварда меша-ванд. Пас аз ин бояд интерфейс намуди расми болоиро гирад. Он хосиятњои объектњоеро, ки таѓйир доданием, дар љадвали

21 оварда шудаанд.

Page 194: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

194

Љадвали 21

Объект Хосият Ќимат

Form1Name Form1

Caption Масоњат ва периметри бисёркунља

Frame1,2Name Frame1,2

Caption Тарафњо, Диагоналњо

La-bel1,2,3,4,5Label6,7

Name lbla, lblb, lblc, lble, lblf, lbld1, lbld2

Caption a=, b=, c=, e=, f=, d1=, d2=

Alignment 2-Center

La-bel8,9,10,11La-bel12,13,14

Name label8,9,10,11,12,13,14

Caption a, b, c, e, f, d1, d2

Label15

Name Label15

Caption Натиља:

Alignment 2-Center

Label16Name Label16

Caption Масоњати панљкунља S =

Label17Name Label17

Caption Периметри панљкунља Р=

Label18,19

Name lblS, lblP

Caption “ ”

BorderStyle 1-Fixed Single

Text1,2,3,4,5Text6,7

Name txta, txtb, txtc, txte, txtf, txtd1, txtd2

Text “ ”

Command1,2Name CmdOk, CmdEx

Caption Ok, Exit

Тавре аз расм аён аст, баъзе навиштаљот як ќисми

тарафњо ё диагоналњои панљкунљаро нопадид гардонидаанд. Барои падидор намудани онњо аз афзорњои лавњаи Вироишгари форма (Form Editor - Редактор формы) бояд истифода бурд, ки ин амал бо ду тарз пиёда гардонида мешавад:

Page 195: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

195

Баргузини кулли навиштаљот ва пахши тугмаи Send To Back-и лавња

Баргузини кулли хатњо ва пахши тугмаи Bring To Front-и лавња.

Барои баргузини кулли љузъњо зарур аст, ки бо як даст тугмаи Shift-и сафњакалидро пахш карда истем ва бо дасти дигар нишондињандаи мушро ба болои њар як љузъ бурда, тугмаи чапашро як маротиба пахш кунем.

Агар зарурати њалли масъалаи мазкур бе истифодаи протседура ё функсия пеш ояд, он гоњ мо метавонем он ќисми барномаеро истифода барем, ки он дар мавзўъњои ќаблї барои њисоб кардани масоњати секунља пешбинї шуда буд. Дар ин маврид лозим меомад, ки онро такроран се маротиба нависем, яъне панљкунљаро њамчун суммаи 3 секунља тасвир намоем. Дар натиља бе чуну чаро њаљми барнома меафзуд, ки он њатман суръати иљрои барномаро низ суст мегардонид.

Дар мавриди њалли ин масъала бо истифодаи функсия бошад, кифоя аст, ки зербарномаи њисобкунии масоњати секунља як маротиба тавсиф карда (навишта) шавад ва баъд аз барномаи асосї ба он бо параметрњои гуногун се маротиба мурољиат карда шавад. Пас аз њамаи мурољиатњо суммаи масоњати ин секунљањо ба сифати масоњати умумии панљкунља ќабул карда мешавад.

Дар њар ду маврид њам пеш аз њисоб намудани масоњати секунља дар барнома аввал мављудияти он, яъне иљрои шарти калон будани суммаи ду тарафи дилхоњи секунља аз тарафи сеюмаш, санљида мешавад. Њангоми иљрои шарт масоњат њисоб карда мешавад. Дар њолати акс бошад, равзанаи муколамавие пайдо мешавад, ки он дар хусуси иштибоњи раванди кор маълумот медињад. Ин равзанаи муколамавиро ба воситаи лавњаи MsgBox сохтан мумкин аст. Дар ин гуна њолатњо бо ёрии протседураи Tozakuni( )-и барнома ададњои дохилкардашуда њазф мегарданд, то ки ба љояшон ададњои нав пешкаш карда шаванд.

Page 196: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

196

Рамзи барномавии гуфтањои боло чунин аст:

Private Sub cmdOk_Click( )Dim a,b,c,e,f As DoubleDim d1,d2 As DoubleDim s1,s2,s3 As Doublea=Val(Txta.Text)b=Val(Txtb.Text)c=Val(Txtc.Text)e=Val(Txte.Text)f=Val(Txtf.Text)d1=Val(Txtd1.Text)d2=Val(Txtd2.Text)If (a+f>d1) And (a+d1>f) And (f+d1>a) And (b+c>d2) And (b+d2>c) And (c+d2>b) And (d1+d2>e) And (d1+f>d2) And (d2+f>d1)Thens1=masohat(a,d1,f) ‘Даъвати функсияs2=masohat(b,c,d2)s3=masohat(e,d1,d2)‘Яклухткунї бо сањењии 0,001LblS.Caption=Round(s1+s2+s3,3) LblP.Caption=a+b+c+e+fElseMsgBox “Бо тарафњои додашуда бисёркунљаро сохтан мумкин нест!”, vbCritical + vbOKOnly, “Нодуруст!”Call Tozakuni ‘Даъвати протседура End IfEnd Sub‘Тавсифи функсияFunction masohat(a1,b1,c1 As Double) As DoubleDim p As Doublep=(a1+b1+c1)/2masohat=Sqr(p*(p-a1)*(p-b1)*(p-c1))End Function‘Протседураи тозакунии ќиматњои номатлубPrivate Sub Tozakuni( )Txta.Text=””Txtb.Text=””Txtc.Text=””

Page 197: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

197

Txte.Text=””Txtf.Text=””Txtd1.Text=””Txtd2.Text=””LblS.Caption=””LblP.Caption=””End Sub

Ба тугмаи Exit рамзи барномавии зерин вобаста карда мешавад, ки пахши он ба кори барнома њусни анљом мебахшад:

Private Sub cmdEx_Click( )EndEnd SubНатиљаи умумии кори барнома чунин аст:

L Саволњо:

1. Мафњуми протседура дар VB бо кадом мафњуми QBasic баробарќувва аст?

2. Дар кадом мавридњо аз протседура истифода бурдан муфид аст?

3. Протседураи умумї чист? Параметри содиротии протседура чї?

Page 198: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

198

4. Операторњои даъвати протседура кадомњоянд?5. Кадом бузургињо метавонанд љузъи рўйхати параметрњои

даъватии протседура бошанд?6. Протседурањои умумиро ба чанд гурўњ таќсим мекунанд?

Онњо кадомњоянд?7. Протседураи мањаллї аз саросарї чї фарќ дорад?8. Чанд намуди функсияњои забони барномарезии VB-ро

медонед? Онњо чї ном доранд?9. Функсияи намуди Private аз Public чї фарќ дорад? Аз

Static-чї?10. Натиљаи иљрои функсия дар куљо нигоњ дошта мешавад?

6 Супориш:1. Тарзи тавсиф ва иљрои протседура ва функсияњоро баён

кунед.2. Масъалаи 1-ро тањлил кунед.3. Бо истифода аз протседура ва функсияњо барномањои

мавзўъњои гузаштаро таљдиди назар кунед.

1.3.9. МАССИВ

Дар Visual Basic низ ба мисли QBasic аз массивњо ба таври васеъ истифода мебаранд. Массивњои VB-ро ба ду гурўњ - статикї ва динамикї људо мекунанд.

Массив статикї номида мешавад, агар ќимати њудудњои поёнї ва болоии он доимї бошад, яъне онњо њангоми иљрои барнома таѓйир наёбанд. Номи ин гуна массивњо ба мисли таѓйирёбандањо бо ёрии яке аз калимањои хидматии Dim, Private, Public ё Static ва бо нишон додани навъашон (пас аз калимаи хидматии As) тавсиф карда мешаванд. Дар ин гуна мавридњо пас аз номи массив танњо сарњади болої ё њам сарњади поёнию њам болоиро нишон додан мумкин аст.

Масалан, дар тавсифи Dim arrayA(10) As Integer номи массив arrayA буда, он аз 11 љузъ иборат аст ва ба навъи бутун (Integer) тааллуќ дорад. Љузъњои ин массив аз сифр сар карда раќамгузорї карда шудааст, яъне arrayA(0),

Page 199: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

199

arrayA(1),…, arrayA(10). Дар навишти Dim arrayB(1 То 10) As Integer бошад, массиви arrayB тавсиф карда шудааст, ки он аз 10 љузъ иборат аст ва раќамгузории љузъњояш ба таври возењ ва даќиќ аз як сар шудааст: arrayB(1), arrayB(2),…, arrayB(10).

Массивњои бисёрченака низ айнан њамин тавр тавсиф карда мешаванд. Њудудњои онњо аз њамдигар бо ёрии вергул људо карда мешаванд.

Массивњои динамикї. Њангоми барномарезї њолатњое рух медињанд, ки миќдори љузъњои массивро (андозаи массивро) пешакї муайян кардан хеле мушкил аст ва ё умуман имкон надорад. Андозаи онњо дар љараёни иљрои барнома мушаххас гардонида мешаванд. Массивњои дорои ин гуна хосиятњоро массивњои динамикї мегўянд. Тавсифи онњо дар ду зина амалї гардонида мешавад:

тавсифкунї бе нишон додани андозаи массив, яъне тав-сифи массиви холї;

њангоми дар мавќеи зарурии барнома аниќ шудани андозаи массив, бо ёрии оператори ReDim аз нав тавсиф кардани он.

Масалан, дар тавсифњои Dim arrayA( ) As Integer ва ReDim arrayA(10) баёноти болої хеле хуб амалї гардонида шудааст. Танњо пас аз тавсифи дуюм ба љузъњои массиви аз нав муайянгашта ќимат бахшидан мумкин аст. Ва айнан њамин тавр дар ќадамњои навбатї низ миќдори љузъњои массивро боз аз нав таѓйир додан мумкин аст. Масалан, пас аз иљрои оператори ReDim arrayA(8) њамаи ќиматњои пешинаи массиви arrayA(10) барбод хоњанд рафт. Барои нигоњ доштани онњо лозим буд, ки ба оператори аз нав тавсифкунии массив калимаи хидматии Preserve илова карда шавад, яъне ReDim Preserve arrayA(8). Аммо бояд дар хотир дошт, ки њангоми аз миќдори кунунї кам нишон додани андозаи массив ќимати љузъњои зиёдатиаш зуд мањв

мешаванд.

Page 200: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

200

Љадвали 22

Масъалаи 1. Барномае тартиб дињед, ки он миёнаи арифметикї ва геометрии љузъњои массиви А[1:n]-ро њисоб намояд.

Интерфейси барномавии масъалаи мазкурро дар шакли дар расми зерин овардашуда месозем:

Хосиятњои объектњои дар форма љойдодашударо муво-фиќи љадвали 22 муайян мекунем.

Объект Хосият Ќимат

Form1

Name Form1

Caption Кор бо массив

StartUp-Position

2-Center Screen

Frame1Name Frame1

Caption Амалњо

Label1

Name Label1

CaptionЉ у з ъ њ о и дохилкардашуда:

Visible False

Text1

Name Txts

Text “ ”

Visible False

S c r o l l -Bars

3 – Both

Com-mand1

Name cmdA

Caption Аз нав

TabIndex 1

Com-mand2

Name cmdBar

Caption Баромад

Com-mand3

Name cmdMA

CaptionМ и ё н а и арифметикї

Com-mand4

Name cmdMG

Caption Миёнаи геометрї

Пас аз муайян намудани ин хосиятњо интерфейси барномавии пешина шакли тарафи ростро мегирад. Пеш аз он ки ќиматњои миёнаи арифметикї ва геометрии љузъњои массив њисоб

Page 201: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

201

карда шаванд, аввал онњоро дохил кардан лозим аст. Вале мувофиќи шарти масъала миќдори љузъњои массив номуайян аст (ќимати n аниќ нест). Бинобар ин њангоми барномарезии ин масъала аз массивњои динамикї бояд истифода бурд.

Мушкилоти дигаре, ки њангоми иљрои барнома пеш меояд, ин дохилкунии ќимати љузъњои массив ба њисоб меравад. Масалан, дар мавриди n=100 ё аз ин њам зиёд буданаш ва барои њар як љузъ истифода бурдани яктогї Лавњаи матн (TextBox) њаљми форма аз њад калон мегардад. Ва аз њама мушкилоти асосї дар он аст, ки ин миќдор таѓйирёбанда аст. Барои њамин њам дар ин маврид истифодаи ин тарзи њалли масъала ѓайри имкон мегардад.

Лекин дар Visual Basic воситањои пуриќтидори InputBox ва MsgBox мављуданд, ки истифодаи онњо њалли ин ва дигар масъалањоро хеле сода ва мувофиќ мегардонанд. Лавњањои InputBox ва MsgBox-ро мувофиќан барои дохилкунї ва азчопбарории маълумотњо истифода мебаранд.

Ќиматњои миёнаи арифметикї ва геометрии љузъњои массив бо ёрии протседураи Aznav( ) њисоб карда мешаванд. Дар ин протседура аввал бо воситаи InputBox миќдори љузъњои массив муайян карда мешавад. Баъд протседураи дигар, ки номаш inp( ) буда, барои дохилкунии љузъњои массив пешбинї шудааст, даъват карда мешавад. Тавассути лавњаи InputBox, ки дар ин протседура дар сикл гирифта шудааст, ќимати љузъњои массив дохил карда мешаванд. Баъд онњо бо ёрии оператори s=s+Str(sr)+»;» дар шакли сатр љамъоварї шуда, дар Лавњаи матн (TextBox) аз чоп бароварда мешаванд. Аз њамин сабаб њам дар мавриди њар дафъа пахш намудани тугмаи Аз сари нав протседураи аввала аз нав даъват карда мешавад ва њамаи ин амалњо такроран иљро мегарданд.

Њамин тариќ, рамзи барномавии њалли ин масъала намуди зеринро мегирад:

Page 202: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

202

Private A( ) As Integer Dim mArif,mGeom,n,g As DoubleDim i As IntegerOption Explicit Private Sub CmdA_Click( )Call AznavLabel1.Visible=Truetxts.Visible=TrueEnd SubPrivate Sub Aznav( )N=InputBox(“Миќдори љузъњои массивро дохил

кунед!”,”Кор бо массивњо”)ReDim A(1 To n)Call inpmArif=0: mGeom=1For i=1 To nmArif=mArif+A(i)mGeom=mGeom*A(i)NextmArif=mArif/nmGeom=mGeom^(1/n)End Sub

Sub inp( )Dim srDim s As Strings=””For i=1 To nsr=InputBox(Chr(10)+Chr(10)+Chr(10)+Chr(10)+”A(“&i&”)=”,”Дохилкунии љузъњои массив”)A(i) = CDbl(sr)s=s+Str(sr)+”;”Nexttxts.Text=Left(s,Len(s)-1)End Sub

Акнун рамзи барномавии тугмаи Миёнаи арифметикї-

ро тартиб медињем:

Private Sub CmdMA_Click( )

Page 203: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

203

MsgBox mArif, vbOKOnly,”Миёнаи арифметикї”End Sub

Њатман ба он эътибор дињед, ки чї тавр ќимати миёнаи арифметикии љузъњои массиви бо ёрии лавњаи MsgBox њисобкардашуда ва ба таѓйирёбандаи mArif бахшидашуда, дар протседура аз чоп бароварда мешавад.

Рамзи барномавии тугмаи Миёнаи геометрї- и форма чунин аст:

Private Sub CmdMG_Click( )MsgBox mGeom,vbOKOnly,»Миёнаи геометрї»End Sub

Барои тугмаи Баромад- и форма бошад, рамзи барномавї дар шакли зерин пешнињод карда мешавад, ки пахши он кори барномаро ба охир мерасонад:

Private Sub CmdBar_Click( )EndEnd Sub

Баъди бакорандозии барнома формаи натиљавї дар шакли расми поёнии дар тарафи чап овардашуда пешкаш мегардад. Агар дар ин равзана тугмаи Аз нав пахш карда шавад, он гоњ равзанаи дигар кушода мешавад, ки он барои дохилкунии миќдори љузъњои массив пешбинї шудааст. Шакли равзанаи ин форма дар расми тарафи рост оварда шудааст.

Пас аз дохил кардани миќдори љузъњо ва пахш намудани тугмаи Ok дар экран равзанањои навбатї пайдо мешаванд,

Page 204: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

204

ки њар кадоми он барои ба ягон љузъи массив бахшидани ягон ќимат пешбинї шудааст. Пас аз дохилкунии ќимати љузъи мушаххаси массив тугмаи Ok-и равзанаро пахш кардан лозим аст.

Дар натиља њамаи ќиматњои љузъњои массив дар Лавњаи матн (TextBox) дар шакли пайдарпайї сабт мешаванд:

Агар дар форма тугмаи Миёнаи арифметикї пахш карда шавад, он гоњ барнома ба њисобкунии миёнаи арифметикии ќимати љузъњои массив шурўъ карда, натиљаро тавассути лавњаи MsgBox дар шакли расми поёнии тарафи чап пешкаш менамояд. Дар мавриди пахши тугмаи Миёнаи геометрї бошад, натиља мувофиќан дар шакли расми тарафи рост

Page 205: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

205

пешкаш мегардад.пешкаш мегардад.

L Саволњо:

1. Массивњои VB-ро ба чанд гурўњ таќсим мекунанд? Онњо чї ном доранд?

2. Чаро массивро статикї мегўянд?3. Массивњои статикиро чї тавр тавсиф мекунанд?4. Массиви динамикї гуфта чиро мефањмед?5. Массивњои динамикї дар чанд зина тавсиф мешаванд?

Онњо кадомњоянд?6. Вазифаи лавњањои InputBox ва MsgBox аз чї иборат аст? 7. Оператори Preserve чї вазифа дорад?8. Массиви arrayМ(1 То 100) аз чанд љузъ иборат аст?

Массиви arrayМ1(100) чї?

6 Супориш:1. Масъалаи дар мавзўъ овардашударо тањлил кунед.2. Барномае тартиб дињед, ки он суммаи љузъњои мусбат ва

манфии массиви якченакаи A[1:n]-ро дар алоњидагї њисоб кунад.

1.3.10. КОР БО ТАЃЙИРЁБАНДАЊОИ САТРЇ

Дар Visual Basic низ ба мисли дигар забонњои барномарезї мафњуми таѓйирёбандаи сатрї хеле маъмул аст. Тарзи тавсифи ин гуна таѓйирёбандањо Dim strА As String мебошад, ки дар ин љо пешванди str ба таѓйирёбандаи сатрї мансуб будани А-ро ифода мекунад.

Page 206: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

206

Љадвали 23

Масъала. Бо истифода аз функсияњои коркарди матнии Concatenation (конкатенатсия), Mid, Len ва ASC калкулятори матнии содатарин сохта шавад.

Талаб карда мешавад, ки интерфейси барномавии ин масъала бояд намуди зеринро дошта бошад:

Объект Хосият Ќимат

Form1 Name Form1

Caption Функсияњои коркарди матнї

Frame1 Name Frame1

Caption Натиља

Frame2 Name Frame2

Caption Функсия

Label1,2 Name Label1, Label2

Caption Сатр:

FontMS Sans Serif, ѓафс, 10

Label3,4 Name Label3, Label4

Caption M=, N=

FontMS Sans Serif, ѓафс, 10

Text1,2,5 Name Txt1, Txt2, Txt3

FontMS Sans Serif, ѓафс, 10

Text “ ”

Text3,4 Name TxtM1, TxtM2

FontMS Sans Serif, ѓафс, 10

Text “ ”

Command1,2,3,4,5

Name

CmdCon,Cmd-Mid,CmdLen,CmdAsc,Cm-dExit

Caption Concatena-tion,MID,LEN,ASC,Exit

Хосиятњои объектњои дар форма истифодашударо мувофиќи љадвали 23 муайян мекунем. Пас аз муайян намудани њамаи хосиятњо акнун форма намуди зеринро

мегирад:

Page 207: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

207

Ба амали пахши тугмаи Concatenation рамзи барномавии зеринро вобаста мекунем:

Private Sub CmdCon_Click( )txt3.Text=txt1.Text+txt2.Text

End Sub

Барои тугмаи MID бошад, рамзи барномавї ин тавр муайян карда мешавад:

Private Sub CmdMid_Click( )If TxtM1.Text=””And TxtM2.Text=””ThenMsgBox “Дар мавриди истифодаи функсияи MID”+Chr(13)+”M ва N-ро дохил кардан лозим аст!”,vb-Critical+vbOKOnly,”Дар хотир дошта бошед!”ElseTxt3.Text=Mid(txt1.Text,Val(TxtM1.Text),Val(TxtM2.Text))End IfEnd Sub

Айнан њамин тавр барои амали пахши тугмањои дигари форма низ рамзњои барномавї вобаста карда мешаванд. Масалан:

Page 208: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

208

Барои тугмаи LEN:

Private Sub CmdLen_Click( ) Txt3.Text=Len(txt1.Text)End Sub

Барои тугмаи ASC:

Private Sub CmdАsc_Click( )Txt3.Text=Asc(txt1.Text)

End Sub

Барои тугмаи Exit:

Private Sub CmdExit_Click( )EndEnd Sub

Натиљаи охирини кори барнома формаи зерин аст:

L Саволњо:

1. Таѓйирёбандаи сатрї чї тавр тавсиф карда мешавад?2. Барои коркарди таѓйирёбандањои сатрї кадом функсияњо

хизмат мерасонанд?3. Кадоме аз операторњои зерин дуруст навишта шудаанд?

a) strSatr=“Tojikiston”; b) strSatr=Темурмалик;

Page 209: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

209

c) M=“Спитамен”;d) strF=“88”&“21”; e) strF=7386949;

f) strG=“Инфор”+“матика”.

6 Супориш:1. Масъалаи мавзўъро бо ёрии устод тањлил кунед.2. Ба шарти масъалаи 1 функсияњои Right ва Left-ро илова

кунед.

1.3.11. ИМКОНИЯТЊОИ ГРАФИКИИ VISUAL BASIC

Бо ёрии формањо (Form) ва равзанањои графикии (PictureBox) Visual Basic имконияти васеи кашидани нуќта, хати рост, росткунља, давра, эллипс, камон, сектор ва ѓайра мављуд аст. Њамаи ин шаклњои геометриро бо ёрии методњои гуногун тасвир кардан мумкин аст.

♦ Методи Scale барои муайян кардани системаи координат хизмат мерасонад. Тарзи тавсифи ин метод чунин аст:

[Номи объект.] Scale (X1,Y1)-(X2,Y2)

Дар ин љо (X1,Y1) – координатањои нави кунљи чапи болоии объект ва (X2,Y2) - координатањои нави кунљи рости поёнии объектро ифода менамоянд. Агар дар тавсиф Номи объект зикр наёфта бошад, он гоњ методи Scale аз рўйи пешфарз ба форма ворид мегардад. Бо истифодаи ин метод координатањои кўњнаи объект фавран бо координатањои нав иваз карда мешаванд.

Дар Visual Basic системаи координат аз рўйи пешфарз шакли дар расми тарафи рост тасвирёфтаро дорад. Вале њангоми сохтани графики функсияњо ё кашидани шаклњои геометрї системаи координати муќаррариро љорї кардан муфид аст.Масалан, њангоми истифодаи оператори Picture1.

0 Х

Y

Page 210: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

210

Scale(-50,50)-(50,-50) дар равзанаи графикии Picture1 системаи координатии нав љорї карда мешавад, ки кунљи чапи болоии он дорои координатањои (-50,50) буда, кунљи рости поёнии он дорои координтањои (50,-50) мебошад:♦ Методи Pset барои дар объект

кашидани нуќта хизмат мерасонад. Тарзи тавсифи ин метод чунин аст:

[Номи объект.] Pset (X,Y) [,Ранг]

Дар ин љо (X,Y) - координатањои нуќтае мебошанд, ки он бояд дар объект тасвир ёбад. Ранг – рамзи (коди) ранги нуќта буда, бо адади навъи Long тасвир карда мешавад. Ранги пешфарз ранги сиёњ аст. Дар мавриди зикр наёфтани Номи объект методи Pset чун пешфарз ба форма ворид мегардад.

Андозаи њар гуна нуќта ва умуман объекти дилхоњро тавассути хосияти DrawWidth-и равзанаи Хосиятњо (Properties) муайян кардан ва таѓйир додан мумкин аст. Масалан, оператори Picture1.DrawWidth=7 андозаи нуќтаро 7 (твип) муайян мекунад.

Масъалаи 1. Барномае тартиб дињед, ки тавассути он дар Лавњаи расм (PictureBox) системаи координатии нав љорї гардад ва андозаи

нуќта ба 7 твип баробар бошад.

Интерфейси барномавии дар расми тарафи рост тасвирёфтаро истифода бурда, ба тугмаи Pset-и формаи он рамзи барномавии зеринро вобаста мекунем:

Private Sub Command1_Click( )Picture1.Scale (0,0)-(500,500)

Page 211: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

211

Picture1.DrawWidth=7Picture1.PSet (250,250)End Sub

♦ Методи Line барои дар объект кашидани порчањои хати рост ва росткунљањои хатњои сарњадияшон якранг ё ранга хизмат мерасонад. Тарзи тавсифи ин метод чунин аст:

[Номи объект.] Line (X1,Y1)-(X2,Y2) [,Ранг] [,B[F]]Дар ин љо (X1, Y1) ва (X2, Y2) мувофиќан координатањои кунљи болоии чап ва кунљи поёнии рости росткунљаро ифода мекунанд, агар параметрњои B[F] фаъол бошанд. Дар мавриди ѓайрифаъол будани ин параметрњо бузургињои номбурда координатањои ибтидо ва интињои порчаи хати ростро ифода мекунанд. Њамчунин параметри Ранг – рам-зи ранг, В – ишораи кашидани росткунља ва F – ишораи ранга будани росткунљаро ифода мекунанд. Барои таѓйир додани ѓафсии хатњои сарњадии росткунља ќимати хосияти DrawWidth-ро таѓйир додан лозим аст. Дар ин љо низ њангоми зикр наёфтани Номи объект методи Line чун пешфарз ба форма ворид карда мешавад.

Масъалаи 2. Барномае сохта шавад, ки он дар асоси шарти таљдиди назар кардашудаи масъалаи 1 дар форма тасвири росткунља ва хати ростро њосил намояд.

Барои њалли ин масъала ба формаи мављуда боз як тугмаи навро бо номи Line илова менамоем ва ба амали пахши он рамзи барномавии зеринро вобаста мекунем:

Private Sub Command2_Click( )Picture1.Scale(0,0)-(500,500)P i c t u r e 1 . L i n e ( 1 0 0 , 1 0 0 ) -

(400,400),&HFF0000,BPicture1.Line(150,150)-(350,350),&HFF&,BF

P i c t u r e 1 . L i n e ( 1 0 0 , 1 0 0 ) -(400,400),&HC000&

Picture1.Line(400,100)-(100,400)End Sub

Барои нуќтаро бо ранги зард тасвир кардан кифоя

Page 212: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

212

аст, ки дар рамзи барномавї оператори Picture1.PSet(250,250),vbYellow илова карда шавад. Натиља дар тарафи рост оварда шудааст.

♦ Методи Circle бошад, барои дар объект кашидани давра, эллипс, камон ва сектор истифода бурда мешавад. Тарзи тавсифи ин метод чунин аст:

[Номи объект.] Circle (X,Y), Радиус,[Ранг],[Кунљи 1],[Кунљи 2],[КФ]

Ба монанди методњои дигар дар ин љо низ њангоми зикр наёфтани Номи объект методи Circle чун пешфарз ба форма ворид карда мешавад. Параметрњои Радиус – ради-уси давра, Ранг – ранги давра (агар параметри Ранг мављуд набошад, он гоњ аз рўйи пешфарз расм бо ранги сиёњ кашида мешавад), Кунљи 1 ва Кунљи 2 (дар интервали (0, 2π) бо радиан чен карда мешаванд) мувофиќан кунљњои ибтидої ва интињоии камон ё секторро ифода менамоянд. КФ - коэф-фисиенти фишурдашавї ном дошта, адади мусбат аст. Агар КФ>1 бошад, он гоњ эллипс бо самти амудї, КФ<1 бошад, эллипс бо самти уфуќї ва КФ умуман мављуд набошад, он гоњ давра кашида мешавад.

Эзоњ: Параметрњои дар ќавси квадратї омадаро партофтан мумкин аст, аммо вергулњои ба онњо мувофиќро (ба истиснои вергули охирон) на!

Намуди рангро бо яке аз тарзњои зерин муайян кардан мумкин аст:

Мувофиќи рўйхати яке аз њашт доимии махсус ё ќимати ададии ба онњо мувофиќ. Масалан, 0 ё vbBlack - сиёњ, 255 ё vbRed – сурх, 16666215 ё vbWhite – сафед ва ѓайра.

Бо ёрии функсияи RGB. Маълум аст, ки њар гуна ранг бо омехта кардани таносуби муайяни рангњои сурх (Red), сабз (Green) ва кабуд (Blue) њосил карда мешавад. Номи функсияи RGB њам аз њарфњои аввали ин рангњо гирифта шуда, он дорои се аргументе њаст, ки онњо аз порчаи [0, 255] ќимат ќабул мекунанд. Масалан, RGB(0,0,0) – ранги сиёњ, RGB(255,255,255) – ранги сафед, RGB(229,250,200) – ранги шаффоф. Умуман

Page 213: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

213

миќдори ќиматњои имконпазири ин функсия ба 2563-1=16777215 баробар аст. Ин маънои онро дорад, ки њамин миќдор тобишњои гуногунрангро дар Visual Basic њосил кардан мумкин аст. Аслан њар гуна ранг бо ёрии формулаи bytRed+256bytGreen+2562bytBlue муайян карда мешавад.

Бо ёрии функсияи QBColor. Ин функсия дорои як аргумент аст, ки он аз порчаи [0; 15] ќимат ќабул мекунад. Њар яке аз ин 16 ќимат рамзи ягон рангро ифода менамояд.

Шаклњои тавассути методњои Line ва Circle сохташавандаро бо рангњои гуногун ороиш додан мумкин аст. Барои иљрои амали ороишдињї ќиматњои имконпазири хосияти FillStyle хизмат мерасонанд. Дар расмњои поёнї имкониятњои рангубори объект вобаста ба ќиматњои гуногуни хосияти FillStyle(0-7) нишон дода шудааст.

Ранги дарунмояи катакњо ќиматњои хосияти FillСolor-и объектро ифода менамояд. Агар ќимати хосияти FillStyle-и равзанаи графикї ба сифр (нул) (sol-id) баробар бошад, он гоњ шакл бо ранге ороиш дода мешавад, ки он мувофиќи ќимати хосияти FillСolor муайян карда шудааст.

Масъалаи 3. Барномаи масъалаи 2 чунон такмил дода шавад, ки он барои кашидани давра низ мутобиќ бошад.

Барои њалли ин масъала дар формаи мављуда тугмаи нави Circle-ро илова менамоем ва ба он рамзи барномавии зеринро вобаста мекунем:

Private Sub Command4_Click( )

Page 214: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

214

Picture1.Scale (0,0)-(500,500)Picture1.Circle (250,250),220,&H8000&End Sub Натиљаи кори барнома дар расмњои поёнї намоиш

дода шудааст. Пас аз пахши тугмаи Circle расми тарафи чап ва пас аз пахши тугмањои дигари форма расми тарафи рост њосил мешавад.

Љадвали 24

Масъалаи 4. Бо истифода аз интерфейси барномавии зерин графики сеаъзогии квадратии y=ax-2+bx+c-ро дар порчаи [x

0,

x1] бо ќадами таќсимотии h

созед.

Хосиятњои объектњои формаро аз рўйи љадвали 24 муайян мекунем.

Объект Хосият Ќимат

Form1Name Form1

Caption Графики функсия

Frame1Name Frame1

Caption Порча

Frame2Name Frame2

Caption Коэффитсиентњо

Frame3Name Frame3

Caption Ќадам

Picture1 Name Picture1

Label1,2Name Label1,2

Caption аз, то

Label3,4,5Name Label3,4,5

Caption a=, b=, c=

Text1,2,3,4,5,6

Name Text1,2,3,4,5,6

Text “ ”

Com-mand1,2

Name Command1,2

Caption Ok, Exit

Page 215: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

215

Пас аз муайян намудани хосиятњо интерфейс намуди дар тарафи рост нишондодашударо мегирад. Акнун ба тугмаи Ok рамзи барномавии зеринро вобаста менамоем:

Private Sub Command1_Click( )Dim X,Y,X0,X1,H As DoubleDim A,B,C As IntegerH=Val(Text6.Text)X0=Val(Text1.Text)X1=Val(Text2.Text)A=Val(Text3.Text)B=Val(Text4.Text)C=Val(Text5.Text)Picture1.Cls ‘ТозакунїPicture1.Scale (-30,30)-(30,-30)Picture1.Line (0,30)-(0,-30),QBColor(15)Picture1.Line (-30,0)-(30,0),QBColor(15)For X=X0 To X1 Step HY=A*X^2+B*X+CPicture1.PSet (X,Y),2Picture1.DrawWidth=1NextEnd Sub

Рамзи барномавии зерин, ки ба пахши тугмаи Exit вобаста карда шудааст, итмомбахшандаи кори барнома аст:

Private Sub Command2_Click( )EndEnd Sub

Пас аз ба кор андохтани барнома дар экран чунин натиља њосил мегардад:

Page 216: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

216

L Саволњо:1. Равзанањо ва лавњањои графикии Visual Basic барои иљрои

кадом вазифањо пешбинї шудаанд?2. Кадом методњои тасвиркунии шаклњои геометриро

медонед?3. Барои муайян кардани системаи координат аз кадом метод

истифода мебаранд?4. Вазифаи методи Pset аз чї иборат аст?5. Андозаи нуќта ё объектро бо ёрии кадом хосият таѓйир

додан мумкин аст?6. Порчаи хати ростро бо ёрии кадом метод кашидан мумкин

аст?7. Оё тарзи кашидани росткунљаро медонед?8. Аз методи Circle кадом ваќт истифода мебаранд?9. Тарзи кашидани давра аз эллипс чї фарќ дорад?

6 Супориш:1. Имкониятњои графикии Visual Basic-ро баён кунед.2. Методњои графикиро шарњ дињед.3. Масъалањои 1-3-ро тањлил кунед. 4. Барномаи тарзи кори «Чароѓаки рањнамо»-ро тартиб

дињед, ки бо пахши тугма ранги мувофиќаш фурўзон гардад.

5. Барномаи сохтани графики функсияи y=sinx-ро тартиб дињед.

Page 217: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

217

Б а х ш и 2

ТЕХНОЛОГИЯИ ИТТИЛООТЇ

ВА КОММУНИКАТСИОНЇ

ЗАБОНИ БАРНОМАРЕЗИИ С++

2.1. ТАЪРИХИ ПАЙДОИШИ ЗАБОНИ С++

С (Си хонда мешавад) – забони оммавии барномарезї ба њисоб меравад. Таърихи пайдоиш ва рушди забони С бо таърихи системаи оператсионии UNIX сахт алоќаманд аст. Бо боварии том гуфтан мумкин аст, ки системаи оператсионии UNIX пурра тавассути С навишта шудааст. Забони мазкур соли 1972 аз тарафи Деннис Ритчи барои компютери PDP-11 кор карда баромада шудааст. Дар забони С аз Ассемблер воситањои самараноктарини кор бо хотираи компютер ба мерос гирифта шудааст ва аз ин рў имрўз амалан зарурати истифодаи Ассемблер аз байн рафтааст.

Номи забони барномарезии С аз номи њарфи сеюми алифбои лотинї – С (Си) гирифта шудааст. Аслан чунин номгузорї дар солњои 70- уми асри ХХ хеле маъмул буд. Масалан, яке аз забонњои барномарезии дар аввали солњои 70-ум пайдошуда А (Эй) ном дошт. Баъдтар, дар раванди коркарди системаи оператсионии UNIX барои компютери PDD- 7 Томпсон забони барномарезии В (Би)- ро эљод намуд. Ва њамин тариќ, забони навбатї С (Си) номгузорї шуд.

Забони С дар натиљаи кўшишњои инќилобї дар эљоди барномарезии сохторї, ки солњои 60-уми асри ХХ шурўъ шуда буд, пайдо гардидааст. То пайдоиши забонњои барномарезии сохторї, забонњои барномарезии ба ном мантиќї мавриди истифода ќарор доштанд. Њангоми бо ёрии ин забонњо навиштани барномањои њаљман калон, ногузир аз маљмўи зиёди гузаришњои байни операторї истифода

Page 218: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

218

бурдан лозим меомад, ки дар натиља хондану фањмидани барнома ва тањти назорат гирифтани пайдарпайии амалњои алгоритмї хеле мушкил мегардид. Њангоми истифодаи забонњои барномарезии сохторї бошад, ин мушкилињо тавассути воситањои хуби идоракунии ин забонњо (махсу-сан зербарномањо ва таѓйирёбандањои мањаллї) њал карда мешавад. Дар воќеъ, пайдоиши ин навъи забонњо имконияти навиштани барномањои њаљман калонро хеле осон гардонид. Ва дар байни забонњои барномарезии сохторї (масалан, дар ќатори забони Паскал) забони С (соли 1980) ба њайси яке аз забонњои бењтарин шинохта шуд.

Бо вуљуди он ки бо ёрии забонњои барномарезии сохторї масъалањои дараљаи мураккабиашон гуногун бе ягон мушкилот тарњрезї карда шаванд њам, вале истифодаи танњо методњои ин шакли барномарезии охири солњои 70-уми асри ХХ, ба аксар проблемањои наву рўзафзуни самти барномарезї њанўз дар њамон солњо љавобгў набуд. Барои њалли ин гуна проблемањо зарурати эљоди технологияи нави барномарезї пеш омад. Яке аз чунин технологияњо барномарезии объектгаро (БО) ном гирифт. Азбаски забони С аз методњо ва хусусиятњои барномарезии нави объектгаро бархўрдор набуд, бинобар он зарурати такмили минбаъдаи ин забон пеш омад, ки дар натиља ба пайдоиши забони

барномарезии С++ оварда расонид.Њамин тариќ, забони барномарезии С++ соли 1979

аз тарафи Бярн Страуструп дар лабораторияи илмї-тадќиќотии ширкати Bell Telephone Laboratories, ки дар шањри Мэрри-Хилли иёлоти Ню Љерсии ИМА воќеъ аст, эљод шудааст. Дар асл С++ намунаи объектгарои забони С буда, тамоми хосиятњо ва воситањои хуби ин забонро ба мерос гирифтааст. Барои забони С++ њатто принсипи асосии забони С, ки мувофиќи он ба натиљаи нињоии кори барнома на танњо забон, балки барномарез низ масъул аст, пурра хос аст. Воситањои объектгарои С++ имрўзњо дар њалли њама гуна масъалањои барномарезї босамар истифода бурда мешаванд. Ин забон барои сохтани компиляторњо,

Page 219: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

219

вироишгарон, бозињои компютерї ва барномањои хидмати шабакавї ба таври васеъ истифода бурда мешавад.

Њоло забони С++ њамчун стандарт дар коркарди системањои барномавии худкори саноатї мавриди истифода ќарор дорад. С/С++ дар барномарезии системавї низ ба таври васеъ кор фармуда мешавад. Аксарияти бастањои математикии муосир дорои компиляторњои С/С++ мебошанд.

Забони С++ њоло низ дар рушд ва инкишоф аст. Дар рўзгори мо намунаи соли 1998-уми он бо номи Stan-dard C++ мавриди истифода ќарор дорад. Ин намунаро компиляторњои Microsoft Visual C++ ва C++ Builder Borland дастгирї мекунанд.

L Саволњо:

1. Забони барномарезии С кай, дар куљо ва чї тавр эљод шудааст?

2. Хусусиятњои асосии фарќкунандаи забони барномарезии С++ нисбат ба забони С ва дигар забонњои барномарезии мантиќї ва сохторї дар чї зоњир мегардад?

3. Имрўз кадом намунаи С++ мавриди истифода ќарор дорад? Ин намунаро дар њалли кадом масъалањо истифода бурдан мумкин аст?

6 Супориш:

1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Дар дафтаратон бартарї ва камбудињои забони бар-

номарезии С++-ро нисбат ба дигар забонњои барномарезї ќайд намоед.

2.2. БА КОР ОМОДАСОЗИИ С++

Барои ба кор омода сохтани барномаи Microsoft Vi-sual C++ пеш аз њама онро дар компютер насб намудан лозим аст. Пас аз он, агар системаи оператсионии Microsoft Windows омодаи кор бошад, он гоњ ин барномаро, масалан, бо тарзи зерин ба экран баровардан мумкин аст:

Page 220: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

220

ОѓозБарномањоMicrosoft Visual StudioMicrosoft

Visual C++ (ПускПрограммы Microsoft Visual

StudioMicrosoft Visual C++ - StartProgramsMicrosoft Visual StudioMicrosoft Visual C++).

Дар ин маврид дар экран равзанаи дар расми поёнї овардашуда кушода мешавад. Тав-ре аз расм дида меша-вад, дар болои равзанаи барномаи Microsoft Visual C++ равзанаи дигар - Tip of the Day пайдо шудааст.

Агар дар равзанаи Tip of the Day тугмаи Close пахш карда шавад, он гоњ ин равзана аз экран нопадид гашта, имконияти бо равзанаи Microsoft Visual C++ аз нав давом додани кор фароњам меояд. Гарчанде бо ёрии равзанаи C++ имконияти њал намудани масъалањои мухталифи соњаи барномарезї мављуд бошад њам, вале ба мо дастрасии танњо муњити консолии он кифоя аст. Ин муњитро тавассути ду ќадам њосил кардан мумкин аст:1. Аз менюи Парванда (Файл – File) банди Сохтан (Создать – New)- ро интихоб мекунем. Баъд аз рўйхати замимањои Лоињањо (Проекты – Projects)- и равзанаи њосилшуда (расми тарафи рост) банди Win32 Console Application- ро интихоб менамоем. Сонї дар майдончаи Project name-и тарафи рости равзана номи лоиња (масалан, «Математика»)-ро дохил мекунем. Пас аз он тугмаи Ok-ро пахш мекунем, ки дар

Page 221: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

221

натиља равзанаи зерин (расми поёнї) пайдо мешавад:Тавре аз ин расм аён аст, равзана тавассути 4 калид (љузъ) идора карда мешавад. Калиди якум Лоињаи холї (An empty project) ном дошта, он ба таври пешдид доимо фаъол аст. Агар дар њамин лањза тугмаи Finish- и ин

равзана пахш карда шуда, дар равзанаи минбаъда тугмаи Ok пахш карда шавад, он гоњ бо њамин раванди лоињасозї ва њамзамон ќадами якуми њосилкунии муњити консолии равзанаи забони барномарезии C++ ба итмом мерасад.

2. Боз аз менюи Парвандаи (Файл – File) равзанаи C++ банди Сохтан (Создать – New)-ро интихоб мекунем. Аз рўйхати замимањои менюи Парвандањои (Files) равзанаи пайдошуда (расми тарафи рост) банди С++ Source File-ро баргузида, дар майдончаи File name- и тарафи рости равзана номи парвандаро (масалан, КТУ) дохил мекунем ва тугмаи Ok-ро пахш менамоем. Бо њамин муњити консолии С++ пурра омодаи кор мегардад (равзана дар шакли расми поёнї).

Page 222: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

222

Тавре аз намуди зоњирии равзанаи лоињасози Microsoft Visual C++ дида мешавад, он аз якчанд зерравзанањо иборат аст. Зерравзанаи “Вироишгар”-и равзана барои дохил ва тањрир кардани матни барномаи лоиња хизмат мерасонад. Барномаи мураттабшударо бо тарзи зерин омодаи кор

сохтан мумкин аст:

Барои компилятсияи барнома, тугмаи Compile (Ctrl+F7), ки

намуди - ро дорад, аз лавњаи афзорњои Build ё бевосита дар менюи он пахш мекунем.

Барои иљрои барнома, дар њамон лавња тугмаи Build (F7), ки

намуди - ро дорад, пахш мекунем.

Барои ба экран баровардани натиљаи кори барнома, дар

њамон лавња тугмаи Execute program (Ctrl+F5), ки намуди - ро дорад, пахш мекунем.

Барои аз майдони натиља баромадан, тугмаи ихтиёрии сафњакалидро пахш мекунем.

Масалан, њангоми ин пайдарпайии амалњоро бо барномаи дар расми болої овардашуда иљро кардан, дар экран чунин натиљањо пайдо мешаванд (нигар ба расми тарафи рост).

Зерравзанаи Содирот (Output) барои нишон додани

Workspase

Build

Вироишгар

Output

Page 223: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

223

миќдор ва намуди ѓалатњои дар матни барнома роњдодашуда, хизмат мерасонад. Аз рўйи маълумоти ин майдон метавонем мавќеи зуњури ѓалатро муайян

намуда, онро ислоњ кунем.

Барномаи аввалин. Чун одат барномаи аввалине, ки ќариб дар њамаи забонњои барномарезї тартиб дода мешавад, аз чопи ибораи Hello,World! иборат аст.

Ин барнома дар забони С++ чунин намуд дорад:

/* Барномаи аввалин */ // 1 # include <iostream.h> // 2int main( ) // 3 { // 4 cout<<“Hello, World! \n”; // 5 return 0; // 6

} // 7

Сатри якуми барнома вазифаи тавзењотии (шарњдињии) мазмуни барномаро иљро мекунад. Тавзењ – пайдарпайии њар гуна аломатњоест, ки дар байни аломатњои /* ва */ љойгир аст ва ё бо аломатњои // сар мешавад. Компилятор тавзењотро (шарњу эзоњро) ба эътибор намегирад, чунки онњо ба раванди иљрои барнома таъсир расонида наметавонанд ва ин рў сатрњои тавзењотї њатмї нестанд.

Коркарди барнома дар С++ дар ду зина амалї гардонида мешавад. Дар аввал барнома бо препротсессор (барномаи махсус), ки иљрои дастурњои (директивањои) муайянеро таъмин мекунад, мувофиќа карда шуда, баъд аз он компилятсия карда мешавад. Барои њамин њам, сатри дуюми барномаро, ки бо аломати # оѓоз гардидааст, директиваи препротсессор мегўянд.

Директиваи #inсlude имконият фароњам меоварад, ки мањз аз њамин сатри барнома сар карда, матни парвандаи

Page 224: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

224

номаш баќайдгирифташуда (дар мисоли мо - iostream.h) миёнагузорї карда шавад. Дар ќавси кунљї гирифта шудани номи парванда (<iostream.h>) гувоњи он аст, ки љустуљўи он дар хазинаи (китобхонаи) системавии С++ гузаронида мешавад.

Парвандањоеро, ки ќисми иловагии номашон .h аст, парванда-сарлавњањо мегўянд. Ин гуна парвандањо одатан тавсифкунандаи таѓйирёбанда, функсия, навъ ва намудњое мебошанд, ки онњоро аксарият барномањо истифода мебаранд. Дар мисоли мо парвандаи iostream.h ба функсияњои стандартии китобхонавии С++, ки барояшон амалњои дохилкунї ва хориљкунї дастрасанд, мурољиат менамояд. Номи парвандаи мазкур аз ихтисори калимањои Standard Input/Output гирифта шудааст. Номи ин парванда бояд дар аввали тамоми барномањое, ки аз амалњои дохилкунї ва азчопбарорї бархўрдоранд, мављуд бошад.

Дар сатри сеюми барнома функсияи асосї – main( ) оварда шудааст. Овардани ин функсия дар њар як барномаи С++ њатмї буда, иљрои барнома низ мањз аз њисобкунии ќимати њамин функсия оѓоз меёбад. Пас аз номи функсия - main овардани ќавсњои доиравии () низ њатмї мебошад, чунки ин нишонаи функсия будани он аст. Бо вуљуди параметр (аргумент) надоштани функсияи main гузоштани ќавсњои доиравї њатман зарур аст. Калимаи хидматии int, ки пеш аз номи функсияи main() омадааст, баргарданда буда-ни ќимати ин функсияро ифода мекунад. Бозгардони ќимати он тавассути оператори return 0; амалї карда мешавад.

Тани функсия дар ќавсњои шаклї { } гирифта мешавад. Дар баъзе забонњои барномарезї ба љойи ин ќавсњо ќавсњои оператории Begin ва End истифода мешаванд. Дар мисоли мо тани функсия танњо аз як оператори cout<<“HELLO, WORLD! \n”; иборат аст.

Оператори cout (тавассути калимањои console output сохта шудааст) ифодагари азчопбарории маълумотњо дар экран мебошад. Дар мисоли мо, ин оператор ба экран ибораи «Hello, World!»-ро бароварда, мувофиќи пайдарпайии аломатњои идоракунандаи “\n”, курсорро ба сатри навбатї мегузаронад. Мањз бо маќсади истифодаи њамин оператор (cout), ба барнома парвандаи сарлавњавии iostream.h њамроњ карда шудааст.

Page 225: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

225

Акнун барномаи аввалинамонро бо тарзи дигар месозем:

# include<iostream.h> void main( ) { cout<<“Hello,”; cout<<“World!”; cout<<“\n”;

} L Саволњо:

1. Барномаи С++-ро чї тавр ба кор омода месозанд?2. Муњити консолии С++ аз кадом ќисмњо иборат аст?3. Барномаи бо ёрии С++ мураттабшударо чї тавр ба кор

меандозанд?4. Коркарди барномањо дар С++ аз чанд зина иборат аст? 5. Директиваи #inсlude чиро ифода мекунад?

6 Супориш:1. Тарзи барномарезиро дар С++ баён кунед.2. Ду тарзи барномаи аввалини дар мавзўъ овардашударо

тањлил кунед ва тарзи сеюми сохтани онро пешнињод намоед.

2.3. ИДЕНТИФИКАТОР, ТАЃЙИРЁБАНДА, ДОИМЇ

Идентификатор гуфта номи объекти барномавиро (таѓйирёбанда, доимї ё зербарномаро) меноманд. Идентификатор тавассути њарфњои лотинї, раќамњои арабї ва аломати «__» сохта мешавад. Дар идентификатор њарфњои калон ва хурди лотинї аломатњои гуногун ба њисоб мераванд. Масалан, int kty; int Kty; int KTY; се идентификатори гуногун мебошанд. Ба сифати аломати аввали идентификатор раќамро истифода бурдан мумкин нест. Дар таркиби идентификатор истифодаи фосила (пробел), калимањои хидматї ва номи объектњои стандартии забон манъ аст.

Дар С++ таѓйирёбанда гуфта соњаи хотираеро меноманд, ки дар он маълумоти намуди муайян нигоњ дошта шудааст. Таѓйирёбанда тавассути ном (идентифика-тор) ва ќимат муайян карда мешавад. Мањз бо ёрии номи

Page 226: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

226

худ таѓйирёбанда ба соњаи хотира, ки дар он љо ќимати он мањфуз аст, мурољиат менамояд. Таѓйирёбанда пеш аз истифода бояд тавсиф карда шавад. Тарзи тавсифи он чунин аст:

[синфи хотира][const]навъи таѓйирёбанда ва идентификатори он[инисиализатор];

Дар ин љо, ба сифтати синфи хотира яке аз ќиматњои auto, extern, static ё registr-ро истифода бурдан мумкин аст, ки дар бораи онњо баъдтар сухан хоњад рафт. Const нишонаи доимї будани ќимати таѓйирёбанда аст. Инитсиализатор воситаест, ки ќимати аввалаи таѓйирёбандаро муайян мекунад. Тавассути навъи таѓйирёбанда бошад, њаљми муайяни хотираи компютер људо карда мешавад, ки он барои ѓунљонидани ќимати таѓйирёбанда кифоя аст. Номгўи навъњои таѓйирёбандањо дар С++ дар љадвали 25 оварда шудааст.

Љадвали 25

Таѓйирёбандањоро дар С++ ба таѓйирёбандањои локалї (мањаллї) ва глобалї (умумї) таќсим мекунанд. Агар таѓйирёбанда дар дохили блоки муайяни барнома тавсиф шуда бошад, он гоњ онро таѓйирёбандаи локалї мегўянд. Соњаи амалиёти ин гуна таѓйирёбанда њудуди байни нуќтаи тавсиф ва интињои блоки додашуда ба њисоб меравад, яъне он њангоми ба блок ворид шудан дар хотираи компютер сохта мешавад ва њангоми аз блок берун баромадан ѓайб мезанад. Бо ибораи дигар, таѓйирёбандаи локалї моли хусусии блокест, ки дар он тавсиф ёфтааст.

Навъи таѓйирёбанда

Ќиматњои имконпазир

Њаљми хотира (бит)

char [-128; 127] 8

unsigned char [0; 255] 8

signed char [-128; 127] 8

int[ - 2 1 4 7 4 8 3 6 4 8 ; 2147483648]

32

unsigned int [0; 4294967295] 32

signed int[ - 2 1 4 7 4 8 3 6 4 8 ; 2147483648]

32

short int [-32768; 32767] 16

unsigned short int [0; 65535] 16

signed short int [-32768; 32767] 16

long int[ - 2 1 4 7 4 8 3 6 4 8 ; 2147483648]

32

unsigned long int [0; 4294967295] 32

signed long int[ - 2 1 4 7 4 8 3 6 4 8 ; 2147483648]

32

float [1.8E-38; 3.4E38] 32

double [2.2E-308; 1.8E308] 64

long double [2.2E-308; 1.8E308] 64

bool true ё false -

w_char_t [0; 65535] 16

Page 227: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

227

Агар таѓйирёбанда берун аз блоки додашуда тавсиф шуда бошад, он гоњ онро нисбат ба блоки мазкур таѓйирёбандаи глобалї мегўянд. Соњаи амалиёти ин гуна таѓйирёбандањо одатан гурўњи блокњо ё тамоми барнома шуда метавонад. Бо ибораи дигар, таѓйирёбандањои глобалї барои кулли барнома ё баъзе блокњои он таѓйирёбандањои умумї ба шумор мераванд.

Доимињо дар С++ чор хел мешаванд: бутун, њаќиќї, рамзї ва сатрї. Доимињои бутун, дар навбати худ, ба буту-ни дањї, њаштї ва шонздањї таќсим мешаванд. Доимињои бутуни дањї тавассути раќамњои арабї сохта шуда, бо сифр (нул) оѓоз намешаванд (дар мавридњое, ки агар худи адад ба сифр баробар набошад). Доимињои бутуни њаштї тавассути раќамњои њаштї сохта шуда, бо сифр оѓоз мешаванд. Доимињои бутуни шонздањї тавассути раќамњои шонздањї сохта шуда, бо Ох ё ОX оѓоз мешаванд.

Доимињои њаќиќї ба доимињои њаќиќии дањї ва экспонентї таќсим мешаванд. Тарзи навишти доимии њаќиќии дањї [раќамњо][.][раќамњо] ва доимии њаќиќии экспонентї бошад, [раќамњо][.][раќамњо]{Е/е}[+/-][раќамњо] аст. Агар ќисми бутун ё касрии адад ба сифр баробар бошад, он гоњ онро партофтан мумкин аст. Њангоми мављуд будани ќисми касрї, гузоштани аломати нуќта њатмист. Пас аз њарфи Е (ё е) гузоштани аломати + шарт нест.

Доимии рамзї аз маљмўи як ё ду аломати (рамзи) дар апостроф (нохунаки якчанда) гирифташуда иборат аст. Доимии сатрї бошад, аз пайдарпайии аломатњои дар нохунак гирифташуда иборат аст. Масалан, доимии сатрии “А” ва доимии рамзии ‘A’ доимињои гуногунанд.

Page 228: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

228

Љадвали 26Агар доимии сатрї

дар як сатр наѓунљад, он гоњ онро дар якчанд сатр љойгир кардан мумкин аст. Дар ин маврид, ба сифати аломати гузариш ба сатри дигар, аз хати моили чаппа истифода мебаранд. Масалан, доимии сатрии “Barnomarezi dar C++ in mahorat ast” ба сатрњои зерин баробарќувва аст:

“Barnomarezi dar C++ \ in mahorat ast”

Пайдарпайии аломатњои бо хати моили чаппа (\) оѓозёф-таро escape-пайдарпайї мегўянд (љадвали 26).

Тасвир Натиљаи амал

\a Сигнали овозї

\b Як ќадам ба ќафо

\f Гузариш ба сафњаи дигар

\n Гузариш ба сатри дигар

\r Бозгашти навард

\t Табулиронии уфуќї

\v Табулиронии амудї

\\ Хати моили чаппа

\’ Апостроф

\? Аломати савол

\” Нохунак

\oddd Рамзи њаштии аломат

\oxddd Рамзи шонздањии аломат

L Саволњо:

1. Идентификатор чист?2. Оё таѓйирёбанда дар C++ аз таѓйирёбанда дар Бейсик ё

Visual Basic ягон фарќи љиддие дорад ё на?3. Таѓйирёбандаи локалї аз глобалї чї фарќ дорад?4. Дар C++ кадом намуди доимињоро медонед? 5. Escape-пайдарпайї чист?

6 Супориш:1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Доир ба њамаи навъњои таѓйирёбандањо ва доимињои

C++ мисолњо биёред.

Page 229: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

229

2.4. АМАЛЊО ВА ФУНКСИЯЊОИ МАТЕМАТИКЇ

Љадвали 27

Ном ва ишорати амалњои арифметикии забони С++ дар љадвали 27 оварда шудааст. Амали инкори арифметикї унарї (якоперанда) буда, амалњои боќимонда бинарї (дуоперанда) мебошанд. Амали инкори арифметикї аломати операнди навъаш бутун ё њаќиќї бударо ба аломати ба он муќобил таѓйир медињад. Амалњои боќимонда бошанд, ба таври муќаррарї иљро мегарданд.

Номи амалИшорати

амал

И н к о р и арифметикї

-

Љамъ +

Тарњ –

Зарб *

Таќсим /

Баќия аз таќсим %

Агар њангоми таќсимкунї навъи њарду операнд низ бутун бошад, он гоњ натиљаи амали таќсим то адади бутун яклухт карда мешавад, вагарна навъи натиља аз рўйи ќоидањои табдилдињї муайян карда мешавад. Амали баќия аз таќсим танњо бо операндњои навъи бутун гузаронида мешавад.

Оператори бахшиши арифметикї дар ин љо низ асосан ба мисли дигар забонњои барномарезї иљро мегардад, яъне ифодаи арифметикии тарафи рости аломати бахшиш “=” њисоб карда шуда, ба таѓйирёбандаи тарафи чапи он бахшида мешавад: таѓйирёбанда=ифода; Вале дар ин љо, тавассути як оператори бахшиш имконияти якбора ба якчанд таѓйирёбанда бахшидани ќимати як ифода мављуд аст, ки ин хосият на ба њамаи забонњои барномарезї хос аст. Масалан, x=y=z=1;

Мисоли 1: # include <iostream.h> void main( ) { int x=11, y=4; float z=4;

Page 230: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

230

cout<< “ \n ”<<“ Natijai taqsim: ”<<x/y<<“ \t ”<<x/z<< “ \n ”;

cout<<” Baqia: ”<<x%y; }

Натиља: Natijai taqsim: 2 2.75 Baqia: 3

Ба ѓайр аз амалњои арифметикї дар забони С++ инчунин амалњои мантиќии инкор - !, конъюнксия - && ва дизъюнксия - ׀׀ мавриди истифода ќарор доранд.

Тарзи иљрои амали конъюнксия чунин аст: аввал ќимати операнди якум њисоб карда мешавад. Агар он ба 0 (ноњаќ, дурўѓ) баробар бошад, он гоњ ќимати тамоми ифода низ ба 0 баробар мешавад ва дар ин маврид ќимати операнди дуюм њисоб карда намешавад. Агар ќимати операнди якум ба 1 (њаќ, дуруст) баробар бошад, он гоњ ќимати операнди дуюм њисоб карда мешавад ва ќимати ифода мањз мувофиќи ќимати он муайян карда мешавад, яъне ба он баробар њисоб карда мешавад.

Амали дизъюнксия низ айнан аз рўйи њамин алгоритм иљро мегардад: аввал ќимати операнди якум њисоб карда мешавад. Агар он ба 1 баробар бошад, он гоњ ќимати ифода низ ба 1 баробар мешавад. Агар ќимати операнди якум ба 0 баробар бошад, он гоњ ќимати операнди дуюм њисоб карда мешавад ва ќимати ифода мувофиќи ќимати он муайян карда мешавад.

Љадвали 28

Дар забони С++ ба ѓайр аз амалњои арифметикї ва мантиќї, инчунин амалњои нисбї (ё муќоисавї) мављуданд, ки ном ва ишорати аломатии онњо дар љадвали 28 оварда шудааст. Дар ин забон њамчунин ду амали махсус мавриди истифода ќарор доранд, ки онњоро инкремент ва декремент ном мебаранд.

Номи амалИшорати

амал

Хурд <

Хурд ё баробар <=

Калон >

Калон ё баробар

>=

Баробар ==

Нобаробар !=

Page 231: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

231

Амалњои инкремент ва декремент мувофиќан барои ба як воњид афзун (++) ва кам (--) кардани ќимати операнд хизмат мерасонанд. Ин амалњо ду мавриди истифода доранд: префиксї - агар амал пеш аз операнд навишта шуда бошад ва постфиксї - агар амал пас аз операнд навишта шуда бошад. Дар мавриди якум (тарзи префиксї), аввал ќимати операнд таѓйир дода шуда, баъд дар ифода истифода бурда мешавад. Дар мавриди дуюм (тарзи постфиксї) бошад, аввал ќимати операнд дар ифода истифода шуда, сипас таѓйир дода мешавад.

Љадвали 29

Ба ѓайр аз амалњои инкремент ва декремент дар забони С++ боз амалњои махсус ва аљоиби дигар низ мављуданд, ки онњо дар љадвали 29 оварда шудаанд.

Мисоли 2: Оператори бахшиши махсуси s+=i++ ба иљрои пайдарпайи ду оператори бахшиши муќаррарии s=s+i ва i=i+1 баробарќувва аст.

Оператор Натиљаx++ x=x+1

x-- x=x-1

x+=y x=x+y

x-=y x=x-y

x=y x=xy

x%=y x=x%y

Номгўй ва тарзи навишти чанде аз функсияњои стандартии математикии С++ дар љадвали 30 оварда шудааст. Ба сифати аргументи онњо ифодаи арифметикии дилхоњро истифода бурдан мумкин аст. Аргументи функсияњои тригонометрї бо радиан чен карда мешавад.

Љадвали 30

Номи функсия Ишорат Номи функсия Ишорат

Синуси х sin(х)Ќимати мутлаќи х (х - бутун)

abs(х)

Page 232: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

232

Арксинуси х asin(х)Ќимати мутлаќи х (х - њаќиќї)

fabs(х)

Косинуси х cos(х) Логарифми натуралї аз х log(х)

Арккoсинуси х acos(х) Логарифмаи дањї аз х log10(х)

Тангенси х tan(х) Решаи квадратї аз х sqrt(х)

Арктангенси х atan(х) х дар дараљаи y pow(х,y)

Арктангенси х/y

atan(х,y)

Адади бутуни аз x хурди ба он наздиктарин

floor(х)

Экспонента аз х

exp(х)Адади бутуни аз x калони ба он наздиктарин

ceil(х)

Агар дар барнома њисоб кардани ќимати функсияе талаб карда шуда бошад, ки он дар рўйхати функсияњои дар љадвали 30 овардашуда мављуд набошад, он гоњ аз айниятњои мувофиќ истифода бурда, онро ба яке аз функсияњои љадвалї табдил додан лозим аст. Инчунин бояд ќайд кард, ки барои истифодаи функсияњои математикї, дар барнома бояд номи парвандаи сарлавњавии <math.h> њамроњ карда шавад.

L Саволњо:1. Кадом амалњо дар С++ мављуданд?2. Агар дар таќсим њар ду операнд намуди бутунро дошта

бошад, он гоњ натиљаи он бо кадом намуд њосил мегардад? 3. Агар A=1 (True) ва B=0 (False) бошад, пас натиљаи амали

(!(A!=B)==(A==B)) чист?4. Амали == аз = чї фарќ дорад?5. Њангоми истифодаи функсияњои математикї дар барнома

бояд номи кадом парвандаи сарлавњавї љойгир карда шавад?

6. Ифодаи 20092 бо ёрии кадом функсия њисоб карда мешавад?

6 Супориш:1. Мазмуни инкремент ва декрементро фањмонед.2. Фарќи байни ишоратњои log(х) ва log10(х)-ро фањмонед.3. Амалњо ва функсияњои љадвалии мавзўъро дар дафтаратон

ба ќайд гиред ва доир ба њар кадомашон яктогї мисол оред.

Page 233: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

233

2.5. ОПЕРАТОРЊОИ ШОХАВЇ

Оператори if. Барои сохтани барномањои шохавї аз оператори шартии таркибии if истифода мебаранд, ки намуди умумии он чунин аст:

if (ифода) оператори 1; [else] оператори 2;

Ба сифати ифода - ифодаи мантиќї ё нисбиро истифода мебаранд. Агар ба љойи оператор гурўњи операторњо истифода шаванд, он гоњ оператори if намуди зеринро мегирад:

if (ифода){

пайдарпайии операторњои 1}

else{

пайдарпайии операторњои 2}

Дар оператори if аввал ќимати ифода њисоб карда мешавад. Агар ќимати он њаќ (true) бошад, он гоњ идоракунї ба оператори 1 (пайдарпайии операторњои 1), вагарна ба оператори 2 (пайдарпайии операторњои 2) дода мешавад.

Мисоли 1: Барномаи њисобкунии ќимати функсияи y вобаста ба ќимати x сохта шавад:

# include<iostream.h> int main( ){ float x,y; cout<<‘\n’<<“x=”; cin>>x; if(x<=1) y=xx ; else y=3x+4; cout<<‘\n’<<“y=”<<y; return 0;}

Ќайд кардан зарур аст, ки ифодаро дар оператори

Page 234: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

234

таркибии if танњо бо амалњои нисбї ё мантиќии намуди bool (true, false) мањдуд кардан лозим нест. Муњимаш он аст, ки натиљаи ќимати ифода бояд њаќ (true) ё дурўѓ (false) бошад. Аз њамин сабаб њам дар С++ ќимати њар гуна адади ѓайринулї ба њаќ ва нулї ба дурўѓ баробарќувва ќабул шудааст.

Мисоли 2: Бо истифода аз оператори if барномаи аз сафњакалид дохилкунии ду адади а ва b ва ёфтани њосили таќсими онњоро (а/b) месозем.

# include<iostream.h> int main( ){ double a,b; cout<<“a=”; cin>>a; cout<<‘\n’; cout<<“b=”; cin>>b; cout<<‘\n’; if(b) cout<<“a/b=”<<a/b<<‘\n’; else cout<<“Taqsim ma’no nadorad \n”; return 0;

Дар барнома ба оператори if(b) эътибор медињед: њангоми тавассути сафњакалид дохил кардани ќимати ѓайринулии b натиљаи таќсим ба чоп дода мешавад, вагарна маълумоти «Taqsim ma’no nadorad» дар экран пайдо мешавад.

Дар мисоли мазкур тарзи дигари муќоисакуниро низ истифода бурдан мумкин буд. Масалан, оператори if(b!=0) низ њаќќонияти шарти b≠0-ро месанљад ва агар натиљаи санљиш њаќ бошад, он гоњ амали таќсим иљро мегардад, ва-гарна на.

Оператори шартии таркибии if, дар навбати худ, мета-вонад дар дохили дигар оператори if љойгир шуда бошад. Ин њолатро бо ёрии мисол шарњ медињем.

Мисоли 3: Барномаи аз се адади натуралии a,b,c ёфтани адади калонтарин намуди зеринро дорад:

# include<iostream.h> int main( )

Page 235: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

235

{ int a,b,c; int max; cin>>a;cin>>b;cin>>c; if(a>b) { if(a>c) max=a; else max=c; } else { if(b>c) max=b; else max=c; } cout<<“\n”<< “Maximum:”<<max<<“\n”; return 0;}

Дар ин маврид, калимаи хидматии else бо калимаи хидматии пеш аз он љойгиршудаи наздиктарини if, ки дар айни њол бо ягон else алоќаманд нест, вобаста карда мешавад. Одатан, њангоми барномарезї операторњои шартии дар дохили њамдигар љойгиршударо дар шакли навишти зинавї тасвир менамоянд.

Мисоли 4: Барномаи њисобкунии ќимати функсияи y мувофиќи ќима-ти аргументаш x:

# include<iostream.h> int main( ){ int x; float y; cout<<‘\n’<<“x=”; cin>>x; if(x<-10) y=5;else if(x<0) y=15x;else if(x<=10) y=-3xx+8;else y=xx+3x+9;cout<<‘\n’<<“y=”<<y;return 0;

}

Page 236: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

236

Мисоли 5: Барномаи њалли муодилаи квадратии ax-2+bx+c=0 (а≠0, b,с - ададњои ихтиёрї).

#include <iostream.h># include <math.h> int main( ){ int a,b,c; float x,x1,x2,d; cout>>“a=”; cin<<a; cout>>“\n”; cout>>“b=”; cin<<b; cout>>“\n”; cout>>“c=”; cin<<c; cout>>“\n”; d=bb-(4ac); if(d>0){ x1=(-b+sqrt(d))/(2a); x2=(-b-sqrt(d))/(2a); cout>>“x1=”>>x1>>“\n”; cout>>“x2=”>>x2>>“\n”; return 0;}else{ if(d){x=-b/(2a); cout>>“x=”>>x>>“\n”; return 0;}else{ cout>>“Myodila hal nadorad”>>“\n”; }}return 0; }

Оператори switch (калид), ки барои ба якчанд самт људо кардани раванди њисоббарорї хизмат мерасонад, намуди зеринро дорад:

Page 237: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

237

switch(ифода) {

case доимии 1: оператори 1; break;

case доимии 2: оператори 2; break; ..............................

case доимии n: оператори n; break;

[default: оператор;] }

Иљрои оператори мазкур низ ба мисли оператори if аз њисоб кардани ќимати ифода оѓоз меёбад (он бояд адади бутун ё ягон рамз бошад). Баъд, ќимати ифода бо ќимати њамаи доимињои рўйхат (case) муќоиса карда мешавад ва идоракунї ба он шохае дода мешавад, ки ќимати доимии он бо ќимати ифода якхела (баробар) бошад. Дар ин маврид, беруної аз калид одатан бо ёрии оператори break ё return амалї мегардад. Агар њамљояшавии ќимати ифода бо ќимати ягон доимии шохањо ба вуќўъ напайвандад, он гоњ оператори пас аз калимаи default навишташуда иљро мешавад. Дар мавриди мављуд набудани чунин оператор, бевосита оператори навбатии пас аз оператори switch-ома-да иљро мегардад. Доимињои њамаи шохањо бояд ќиматњои гуногун дошта бошанд.

Мисоли 6: Барномаеро тартиб медињем, ки њангоми тавассути сафњакалид дохил кардани раќами рўзи њафта, номи рўз ба чоп дода мешавад.

# include <iostream.h> void main( ){ int x; cout<<“Az bayni raqamhoi 1 to 7 jagontoashro dokhil kuned:” cin>>x; switch(x){ case 1: cout<<“Yakshanbe”; break; case 2: cout<<“Dushanbe”; break;

Page 238: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

238

case 3: cout<<“Seshanbe”; break;case 4: cout<<“Chorshanbe”;break;case 5: cout<<“Panjshanbe”; break;case 6: cout<<“Jum’a”; break;case 7: cout<<“Shanbe”; break;default : cout<<“Shumo raqamro boyad az bayni 1 to 7 intikhob

kuned!”;}}

L Саволњо:

1. Чанд тарзи навишти оператори if-ро медонед?2. Оё оператори if(x!=0) бо оператори if(x) баробарќувва

аст?3. Кадом ваќт аз оператори switch истифода бурдан

мувофиќ аст?

6 Супориш:

1. Барномаи њалли муодилаи ax+b=0 (a, b - ададњои ихтиёрї)-ро нависед.

2. Барои ќимати ихтиёрии х, барномаи ёфтани ќимати функсияи y-ро созед:

2.6. ОПЕРАТОРЊОИ ТАКРОРШАВЇ

Дар барномањои даврии забони барномарезии С++ се намуд оператори такроршавї (даврї, сиклї) истифода бурда мешаванд: оператори сиклии for оператори сиклии while оператори сиклии do-while.

Операторњои сиклии намудњои while ва do-while одатан њангоми пешакї муайян набудани миќдори такрошавии сикл истифода мешаванд.

Оператори for. Намуди умумии оператори сиклии for

Page 239: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

239

чунин аст:

for(инисиаликунонї; ифода; инкремент)оператор;

Дар ин оператор бо ёрии амали инисиаликунонї ба таѓйирёбандањои дар сикл истифодашаванда ќиматњои ибтидоияшон бахшида мешавад. Тавассути ифода шарти иљро шудан ё нашудани сикл санљида мешавад: агар ќимати ифода њаќ бошад, он гоњ сикл иљро мегардад, вагарна идо-ракунї ба оператори баъд аз сикл дода мешавад. Амали инкремент пас аз њар як ќадами сикл иљро шуда, барои ба як воњид зиёд намудани параметрњои сикл хидмат мекунад. Оператор, ки метавонад як ё якчанд оператори дигарро дар бар гирад, ифодагари тани сикл аст. Агар тани сикл аз гурўњи операторњо иборат бошад, он гоњ онро њамчун блок тасвир кардан лозим аст, яъне онро дар ќавси {} гирифтан лозим аст.

Мисоли 1: Барномаи њисобкунии суммаи 100 адади натуралии аввалинро тартиб медињем.

# include<iostream.h>int main( ){ int i; int s=0; for(i=1; i<=100; i++) s+=i;cout<<”s=”<<s;return 0;}

Дар барнома таѓйирёбандањои бутуни i ва s тавсиф карда шудаанд. Дар оператори сикл (for) параметри i

Page 240: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

240

инитсиатизатсия карда шудааст, яъне ба он ќимати аввалаи 1 бахшида шудааст. Пас аз он тани сикл, яъне оператори s+=i иљро мегардад ва дар њар як ќадами сикл шарти i≤100 санљида мешавад. Њангоми њаќ будани натиљаи шарт амали инкремент, яъне i++ иљро мегардад ва дар мавриди дурўѓ будани он (i>100) кори сикл ба охир мерасад. Тани сикл - оператори s+=i аз рўйи иљроиш бо оператори бахшиши s=s+i баробарќувва аст.

Дар оператори for(инисиаликунонї; ифода; инкремент) ќисми алоњида ё њамаи ќисмњои онро, яъне инисиаликунонї ё ифода ва ё инкрементро партофтан (нанавиштан) мумкин аст, вале дар мавќеи ќисмњои партофташуда гузоштани аломати ; њатмист. Инчунин, њар як ќисми оператори for метавонад аз якчанд операторњои тавассути вергул људокардашуда иборат бошад. Масалан, for(int x=1, int y=10; x>y; x++,y--).

Мисоли 2: Барномаи мисоли 1-ро ба таври зерин њам тартиб додан мумкин аст:

# include<iostream.h> int main( ){ int i=1 ; int s=0 ; for(; i<=100;) { s+=i; i++; } cout<<”s=”<<s; return 0;}

Дар мисоли зерин бошад, ягон ќисми оператори for, аз он љумла ќисми ифодаи он, вуљуд надорад:.

for( ; ; ){ // оператор }

Page 241: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

241

Ин сикл беохир маротиба иљро мешавад. Аз чунин сиклњо њангоми њалли масъалањои махсуси барномарезї истифода мебаранд. Барои ќатъ намудани иљрои онњо аз оператори break истифода мебаранд.

Мисоли 3: Акнун барномаи мисоли 1-ро бо тарзи зерин тартиб медињем:

# include<iostream.h>int main( ){ int i ; int s=0 ; for(i=1; i<=100; s+=i++); //тани сикл холист cout<< “s=”<<s; return 0;}

Азбаски раванди суммаронї дар ќисми инкременти оператори for, яъне s+=i++ пурра иљро мегардад, бинобар он дар барнома зарурати истифодаи тани сикл мављуд нест.

Мисоли 4: Барномаи њисобкунии суммаи дукаратаи зеринро месозем:

# include <iostream.h># include <math.h>int main( ){ int n,m;float s=0;for(n=1;n<=20;n++) { for(m=1;m<=10;m++) s+=n*pow(m,2)+n+1; } cout<<“s=”<<s;return 0;}

Page 242: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

242

Натиља: s=83150

Оператори While. Намуди умумии оператори сиклии while чунин аст:

while(ифода)

{ оператор; }

Дар ин љо ифода - ифодаи мантиќї ё нисбї буда, шарти баитмомрасии сиклро муайян мекунад ва оператор – оператори алоњида ё гурўњи операторњо мебошад. Дар оператори while аввал ќимати ифода санљида мешавад. Агар он њаќ бошад, он гоњ операторњои тани сикл иљро мегарданд, вагарна идоракунї ба оператори пас аз блокомада дода мешавад. Агар дар санљиши аввал ќимати ифода дурўѓ бошад, он гоњ операторњои тани сикл ягон маротиба њам иљро нахоњанд гашт.

Мисоли 5: Мисоли 1-ро бо истифода аз оператори while тартиб медињем:

#include <iostream.h>int main( ){ int n=100,s=0,i=1; while(n>=i) { s+=i; i++; } cout<<”s=”<<s<<’\n’; return 0; }

Оператори Do-While. Намуди умумии оператори сиклии do-while чунин аст:

Page 243: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

243

do { оператор; } while(ифода);

Дар оператори do-while низ ифода ва оператор маънои њамон гуна ќисмњои оператори while-ро доранд. Гарчанде дар ин љо њангоми аз як оператор иборат будани оператор зарурат ба истифодаи ќавси шаклвї набошад њам, лекин онро одатан барои хонотар шудани барнома мегузоранд.

Фарќи оператори do-while аз оператори while дар он аст, ки дар ин љо аввал тани сикл, яъне оператор, як маротиба иљро мегардад ва баъд ќимати ифода санљида мешавад. Агар он њаќ бошад, он гоњ аз нав тани сикл иљро мегардад, вагарна сикл ба итмом расида, идоракунї ба оператори пас аз ифода-омада дода мешавад. Агар дар сикл ќимати ифода доимо њаќ мондан гирад, он гоњ сикл беохир маротиба иљро мешавад. Азбаски ифодаи мантиќї пас аз иљрои операторњои тани сикл санљида мешавад, он гоњ дар њама маврид тани сикл аќаллан як маротиба иљро мегардад.

Мисоли 6: Мисоли 1-ро бо истифода аз оператори do-while тартиб медињем:

#include <iostream.h>int main( ){ int n=100,s=0,i=1; do { s+=i; i++; } while(n>=i); cout<<”s=”<<s<<’\n’;return 0;}

Оператори ѓайришартии goto гузаришро ба дигар мавќеи (оператори нишонадори) барнома бе санљиши ягон шарт таъмин мекунад. Нишона идентификаторест, ки пас аз

Page 244: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

244

он аломати : омадааст. Намуди умумии ин оператор чунин аст:

goto нишона;

Мисоли 7: Барномаи ёфтани калонтарин таќсимкунандаи умумии ду адади натуралии a ва b-ро тартиб медињем:

#include <iostream.h>int main( ){ int a,b; cout<<"2 adadro doxil kuned \n"; cin>>a; cin>>b;nishonа_1: if(a==b) { cout<<"KTY="<<a<<'\n'; return 0; }{ if(a>b) { a=a-b; goto nishonа_1;} else { b=b-a; goto nishonа_1;}} return 0;}

Дар ин мисол калонтарин таќсимкунандаи умумии ду адади тавассути сафњакалид дохилкардашаванда ёфта мешавад. Дар барномаи овардашуда оператори гузариши бешарт ду маротиба истифода шудааст, ки дар њар ду маврид њам онњо идоракуниро ба як нишона (nishonа_1:) равона кардаанд.

L Саволњо:

1. Дар С++ чанд намуди оператори сиклї мављуд аст? Онњо аз њамдигар чї фарќ доранд?

2. Оё ќисмњои алоњидаи оператори сиклии for-ро партофтан мумкин аст?

Page 245: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

245

3. Оё дар мавриди аз як оператор иборат будани тани сикл, онро дар ќавси шаклвї гирифтан њатмист?

4. Дар кадом мавридњо аз оператори гузаришии ѓайри-шартии goto истифода бурдан ќулай аст?

5. Нишона чист?

6 Супориш:1. Мисолњои дар мавзўъ овардашударо тањлил кунед. 2. Барномаи њисобкунии n!-ро бо истифода аз операторњои

сиклї бо тарзњои гуногун тартиб дињед. 3. Бо ёрии оператори сиклии do-while прогрессияи геометрии

3, 6, 12, 24, 48…-ро њосил кунед.4. Барномаи њосилкунии прогрессияи геометрии болоиро бо

истифода аз операторњои сиклии for ва while низ тартиб дињед.

2.7. ФУНКСИЯЊО

Дар забони барномарезии С++ низ, ба мисли дигар забонњо, аз зербарномаву функсияњо ба таври васеъ истифода мебаранд. Тавре маълум аст, зербарнома њамчун модули барномавии алоњида, аз маљмўи амалиёти муайян иборат аст ва метавонад дар мавќеъњои гуногуни барнома мавриди истифода ќарор дода шавад. Дар С++ функсияњо низ њамчун як навъ зербарнома дида баромада мешаванд. Онњо аз рўйи иљрои амалиёт њам ба зербарномањо хеле монанданд.

Њамаи барномањои дар мавзўъњои гузашта дида баромадаамон танњо як функсияро (функсияи main( )-ро) дар бар мегирифтанд. Вале бояд гуфт, ки чун ќоида барнома дар С++ аз маљмўи функсияњо иборат аст. Он операторњое, ки дар ќавсњои шаклвї гирифта шудаанд, тани функсия номгузорї мешаванд ва ќисми иљрошавандаи алгоритми њалли масъаларо ташкил медињанд. Фаъолияти функсия њангоми дар барнома вохўрдани оператори return ё ќавси шаклвии пўшида ба итмом мерасад. Ба функсия, њамчун ба зербарнома, якчанда маротиба (аз рўйи зарурат) аз ќисмњои

Page 246: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

246

гуногуни барнома мурољиат кардан мумкин аст. Истифодаи функсия назорат, хондан ва дохилкунии таѓйиротро ба барнома осон мегардонад. Тарзи навишт ва намуди умумии функсияњо чунин аст:

Намуди_ќимати_баргарданда Ном(Рўйхати параметрњо) {

. . . . . . . . . . //Тани функсия . . . . .

}

Дар ин љо Намуди_ќимати_баргарданда – навъњои маълумоти имконпазири С++ (агар функсия ягон ќиматро бознагардонад, он гоњ онро њамчун навъи void тавсиф кардан лозим аст), Ном - идентификатори њанўз дар барнома истифоданашуда, Рўйхати параметрњо – пайдарпайии љуфтњои навъ ва номи маълумот, ки тавассути вергул људо карда шудаанд.

Мисоли 1: Барномаи њисобкунии суммаи ду адади бутуни a ва b:

# include<iostream.h>

int main( ) //функсияи main( )

{

int summa(int a, int b); //тавсифи функсия бо параметрњои зоњирї (формалї, расмї)

int a1,b1;

cin>>a1; cin>>b1;

cout<<summa(a1,b1); //мурољиат ба функсия бо параметрњои аслї

cout<<‘\n’;

return 0; }

int summa(int a,int b) //њисобкунии сумма бо ёрии функсияи summa( )

{ return a+b; }

Page 247: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

247

Сатри { return a+b; }-и ин барномаро дар намуди зерин њам навиштан мумкин аст: { int c=a+b;

return c; }

Як функсия метавонад як ё якчанд ќиматро бозгардонад. Ќимати бозгардандаи функсияро аргумент мегўянд. Њангоми истифодаи функсияњои аргументдор, таѓйирёбандањои ќимати ин аргументњоро ќабулкунанда низ бояд тавсиф карда шаванд. Ин гуна таѓйирёбандањоро интихобњои (параметрњои) функсия мегўянд.

Њангоми ба функсия мурољиат кардан, параметрњои аслии он дар ќавс нишон дода мешаванд. Миќдори параметрњои аслии функсия бояд бо миќдори параметрњои зоњирии он баробар бошад. Дар ваќти иљрои функсия барои параметрњои зоњирии он низ ба таври иловагї хотира људо карда шуда, њар як параметри зоњирї бо параметри аслии ба он мувофиќ инисиаликунонї карда мешавад. Њангоми инисиаликунонї мувофиќати навъи параметрњои зоњирї ва аслї санљида мешавад ва дар мавриди зарурї амалњои стандартии табдилдињии навъњо иљро мегарданд.

Мисоли 2. Барномаи муайянкунии функсияи square( )-ро тартиб медињем, ки он масоњати росткунљаро мувофиќи ќимати тарафњои додашудааш њисоб менамояд.

# include<iostream.h>

void square(int darozi, int bar);

int main ( )

{

square(10,15);

square(25,25);

square(12,63);

return 0;

}

void square(int darozi, int bar)

{ cout<<“S=”<< darozibar<<‘\n’; }

Page 248: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

248

Њангоми њар як мурољиаткунї ба функсияи square( ) масоњати росткунља, бо роњи зарб кардани ќиматњои дарозї (darozi) ва бари (bar) он, њисоб карда мешавад. Барои њамин њам, дар мурољиаткунињо ба ин функсия ду параметр нишон дода шудааст. Масалан, навишти square(10,15) далели он аст, ки мувофиќан адади 10 ба параметри darozi ва адади 15 ба параметри bar бахшида мешаванд. Натиљаи нињоии кори барнома чунин аст:

S=150

S=625

S=756

Оператори return. Иљрои њар гуна барномаи С++ аз иљрои функсияи main( ) оѓоз меёбад. Аслан на танњо функсияи main( ), балки функсияи дилхоњ низ бояд дар барнома дар ягон шакл тавсиф карда шавад. Агар функсия њамчун навъи void тавсиф шуда бошад, он гоњ он ягон ќиматро бознамегардонад. Барои тарки ин гуна функсияњо аз оператори return; истифода мебаранд. Њангоми иљрои оператори return идоракунї фавран ба он ќисми барнома дода мешавад, ки мањз аз он љо ба функсия мурољиат шуда бошад. Аз ин лињоз дар барнома њамеша эњтимолияти умуман иљро нагардидани он операторњое мављуд аст, ки онњо пас аз оператори return омадаанд. Тарзи истифодаи оператори return-ро тавассути барномањои зерин дида мебароем.

Мисоли 3. # include<iostream.h>

void main( )

{

cout<<“In satr chop karda meshavad \n”;

return ;

cout<<“ In satr chop karda nameshavad \n” ;

}

Page 249: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

249

Мисоли 4. Барномаи муайян будан ё набудани функсияи -ро вобаста аз ќиматњои аргументаш тартиб медињем. Маълум аст, ки функсияи мазкур дар мавриди будан муайян ва дар дигар њолатњо номуайян аст.

# include<iostream.h>

void smf(int x1);

int main( )

{

int x;

cout<< “x=”; cin>>x;

smf(x);

return 0;

}

void smf(int x1)

{ if(2*x1+1)

cout<<“Funcsia muayan ast \n”;

else

cout << “Funcsia nomuayan ast\n”;

return;

}

Тавре аллакай маълум шуд, агар функсия бидуни навъи void тавсиф шуда бошад, он гоњ он бояд њатман ягон ќиматро бозгардонад. Дар ин маврид, барои тарки ин гуна функсияњо, аз тарзи зерини навишти оператори return истифода мебаранд: return ќимат;

Навъи ќимати бозгардандаи функсия бояд бо навъи маълумоти дар оператори return истифодашуда мувофиќ бошад, вагарна њангоми компилятсияи барнома ин номувофиќатї њамчун ѓалат ба ќайд гирифта мешавад. Инчунин, агар функсия њамчун навъи int тавсиф шуда бошад, он гоњ ќимати дар оператори return нишондодашуда ба 0 баробар њисоб карда мешавад.

Page 250: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

250

Мисоли 5. Барномаи њисобкунии њаљми параллелопипедро вобаста ба дарозї (length), бар (width) ва баландии (height) он, бо истифода аз таърифи функсия, тартиб медињем.

# include <iostream.h> int v(int, int, int); int main( ){ cout<<“V=”<<v(5, 10, 15)<<‘\n’; cout<<“V=”<<v(10, 15, 20)<<‘\n’; return 0;}int v(int length, int width, int heigth){ return length*width*heigth; }Натиљаи иљрои барнома сатрњои зерин аст:V=750V=3000

Дар барномаи мазкур тавассути оператори re-turn ќимати ифодаи lengthwidthheigth бозгардонида мешавад. Ин маънои онро дорад, ки ќимати бозгардонидаи оператори return ин ќимати функсияи мурољиатї, яъне V аст.

Инчунин иловатан бояд ќайд кард, ки агар функсия дар барнома бидуни навъи void тавсиф шуда, оператори re-turn-ро дар бар нагирифта бошад, он гоњ њангоми мурољиат ба ин функсия ќимати номуайян бозгардонида мешавад.

Мафњуми рекурсия. Функсияро рекурсивї мегўянд, агар он ба худаш мурољиат кунад. Мисоли хуби функсияи рекурсивї алгоритми њисобкунии факториали адади n шуда метавонад: n! (n-факториал) ин њосили зарби n адади натуралии аввалин мебошад. Масалан, 5!=12345=120 аст.

Мисоли 6. Барномаи њисобкунии ќимати факториали адади натуралии n-ро бо ду тарз – бо истифода аз функсияи рекурсивї ва тарзи итеративї (ќадам ба ќадам) меорем:

Page 251: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

251

Тарзи рекурсивї Тарзи итеративї

#include<iostream.h> int factr(int n);int main( ){cout<<“5!=”<<factr(5);cout<<‘\n’;return 0;}int factr(int n){ int answer;if(n==1) return (1);answer=factr(n-1)*n;return (answer); }

#include <iostream.h> int factr(int n);int main( ){cout<<“5!=”<<factr(5);cout<<‘\n’;return 0;}int factr(int n){ int t, answer ;answer=1;for(t=1;t<=n;t++) answer=an-swer*(t);return (answer);

}

Дар мавриди ба функсияи рекурсивии factr( ), ки аргу-менташ 1 аст, мурољиат кардан, ќимати ба 1 баробар њосил мегардад. Дар дигар њолатњо, он ба њосили зарби factr(n-1)n баробар аст. Вале пеш аз њисобкунии ин ифода ба функсияи factr( ), ки аргументаш n-1 аст, мурољиат карда мешавад. Ин раванд то ваќти ба 1 баробар шудани ќимати аргумент такрор мегардад. Њар дафъа оператори return(answer) ќимати функсияи мурољиатї, яъне factr( )-ро бозмегардонад.

L Саволњо:

1. Зербарнома чист?2. Функсия аз зербарнома чї фарќ дорад?3. Функсияро чї тавр тавсиф мекунанд?4. Аргумент аз параметр чї фарќ дорад?5. Вазифаи оператори return аз чї иборат аст?6. Рекурсия чист?

6 Супориш:

1. Барномаи њисобкунии m!+n!-p!-ро бо ёрии функсия тартиб дињед.

Page 252: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

252

2.8. МАССИВЊО

Дар забони барномарезии С++ њам, ба мисли дигар забонњо, њангоми њалли масъалањои гуногун аз массивњо ба таври васеъ истифода мебаранд. Массивњо якченака ва бисёрченака мешаванд.

Массиви якченака дар ин љо низ њамчун маљмўи љузъњои миќдорашон мушаххас ва навъашон якхелае таъриф дода мешавад, ки онњо дорои номи умумї мебошанд. Њар як љузъи массив раќами мушаххаси худро дорад. Љузъњои массив аз сифр (нул) сар карда раќамгузорї мешаванд. Массивњои якченака чунин тавсиф карда мешаванд:

Навъи_массив Номи_массив [Андозаи_массив];

Масалан, дар навишти int a[4]; массиви ададњои бутун тавсиф карда шудааст, ки он дорои номи а буда, аз љузъњои зерин иборат аст: a[0], a[1], a[2], a[3], а[4].

Андозаи массивро танњо андозаи хотираи фаврии компютер метавонад мањдуд гардонад. Аз ин рў, дар барнома андозаи массив аз тарафи корбар муайян карда мешавад. Барои ба љузъи массив мурољиат кардан, аввал номи массив ва баъд дар ќавси квадратї индекси (раќами) љузъро нишон додан зарур аст. Масалан, навишти a[4] – ин мурољиаткунї ба љузъи панљуми массиви а мебошад. Ба сифати индекси массив њар гуна ифодаи навъи бутуни аз таѓйирёбанда ва доимињои бутун ташаккулёфтаро истифода бурдан мумкин аст. Барои инисиаликунонии массив бошад, рўйхати ќиматњои онро нишон додан лозим аст. Масалан, int a[3]={1,3,0,6};

Агар массив бидуни андоза тавсиф шуда, вале тавассути рўйхат инисиаликунонї шуда бошад, он гоњ андозаи он аз рўйи миќдори љузъњои ин рўйхат муайян карда мешавад. Агар андозаи массив ошкоро тавсиф шуда бошад, он гоњ миќдори љузъњои рўйхат набояд аз андозаи массив зиёд нишон дода шавад. Аммо дар мавриди нисбат ба андозаи массив камтар нишон додани миќдори љузъњои рўйхат,

Page 253: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

253

мавќеи љузъњои беќимат бо сифр пур карда мешаванд. Масалан, тавсифњои int k[5]={2,6,5}; ва int k[5]={2,6,5,0,0}; бо њамдигар баробарќувваанд.

Мисоли 1. Барномаеро тартиб медињем, ки он аз парвандаи сарлавњавии iostream.h массиви навъаш њаќиќии b-ро дохил менамояд ва миёнаи арифметикии љузъњои онро

њисоб мекунад.

Барнома дар С++ Натиљаи кори барнома

# include <iostream.h> int main( ){ int i; double S=0,b[11],n=10; for(i=1;i<=n;i++){ cout<<”b[“<<i<<”]=”; cin>>b[i]; } // Дохилкунии массив for(i=1;i<=n;i++) S=S+b[i]; double MiyonaiArif=S/n; cout<< “Miyonai Arifmetikii mas-siv=”<<MiyonaiArif<<’\n’; return 0;}

Массиви бисёрченакаи содатарин массиви дученака мебошад. Дар С++ массиви дученака њамчун массиви якченакае дида баромада мешавад, ки њар љузъи он, дар навбати худ, боз массиви якченака аст. Тавсифи массиви дученака чунин аст:

Навъи_массив Номи_массив [Миќдори_сатр][Миќдори_сутун];

Раќамгузории сатр ва сутунњои массив аз нул оѓоз меёбад. Масалан, навишти int b[3][4]; - тавсифи массиви навъи бутуни номаш b аст, ки он 4 сатру 5 сутун дорад. Барои мурољиат кардан ба љузъи алоњидаи массиви дученака аввал номи массив ва сипас дар ду ќавсњои квадратии алоњида мувофиќан раќамњои он сатр ва сутунњое нишон дода

Page 254: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

254

мешаванд, ки дар буриши онњо љузъи мазкур љойгир шудааст. Масалан, b[2][3] он љузъи массиви b-ро ифода мекунад, ки дар буриши сатри сеюм ва сутуни чорум љойгир аст. Агар массиви дученакаро њамчун матриса тасаввур кунем, он гоњ индекси якум – раќами сатр ва индекси дуюм - раќами сутунро ифода мекунад. Хусусияти љойгиршавии љузъњои массив дар хотираи компютер имкон медињад, ки индекси дуюми массив нисбат ба якумаш тезтар таѓйир ёбад. Њаљми хотираи барои нигоњдории массив људокардашуда, то дар барнома мављуд будани он мавриди истифода ќарор дода мешавад. Барои њисобкунии миќдори он байтњои хотира, ки онњо барои нигоњдории массиви дученака муайян шудаанд, аз формулаи зерин истифода мебаранд:

миќдори_байтњо=миќдори_сутунмиќдори_сатрандозаи_навъ

Масалан, барои нигоњдории массиви int b[3][4] 80 байт (4

*5

*4) хотира лозим аст, чунки ин массив аз 4 сатр ва 5 сутун

иборат буда, барои нигоњдории њар як љузъи он (массиви на-въи бутун) 4 байт хотира пешбинї карда мешавад.

Акнун фрагменти барномаеро меорем, ки дар он массиви навъи бутуни b[3][4] тавассути парвандаи сарлавњавии iost-ream.h дохил карда шуда, баъд ба чоп дода мешавад.

# include <iostream.h> int main( ){ int i,j; for(i=0;i<3;i++) // дохилкунии массив for(j=0;j<4;j++){ cout<<“b[”<<i<<“][”<<j<<“]=”; cin>>b[i][j]; } .............. for(i=0;i<3;i++) // азчопбарории массив for(j=0;j<4;j++){ cout<<“b[”<<i<<“][”<<j<<“]=”<< b[i][j]; } .............. return 0;}

Page 255: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

255

Мисоли 2. Барномаи њисобкунии суммаи ду матрисаи T ва G:

#include <iostream.h> int main( ){double T[3][3]={{1,1,0},{1,1,1},{1,2,3}};double G[3][3]={{2,3,0},{1,5,1},{2,3,1}};double K[3][3];for(int i=0;i<3;i++){for(int j=0;j<3;j++)

K[i][j]=T[i][j]+G[i][j];}{ for(int i=0;i<3;i++){for(int j=0;j<3;j++)cout<<K[i][j];cout<<’\n’;}} return 0; }

Мисоли 3. Барномаи њисобкунии њосили зарби ду матрисае, ки љузъњояшон аз сафњакалид дохил карда мешаванд.

# include <iostream.h> # include <conio.h> int main( ){ int i,j,k; int a[3][3]; int b[3][3]; int c[3][3]; cout<<“Elementhoi massivi A-ro darored: \n”; for(i=0;i<3;i++) { for(j=0;j<3;j++)

=

=

132151032

321111011

GT

Натиљаи кори барнома:

Page 256: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

256

{cout<<“a[”<<i<<“][”<<j<<“]=”; cin>>a[i][j];}}cout<<“Elementhoi massivi B-ro darored: \n”;for(i=0;i<3;i++){ for(j=0;j<3;j++){cout<<“b[”<<i<<“][”<<j<<“]=”; cin>>b[i][j];}}for(i=0;i<3;i++)for(j=0;j<3;j++){ c[i][j]=0; for(k=0;k<3;k++){c[i][j]+= a[i][k]*b[k][j];}}cout<<“Massivi A: \n”;for(i=0;i<3;i++){ for(j=0;j<3;j++){cout<< a[i][j]<<’ ’;}cout<<’\n’;} cout<<’\n’;cout<<“Massivi B: \n”;for(i=0;i<3;i++){ for(j=0;j<3;j++){cout<< a[i][j]<<’ ’;}cout<<’\n’;}cout<<’\n’;cout<<“Massivi C=A•B: \n”;for(i=0;i<3;i++){ for(j=0;j<3;j++){cout<<c[i][j]<<’ ’;}cout<<’\n’; }getch();return 0;}

L Саволњо:1. Массивњоро чї тавр тавсиф мекунанд?2. Оё њангоми инисиаликунонии массив нишон додани

Page 257: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

257

андозаи он шарт аст? 3. Массиви бисёрченака аз якченака чї фарќ дорад?4. Массивњои дученакаро чї тавр тавсиф мекунанд?5. Миќдори байтњои хотира, ки барои нигоњдории массиви

double a[5][6] људо карда шудааст, ба чанд баробар аст?

6 Супориш:1. Барномаи њисобкунии суммаи љузъњои мусбат ва

манфии массиви якченакаи A[0:n]-ро созед.2. Бо роњи барномарезї љузъи калонтарини массиви

дученакаи A[0:n;0:n]-ро муайян кунед.

2.9. ИШОРАКУНАК. САТР

Њар як объекти барнома дар хотираи компютер ягон соњаи муайянеро ишѓол менамояд. Масалан, њангоми тавсифи таѓйирёбанда ба таври худкор барои он дар хотира соњае људо карда мешавад, ки андозааш аз навъи таѓйирёбандаи мазкур вобаста буда, номаш барои ба ќимати он мурољиат кардан хидмат менамояд.

Ишоракунак низ њамчун яке аз объектњои барномаи С++ соњиби ягон суроѓаи хотира аст. Аксар ваќт дар барнома суроѓаи ишоракунак ба сифати ифодагари мавќеи љойгиршавии объектњои дигари барнома истифода бурда мешавад. Масалан, агар таѓйирёбандаи х суроѓаи таѓйирёбандаи у-ро соњиб бошад, он гоњ мегўянд, ки х ба у ишора кардааст ва ё х ишоракунаки таѓйирёбандаи у аст. Таѓйирёбанда-ишоракунакњо низ бояд тавсиф карда шаванд. Тарзи тавсифи онњо чунин аст:

Навъ Номи_таѓйирёбанда-ишоракунак;

Тавре аз ин тарзи тавсиф дида мешавад, дар ин љо

пеш аз номи таѓйирёбанда аломати омадааст, ки он

Page 258: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

258

таѓйирёбандаи мазкурро ба ишоракунак табдил медињад. Масалан, барои таѓйирёбандаи x-ро њамчун ишоракунаки намуди бутун (int) тавсиф намудан, кифоя аст, ки аз оператори int ix; истифода барем. Барои бо навъи сањењии дучанда (double) тавсиф намудани таѓйирёбандаи мазкур бошад, аз оператори double dx; истифода мебаранд.

Њангоми истифодаи ишоракунакњо ду оператор

(амал) кор фармуда мешавад: & ва . Оператори & унарї буда, дар натиљаи иљрои он ба таѓйирёбандаи тарафи чап суроѓаи операнди назди он бахшида мешавад. Масалан, њангоми иљрои оператори abc=&tr; ба таѓйирёбандаи abc суроѓаи таѓйирёбандаи tr бахшида мешавад. Ин суроѓа ба он соњаи хотираи компютер, ки ба таѓйирёбандаи tr тааллуќ дорад, пурра мувофиќат мекунад. Иљрои оператори мазкур ба ќимати таѓйирёбандаи tr ягон таъсире намерасонад, вале таѓйирёбандаи abc соњиби суроѓаи ин таѓйирёбанда

(операнд - tr) мегардад. Оператори дуюм, яъне бошад, њамчун воситаи пуррагардонандаи амали & ба шумор меравад. Ин оператор низ унарї буда, дар натиљаи иљрои он як таѓйирёбанда соњиби ќимати таѓйирёбандаи дигаре мегардад, ки суроѓаи он њамчун операнди ин амал муайян шудааст. Барои осонии кор барномаи зеринро аз назар мегузаронем:

# include<iostream.h> int main( ){ int tr; int *abc; int mfa; tr=2008; abc=&tr; //суроѓаи таѓйирёбандаи tr муайян мешавад mfa=*abc; //ќимате, ки дар ин суроѓа мављуд аст, бахшида

мешавад cout<<tr<<‘\n’;cout<<mfa<<‘\n’; cout<<abc<<‘\n’;return 0; }

Page 259: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

259

Натиља: 2008 2008 0хfff4 Бояд зикр намуд, ки гарчанде дар С++ амали зарб ва

оператори мурољиаткунї ба суроѓа тавассути як аломати ифода карда шаванд њам, вале дар асл тарзи кори онњо аз њамдигар фарќи калон дорад ва ин ду амал бо якдигар ягон иртиботе надоранд.

Сатр гуфта пайдарпайии аломатњои дарозии муайяндоштаро меноманд. Дар С++ ду намуди сатрњо истифода мешаванд:

• Сатр њамчун массиви аломатњои (њарф, раќам ва аломатњои махсус) бо \0 ба итмомрасанда

• Сатр њамчун объектњои синфи string.

Масалан, сатре, ки миќдори аломатњояш (рамзњояш) 10-то аст, њамчун массив чунин тавсиф карда мешавад: char satr[11]; Дар ин љо љузъи ёздањуми массив аломати нулест, ки дар интињои сатр љойгир шудааст.

Сатри нулї танњо аз нулњо иборат буда, барои тасвири сатрњои холї истифода бурда мешавад.

Доимии сатрї - маљмўи аломатњои дар нохунак гирифташуда аст. Масалан, “Тољикистон”, “С++”, “”. Дар интињои доимињои сатрї гузоштани аломати нул шарт нест. Онро компилятор ба таври худкор мегузорад.

Яке аз тарзњои бо ёрии сафњакалид дохил кардани сатрњо - ин истифодабарї аз оператори cin ба шумор меравад. Масалан, дар барномаи зерин ин тарзи дохилкунии сатрњо хеле хуб нишон дода шудааст:

# include <iostream.h> int main( ){ char satr[50]; cout<<“Satrro dokhil kuned:”; cin>>satr;

Page 260: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

260

cout<<“Satri dokhilkardaaton:”; cout<<satr;return 0;}Дар натиљаи иљрои ин барнома дар экран сатрњои

зерин пайдо мешаванд:

Satrro dokhil kuned: ТоjikistonSatri dokhilkardaaton: Тоjikiston

Агар ба љойи калимаи (сатри) Тоjikiston ибораи Тоjikistoni sohibistiqlol дохил карда шавад, он гоњ натиљаи кори барнома чунин мешавад:

Satrro dokhil kuned: Тоjikistoni sohibistiqlolSatri dokhilkardaaton: Тоjikistoni

Сабаби рух додани ин гуна вазъ дар он аст, ки њангоми дар сатр вохўрдани аломати фосила (пробел), амали >> (дар оператори cin) дохилкунии давоми онро ќатъ мегардонад. Бинобар он, ба чоп танњо калимаи якуми сатр дода мешаваду халос. Барои ба пуррагї ба чоп додани сатр бошад, бояд аз функсияи gets( ) истифода бурд. Барои ин, ба функсияи gets( ) мурољиат карда, ба сифати аргумент номи массивро (бе нишон додани индекси он) гирифтан лозим аст. Функсияи мазкур аломатњои дохилкардашударо то лањзаи пахши тугмаи Enter пурра ќабул мекунад.

Барои истифодаи функсияи gets( ) дар барнома парвандаи сарлавњавии <stdio.h>-ро љойгир кардан лозим аст. Бо назардошти ин гуфтањо барномаи болоиро бо ёрии функсияи gets( ) аз нав месозем:

# include <iostream.h> # include <stdio.h> int main( ){ char satr[50]; cout<<“ Satrro dohil kuned:”; gets(satr);

Page 261: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

261

cout<<“ Satri dohilkardaaton:”; cout<<satr;return 0;}

Натиљаи кори барнома чунин аст:

Satrro dohil kuned: Тоjikistoni sohibistiqlolSatri dohilkardaaton: Тоjikistoni sohibistiqlol

Акнун бо чанде аз функсияњои коркарди сатрњо ошно мешавем. Ва ќайд мекунем, ки барои мурољиат кардан ба чунин функсияњо, дар барнома бояд парвандаи сарлавњавии <string.h> љойгир карда шавад.

Функсияи strcpy(). Тарзи навишти умумии ин функсия strcpy(s1,s2); мебошад. Функсияи мазкур ба љойи сатри s1 нусхаи сатри s2-ро мегузорад. Дар назар аст, ки андозаи массиви нигоњдорандаи сатри s1 нисбат ба андозаи массиви нигоњдорандаи сатри s2 калонтар аст.

Функсияи strcat(). Тарзи навишти умумии ин функсия strcat(s1,s2); аст. Ин функсия дар интињои сатри s1 сатри s2- ро мепайвандад. Њар дуи ин сатрњо ва сатри натиљавї бояд бо аломати сифр ба итмом расанд.

Функсияи strcmp(). Тарзи навишти умумии ин функсия strcmp(s1,s2); аст. Функсияи strcmp( ) сатри s1- ро бо сатри s2 муќоиса менамояд. Дар мавриди баробар будани миќдори аломатњои ин сатрњо натиљаи кори функсияи strcmp(s1,s2); ба нул баробар аст. Агар сатри s1 аз сатри s2 калон бошад, он гоњ ќимати функсия мусбат (+), вагарна – манфї (-) аст.

Функсияи strlen(). Тарзи навишти умумии ин функсия strlen(s); аст. Ин функсия дарозии сатри s-ро муайян мекунад.

Функсияњои strlwr() ва strupr(). Тарзи навишти

Page 262: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

262

умумии ин функсияњо мувофиќан чунин аст: strlwr(s); ва strupr(s); Функсияи strlwr( ) њамаи њарфњои калони сатрро ба њарфњои мувофиќи хурд ва функсияи strupr( ) баръакс, њарфњои хурдро ба њарфњои мувофиќи калон табдил медињад. Махсус ќайд мекунем, ки ин функсияњо танњо дар мавриди истифодаи њарфњои лотинї кор фармуда мешаванд.

Функсияи strset(). Тарзи навишти умумии ин функсия strset(s,r); аст. Функсияи strset( ) аломатњои сатри s-ро бо аломати r иваз мекунад.

Мисоли 1. Бо истифода аз функсияњои коркарди сатрї миќдори аломатњои сатрњои Q1 ва Q2 њисоб карда шавад ва баъд онњо бо њам пайваст карда шуда, ба чоп дода шаванд.

#include <iostream.h>#include <stdio.h>#include <string.h> int main( ){char Q1[50],Q2[50];strcpy(Q1, “Asri XXI”);strcpy(Q2,“– asri technologiyahoi informatsionist”);cout>>“Darozii satri-”>>Q1>>“ ba ”>>strlen(Q1);cout>>“ barobar ast”>> “\n”;cout>>“Darozii satri-”>>Q2>>“ ba ”>>strlen(Q2);cout>>“ barobar ast”>> “\n”;strcat(Q1,Q2);cout>>Q1>> “\n”;return 0;}

L Саволњо:

1. Ишоракунак чист?2. Бо ишоракунак кадом амалњоро иљро кардан мумкин аст?3. Дар С++ зери мафњуми сатр чиро мефањманд?4. Дар мавриди истифодаи функсияњои коркарди сатрї дар

Page 263: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

263

барнома бояд номи кадом парвандаи сарлавњавї ба ќайд гирифта шавад?

5. Сатрро бо чанд тарз дохил кардан мумкин аст?6. Дар кадом маврид функсияи strcmp ќимати манфиро њосил

мекунад?

6 Супориш:1. Матни мавзўъро бодиќќат хонед ва онро наќл кунед.2. Њар як функсияи коркарди сатриро бо мисолњои мушаххас

шарњ дињед. 3. Бо истифода аз мафњуми сатр барномаи ёфтани суммаи

раќамњои адади натуралии n-ро тартиб дињед.

Page 264: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

264

ЗаМиМаи 1МУРАТТАБСОЗИИ АЛГОРИТМЊО БО ЁРИИ ХАЗИНА

Дар ин љо баъзе алгоритмњои тайёр пешкаш шудаанд, ки дар њалли масъалањои гуногун ба таври васеъ истифода мешаванд. Њангоми омўзиши онњо ба сохторашон ањамият дињед. Барои онњо блок-наќша созед ва аз онњо дар эљоди алгоритмњои нав истифода баред.

1. Алгоритми њисобкунии ќимати мутлаќи адади њаќиќї

алг ЌМУТ (њаќ х, њаќ y)арг xнат yибт агар x≥0он гоњ y:= xвагарна y:= -xитмоминт2. Алгоритми њалли муодилаи хаттии ax=bалг МУХ (њаќ a, b, њаќ x, лит y) арг a, b нат x, yибт агар a ≠ 0 он гоњ у := ”њал дорад” x:=b/a вагарна агар b=0 он гоњ у:= ”x – адади ихтиёрї” вагарна у:= ”њал надорад” итмом итмоминт3. Алгоритми аз ду адади α ва β ёфтани адади калонтариналг КАД (њаќ α, β, γ) арг α, β

Page 265: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

265

нат γибт агар α ≥ β он гоњ γ:=α вагарна γ:=β итмоминт4. Алгоритми аз се адад ёфтани адади калонтариналг КАС (њаќ а, b, с, у) арг а, b, снат уибт њаќ z КАД(а, b, z) КАД(z, с, у)инт5. Алгоритми њалли муодилаи квадратии ах2+bx+c=0;

a,b,c - ададњои ихтиёрї, а ≠ 0

алг МУКВ (њаќ a,b,c, њаќ x1, x

2, лит у)

арг a, b, c нат x

1, x

2, у

ибт њаќ D D:= b2 - 4ac агар D < 0 он гоњ у:= ”њал надорад” вагарна у:= ”њал дорад”

итмоминт6. Алгоритми ёфтани калонтарин таќсимкунандаи

умумии ду ададалг КТУ (натур м, n, натур КТУ) арг м, n нат КТУибт натур х, у

aDbx

2:2

−−=

aDbx

2:1

+−=

Page 266: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

266

х:= м; y:= n њанўз x ≠ у ибc агар x > y он гоњ x:=x-y вагарна у:=y-x итмом инc КТУ:=xинт

7. Алгоритми љўстуљўи љузъи калонтарини љадвали хаттї

алг ЭКЉХ (бут n, љад њаќ x[1:n], њаќ y) арг n, x нат yибт бут i i:=2; y:=x[1] њанўз i≤n ибc КАД(y,x[i],y); i:=i+1 инcинт8. Алгоритми њисобкунии дараља y = αi; i=1,2,…,n; n∈N

алг Дараља (њаќ α, натур n, њаќ y) арг α, n нат yибт бут i i:=1; y:=1њанўз i ≤ n ибc y:=y•α; i:=i+1 инcинт

Page 267: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

267

9. Алгоритми њисобкунии дараљаи нишондињандааш бутун y=αx; x∈Z

алг ДАРБУТ (њаќ a, бут x, њаќ y) арг a,xнат yибт агар x=0он гоњ y:=1вагарнаагар x>0

он гоњ Дараља (a,x,y)вагарна Дараља (1/a,-x,y)итмомитмоминт

10. Алгоритми њисобкунии пайдарпайии Фибоначчи

алг Фибоначчи (бут n, m, љад бут f [1:n]) арг nнат fибт бут if [1]:=1 f [2]:=1i:=3њанўз i≤ n ибc f [i ]:= f [i-1] + f [i-2]i:=i+1инcинт11. Алгоритми схемаи Горнер

алг схемаи Горнер (бут n, њаќ х, љад а[0:n], њаќ у)арг n,а,хнат yибт бут i

Page 268: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

268

i:=0; y:=a[0]њанўз i≠nибс i:=i+1 y:=y•x+a[i] инсинт12. Алгоритми њисобкунии амплитудаи лаппиш

алг Лаппиш (њаќ m, k, ∆t, n, ν0, x

0, x)

арг m, k, ∆t, n, ν0, x

0, x

нат x

ибт бут i; њаќ a, ν i:=1; x:=x

0; a:=- k•x/m; ν :=ν

0+a•∆t/ 2

њанўз i≠n+1 ибс i:=i+1; x:=x+ν•∆t; a:=-k•x/m; ν :=ν+a•∆t инсинт13. Алгоритми ёфтани адади хурдтарини љадвали хаттї

алг МИНЉУЗЪ (бут к, n, љад њаќ a[k:n], бут l ) арг a, k, n нат lибт бут i, њаќ МИН МИН:=a[k]; l:=k; i:=k+1 њанўз i≤n ибс агар МИН>a[i] он гоњ МИН:=a[i]; l:=i итмом i:=i+1 инсинт

Page 269: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

269

14. Алгоритми батартибории љузъњои љадвали хаттї аз рўйи афзуншавиашон

алг Батартиборї (бут n, m, љад њаќ c[n:m]) арг c, n, m нат cибт бут i, l, њаќ r i:=nњанўз i<m ибс њанўз(i, m, c, l) r:=c[i] c[i]:=c[l] c[l]:=r i:=i+1 инсинт

Page 270: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

МУНДАРИЉАСарсухан...................................................................................3

БАХШИ 1. ВОСИТАЊОИ ИНФОРМАТИКУНОНЇБОБИ I. АСОСЊОИ АЛГОРИТМСОЗЇ

1.1.1 Алгоритм.........................................................................71.1.2. Алгоритмсозї. Забони алгоритмї................................121.1.3.Тарзи иљрои дастурњои алгоритм. Фармонњои графикї............................................................................................161.1.4. Сохторњои алгоритм.....................................................191.1.5. Бузургињо: доимињо, таѓйирёбандањо...........................251.1.6. Алгоритмњои ёрирасон.................................................291.1.7. Сохтори такроршавї.....................................................321.1.8. Бузургињои љадвалї......................................................361.1.9. Асосњои мантиќии алгоритмсозї..................................40

БОБИ 2. АСОСЊОИ БАРНОМАРЕЗЇ

1.2.1. Тањаввул ва таснифи забонњои барномарезї.............471.2.2. Забони барномарезии Qbasic.......................................521.2.3. Функсияњои стандартї. Ифодањо................................601.2.4 Операторњои дохилкунї...............................................641.2.5. Операторњои хориљкунї..............................................721.2.6. Операторњои ёрирасон. Барномањои хаттї...............781.2.7. Барномањои шоханок. Операторњои гузариш............821.2.8. Оператори гузариши шартии калидї. Оператори иваз-кунии ќимати таѓйирёбандањо..............................................881.2.9. Барнома ва операторњои даврї....................................911.2.10. Массив.........................................................................991.2.11. Зербарнома................................................................1071.2.12. Функсияњо ва операторњои коркарди матн.............1121.2.13. Воситањои графикї...................................................1181.2.14. Компилятор, интерпретатор. Ѓалатњои барномавї.126

Page 271: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

271

1.2.15. Марњалањои асосии њалли масъала тавассути компютер..............................................................................1311.2.16. Коркарди парвандањо..............................................136

БОБИ 3. САБКИ ОБЪЕКТГАРОИ БАРНОМАРЕЗЇ

1.3.1. Забони барномарезии Visual Basic............................1401.3.2. Инкапсулатсия, меросгузорї ва полиморфизм........1451.3.3. Муњити Visual Basic 6.0..............................................1501.3.4. Барномасозї дар Visual Basic........................................1571.3.5. Таѓйирёбанда, доимї, функсия.................................1631.3.6. Операторњои шартї...................................................1701.3.7. Оператори Select Case. Сохторњои даврї.................1821.3.8. Протседура. Функсия..................................................1901.3.9 .Массив........................................................................1981.3.10. Кор бо таѓйирёбандањои сатрї................................2051.3.11. Имкониятњои графикии Visual Basic.......................209

Бахши 2. ТЕХНОЛОГИЯИ ИТТИЛООТЇ ВА КОММУ-НИКАТСИОНЇ ЗАБОНИ БАРНОМАРЕЗИИ С++

2.1.Таърихи пайдоиши забони С++...................................2182.2.Ба кор омодасозии С++.................................................2192.3. Идентификатор, таѓйирёбанда, доимї.........................2252.4. Амалњо ва функсияњои математикї..............................2292.5. Операторњои шохавї....................................................2332.6. Операторњои такроршавї............................................2382.7 Функсияњо.......................................................................2452.8. Массивњо........................................................................2522.9. Ишоракунак. Сатр........................................................257Замимаи 1. Мураттабсозии алгоритмњо бо ёрии хазина...264

Page 272: ТЕХНОЛОГИЯИ ИТТИЛООТЇmaorif.tj/storage/Dokument's/Kitobho/Sinfi10/f4fe097a3eeee62ec196… · Визитная карточка Корти шиносої Page preview

272

Комилиён Файзалї Саъдулло, Муллољонов Мубинљон, Тухлиев Ќамариддин

ТЕХНОЛОГИЯИ ИТТИЛООТЇ

Китоби дарсї барои синфи 10-уми муассисањои тањсилоти умумї

Муњаррир С. НекќадамовМусањњењ М. СаидоваМуњаррири техникї Н. СалоњиддинзодаТарроњ И. Сатторов

Ба чоп 13.02.2018 иљозат дода шуд. Коѓази офсет. Чопи офсет. Андоза 60х90 1/16. Љузъи чопї 17,0

Адади нашр 100000 нусха. Супориши № 76/2018

Муассисаи нашриявии «Маориф»–и Вазорати маориф ва илми Љумњурии Тољикистон.

734024, ш. Душанбе, кўчаи Ањмади Дониш, 50. Тел: 222–14–66,

E–mail: [email protected]

Дар матбааи КВД КТН "Шарќи озод" чоп шудааст.ш. Душанбе, хиёбони Саъди Шерозї, 16