Воскресенье, Ноябрь 17Вместе создадим светлое будущее!


Алгоритмҳо

Яке аз мафҳумҳои асоситарине, ки бо тадбиқи компютерҳо ва ёфтани ҳалли масъалаҳо вобаста аст, – ин мафҳуми алгоритм мебошад. Пайдоиши алгоритм бо пайдошавии математика рост меояд. Ҳазор сол пеш аз ин математики машҳури Хоразми Абдулло Муҳаммад ибни Мусо ал Хоразми дар китоби математикаи худ тарзҳои иҷроиши амалҳои арифметики бо ададҳои бисёррқамаро нишон додастАЛГОРИТМҲО

Мавзӯи 1. Маълумоти умуми оиди алгоритмҳо.
Мақсад: Додани мафҳум оиди алгоритм, хосиятҳои алгоритм ва воситаҳои тасвиркунонии алгоритмҳо. Омузонидани тарзҳои тартиб додани алгоритмҳо ва блоксхемаҳо. Баланд бардоштани малакаю дониши хонандагон.

Нақша:
1. Маълумоти умуми оиди алгоритмҳо.
2. Хосиятҳои алгоритм.
3. Воситаҳои тасвиркунии алгоритмҳо.
Яке аз мафҳумҳои асоситарине, ки бо тадбиқи компютерҳо ва ёфтани ҳалли масъалаҳо вобаста аст, – ин мафҳуми алгоритм мебошад.
Пайдоиши алгоритм бо пайдошавии математика рост меояд. Ҳазор сол пеш аз ин математики машҳури Хоразми Абдулло Муҳаммад ибни Мусо ал Хоразми дар китоби математикаи худ тарзҳои иҷроиши амалҳои арифметики бо ададҳои бисёррқамаро нишон додаст. Худи калимаи алгоритм ҳангоми дар Европа ба лотини тарҷума шудани китоби ин математики машҳур пайдо шудааст.
Алгоритм – тасвири амалиётҳои пайдарпай, ки тартиби иҷроиши он бо миқдори қадамҳои охирнок ба ҳалли масъалаи гузошташуда оварда мерасонад.
Дар амал ҳалли масъалаи дилхоҳ информатсияи пешаки додашударо талаб менамояд. Шумо ҳамавақт бо ин мафҳум дар муҳити дилхоҳи фаъолияти шахсии худ вомехуред (китобҳои қаннодӣ, тавсияҳо оиди истифодаи дилхоҳ таҷҳизотҳо, тартиби ҳалли масъалаҳои математики ва ғ.). Асосан мо амалиётҳои лозимиро фикр накарда ба таври механики иҷро менамоем. Масалан мо бо воситаи калид кушодани дарро хуб медонем, лекин барои ба кудак омӯзонидани он аз як тартиби муайян истифода мебарем, ёки пеш аз ҳал намудани ягон мисоли математики мо якчанд лаҳза фикр менамоем то чик ор кард.
Ҳаргуна алгоритм бояд дорои чор хосияти асосии зеринро доро бошад:
1. Дискретӣ – алгоритм рванди додашударо ба марҳилаҳои (қадамҳои) алоҳидаи элементарие ҷудо мекунад, ки онҳо ба маҷмӯи амалиётҳои иҷрокунанда дохил мешаванд.
2. Детерминантӣ – Маҷмӯи нишондоди алгоритм бояд аниқ ва барои иҷрокунанда фаҳмо бошад. Ин хосият якқимата будани натиҷаи равандро таъмин менамояд, яъне барои ҳамон як маҷмӯи маълумотҳои пешаки додашуда, алгоритм ҳамеша натиҷаи якхеларо медиҳад. Дилхоҳ амалиёт бояд ботартиб ва яккарата муайян дар ҳар ҳолалат бошад;
3. Охирнок – ҳар як амалиёт ва алгоритм дар намуди умуми бояд анҷомёбнда бошад;
4. Умуминок – алгоритм бояд барои дилхоҳ қимматҳои лозимӣ иҷрошаванда бошад;
5. Натиҷавӣ – бехато ва алгоритм бояд барои дилхоҳ қимат натиҷаи дуруст диҳад.
Воситаҳои тасвиркунии алгоритмҳо.
1. Алгоритм бояд дар шакли ба одам фаҳмо, ки онро коркард менамояд пешкаш карда шавад.
2. Алгоритм бояд дар шакле пешкаш карда шавад, ки ба объекти иҷрокунандаи амалиётҳои алгоритм фаҳмо бошад.
Объекте, ки алгоритмро иҷро менамояд асосан иҷрокунанда номида мешавад. Иҷрокунандагони идеали мошина, робот ва компютерҳо мебошанд.
Барои он, ки алгоритм то иҷрокунанда оварда расонида шавад, он бояд вобаста аз вазифаи иҷромекардааш аз рӯи ягон қонуну қоида бо ёрии ягон воситаи тасвиркунии конкрети ба намуди формулавӣ оварда шавад.
Ба воситаҳои асосии тасвиркунии алгоритмҳо тарзҳои зерини навишти онҳо дохил мешаванд: матнӣ, формулавӣ- матнӣ, блок- схемавӣ ва забонҳои барномасозӣ.
а) Агар ба сифати воситаи тасвиркунии алгоритм тарзи навишти матнӣ истифода карда шавад, онгоҳ пайдарпайии марҳилаҳои алгоритмро бо забони муқаррарии гуфтугӯидар намуди дилхоҳнавиштан мумкин аст. Бартарии ин усул дар он аст, ки марҳилаҳои алгоритмро то дараҷаи дилхоҳаниқ тасвир кардан мумкин аст.
б) Дар навишти формулави – матнӣ бошад алгоритмҳо иҷрошавии амалиётҳои конкретии марҳилаҳо бо ёрии формулаҳои математики тасвир карда шуда, барои шарҳу эзоҳот матнҳо истифода бурда мешаванд. Бо ёрии ин усул низ дараҷаи дилхоҳи тасвири марҳилаҳои алгоритмро ҳосил кардан мумкин аст. Бартарии ин усул дар он аст, ки дар ин маврид марҳилаҳои алгоритм аёнтар мегардад.
Алгоритме, ки дар забони барномасозии ба компютер фаҳмо навишта шудааст барнома номида мешавад.

Мавзӯи 2: Намудҳои алгоритмҳо. Забони алгоритмӣ.
Мақсад: Баланд бардоштани малакаю дониши хонандагон оиди технологияи информатсионӣ. Омӯзонидани тарзҳои тартиб додани алгоритмҳо тавасути Забони алгоритмӣ

Нақша:
1. Намудҳои алгоритмҳо.
2. Забонҳои алгоритмӣ.

Алгоритмҳо ба намудҳои зерин ҷудо карда мешаванд:
1. Алгоритми хатти – тасвири амалиётҳо, ки бо тартиби муайян яккарата иҷро мегарданд;
2. Алгоритми даврӣ – тасвири амалиётҳо, ки метавонанд бо миқдори муайяни қадамҳо ёки то иҷрошавии шарти гузошташуда такрор ёбанд;
3. Алгоритми шартӣ (шоханок) – алгоритме, ки вобаста ба шарти гузошташуда ин ё он амалиёти пайдарпай иҷро мегардад;
4. Алгоритми ёрирасон – алгоритме, ки метавонад дар дигар алгоритмҳо истифода шавад, фақат бо нишон додани номи он.

Барои боз ҳам саҳеҳ тасвир намудани алгоритм бисёртар шакли графики – блок схема истифода бурда мешавад, ки аз объектҳои графики стандарти иборат мебошад.

Забони алгоритмӣ системаи ишораткунӣ ва қоидаҳоест, ки барои якхела навиштан ва иҷро кардани алгоритмҳо истифода бурда мешавад. Ин забон аз ҷиҳати таркиб содда ва оммафаҳм буда, ба забони гуфтугӯйӣ хеле наздик аст. Дар забони алгоритмӣ рамзҳои математикӣ, ададҳо, аломати амалҳо, ишорати функсияҳо ва бузургиҳоро бе ягон тағйирдиҳӣ истифода бурдан мумкин аст. Вале ин забон забони шартӣ буда, программаҳои дар он сохта шударо ягон компютер иҷро карда наметавонад. Танҳо баъди омeхтани ин забон, омeзиши забонҳои асили программасозӣ хеле осон мегардад. Набояд фаромӯш кард, ки ҳангоми сохтани алгоритмҳо риоя намудани қоидаҳои забони алгоритмӣ шарт ва ҳатмист, чунки онҳо асоси забонҳои программасозиро барои компютер ташкил медиҳанд.
Тавре ки ҳар як забон синтаксис ва грамматикаи худро дорад, забони алгоритмӣ ҳам дорои як қатор қойдаҳо мебошад. Ҳангоми навиштани алгоритм ин қойдаҳо бояд риоя шаванд. Барои ин ба мо зарур аст, ки луuати забони алгоритмиро донем. Асоси ин луғатро командаҳои содда ташкил медиҳанд. Командаҳои содда калимаҳое мебошанд, ки дар системаи командаҳои иҷрочии алгоритм мавқеи марказиро ишғол менамоянд. Дар забони алгоритмӣ командаҳо ё дар намуди мухтасар ё пурра дода мешаванд. Инчунин, дар забони алгоритмӣ калимаҳои хизматрасон низ истифода бурда мешаванд. Ин калимаҳо ҳангоми сохтани алгоритм xудо карда шуда, дар шакли мухтасар навишта мешаванд.
Ҳар як алгоритм бояд ном дошта бошад. Ба алгоритм номи дилхоҳро гузоштан мумкин аст, лекин барои осонии кор номро бояд мувофиқи мазмуну мундариxаи алгоритм гузошт.
Баъзе калимаҳои хизматрасони забони алгоритмӣ инҳоянд:
алг (алгоритм) – нишонаи номи алгоритм.
ибт (ибтидо) – нишонаи ибтидойи алгоритм.
инт (интиҳо) – нишонаи интиҳойи алгоритм.
Командаҳои алгоритм дар сатрҳо пай дар пай навишта мешаванд. Дар як сатр як ё якчанд командаро навиштан мумкин аст. Барои аз ҳамдигар ҷудо кардани командаҳое, ки дар як сатр навишта шудаанд, аломати нуқта-вергул (;) истифода бурда мешавад.
Пайдарпайии командаҳои алгоритм, ки яке аз паси дигар иҷро карда мешаванд, серия ном доранд. Серия метавонад аз як ё якчанд команда иборат бошад.
Ҳамин тариқ, намуди умумии алгоритм дар забони алгоритмӣ чунин аст:
алг номи алгоритм
ибт
командаҳои алгоритм (серия)
инт

Мисол: Бигузор амалҳои чен кардан, ба ду ҳиссаи баробар тақсим кардан, ба воситаи нуқтаҳо ишора кардан ва кашидани порча ба системаи командаҳои иҷрочӣ дохил бошанд. Талаб карда мешавад, ки алгоритми гузаронидани хати миёнаи секунҷа тартиб дода шавад.

алгоритми Хати миёнаи секунҷа
ибт
яке аз тарафҳои секунxаро чен кунед
миёнаҷои онро бо нуқтаи A ишора кунед
тарафи дигари секунxаро чен кунед
миёнаҷои онро бо нуқтаи В ишора кунед
порчаи АВ-ро гузаронед
инт
Муҳити барномасозии QBASIC
Объекти коркардкунандаи муҳити барномасозии QBASIC файли матние мебошад, ки матни барномаиBASIC – ро дорост. Барномаи QBASICба DOS замимаҳо дохил шуда ба таври нусхабардорӣ дар ягон папкаҳои Windows истифода бурда мешавад. Баъд аз бакор омодасозии QBASIC.EXE дар экран равзанаи редактори матнии система кушода мешавад.

Дар ин равзана шумо ҳамаи амалиётҳоро бо барнома – дохилкуни ва таҳриркунии матн, сабткунонии матн дар файл, барои коркард файлеро кушодан, боздоштан ва иҷрокунии барномаро гузаронед.
Файлеки дар ин барнома сохта мешавад қисми иловагии .BAS – ро мегирад.
Редактори матнии QBASIC ба монанди редактори DOS кор намуда амалиётҳои таҳриркунони матни барнома тавасути бандҳои менюи он иҷро карда мешаванд.
Ҳар як банди менюи барнома аз номгӯи зербандҳо иборатанд.

Мавзӯи 3: Ифодаҳо ва Функсияҳои стандартӣ
Мақсад: Ба хонандагон омӯзонидани тарзи истифодабарии ифодаҳо
ва функсияҳо дар забони барномасозии Бейсик. Баланд
бардоштани маҳорати барномасозии хонандагон.
Дар Бейсик се намуд ифодаҳоро фарқ мекунанд: арифметикӣ, рамзӣ ва мантиқӣ.
Ифодаҳои арифметикӣ ба воситаи доимиҳо ва тағйирёбандаҳои ададӣ, аломати амалҳои арифметикӣ, функсияҳои стандартии математикӣ ва қавсҳои доирашакл тартиб дода мешаванд. Дар навишти ифодаҳо рамзи амалҳоро партофтан мумкин нест.
Амалиётҳои арифметики дар забони Basic.
амалиёт ишорат мисол натиҷа
ҷамъ + 2+5 7
тарҳ – 10-8 2
зарб * 3*4 12
тақсим / 15/3
15/4 5
3.75
Тақсими бутун \\ 15\\4 3
дараҷа ^ 2^3 8
Бақия аз тақсим MOD 13 MOD 5 3

Мисоли 1:
Навишти муқаррарӣ Навишт дар Бейсик
5у 5*y
ах2+вх+с a*х^2+в*х+с

х*y/(х+6.5*y)

Тартиби иҷрои амалҳои арифметикӣ ба таври муқаррарӣ сурат мегирад. Ҳар як функсияи стандартии Бейсик номи муайян ва аргументи худро дорад. Ба сифати аргументи функсияҳо ифодаи арифметикии дилхоҳро истифода бурдан мумкин аст. Аргумент пас аз номи функсия дар қавс навишта мешавад. Аргументи функсияҳои стандартии тригонометрӣ ба воситаи радианҳо ифода карда мешаванд. Тарзи навишти якчанд функсияҳои стандартиро дар намуди ҷадвали зерин меорем:

Номи функсияҳо Навишт дар Бейсик
Синуси х sin(x)
Косинуси х cos(x)
Арктангеси х atg(x)
Решаи квадратӣ аз х sqr(x)
Экспонент аз х (ех) exp(x)
Логарифми натуралӣ аз х log(x)
Логарифми даҳӣ аз х log10(x)
Қимати мутлақи х, яъне | x | abs(x)
Қимати бутуни х int(x)
Адади тасодуфӣ дар байни 0 ва 1 rnd(x)
Функсияи аломат sgn(x)

Мисоли 2:
Ифодаҳои зеринро дар забони программасозии Бейсик менависем:

Дар математика Дар Бейсик

y=sin(x/5)+cos(x/5)+exp(sqr(a*x))

s=sqr(x*log(x))+(atg(b) / sin(c))

Ифодаҳои рамзӣ (литерӣ) ба воситаи доимиҳо, тағйирёбандаҳо, функсияҳо ва аломати амали рамзӣ сохта мешаванд. Дар забони программасозии Бейсик фақат як амали рамзӣ пешбинӣ шудааст, ки онро амали пайвасткунии (конкатенатсия) бузургиҳои рамзӣ меноманд. Ин амал ба воситаи аломати «+» ишорат карда мешавад. Масалан, қимати ифодаи рамзии “БАР”+”НО”+“МА” матни «БАРНОМА»-ро ташкил медиҳад.
Дар баъзе версияҳои Бейсик барои коркарди бузургиҳои рамзӣ (матнӣ) як қатор функсияҳои махсус пешбинӣ шудаанд.
Масалан:
LEN(a) – дарозии матни а-ро ҳисоб мекунад.
VAL(а) – қимати рамзии а-ро ба коди даҳии ба он мувофиқ табдил
медиҳад.
MID(a,m,n) – қисми бузургии рамзии а-ро, ки дарозиаш ба n рамз
баробар аст, аз рамзи m-уми он сар карда ҷудо мекунад.
Ифодаҳои мантиқӣ ба воситаи ифодаҳои арифметикӣ ва рамзӣ сохта шуда, танҳо яке аз ду қимат – ҳақ (true) ё ноҳақ (false)-ро қабул карда метавонанд. Ифодаҳои нисбӣ ҳолати хусусии ифодаҳои мантиқиянд. Онҳо бо ёрии ду ифодаи арифметикӣ ва яке аз аломати амалҳои нисбии (калон), = (калон ё баробар), = (баробар), (нобаробар) сохта мешаванд.

Мисоли 3:
Навишти муқаррарӣ Навишт дар Бейсик
b0 b<=0
ax2=bx+c a*x^2=b*x+c
lnx<2sin x log(x)<2*sin(x)
Саволҳо:
Кадом функсияҳои стандартии забони Бейсикро медонед?
Ифодаҳои Бейсик кадомҳоянд ва онҳо чӣ тавр сохта мешаванд?
Аз функсияҳои стандартии EXP*B; COS(30); ABS(2,6); ТN*1; SQR5^2 кадомашон бехато навишта шудааст?
Супориш:

1. Ифодаҳои математикии зеринро дар Бейсик нависед:

tŸ3,5 a0+a1х+а2х2

2. Ифодаҳои арифметикии Бейсикро ба забони муқаррарии математикӣ баргардонед:

(k-5*f)/a a/b/c*d*e
abs(a-b)/(4+х)^(2+y) 12-exp(x)+log(y)

3. Агар х=2, y=3, a=5 бошад, дурустии ифодаҳои нисбии зеринро муайян кунед.

xx*y
a+x^2=y^2 int(y/x)=y-x

Если вам помогла данная запись поделитесь им с друзьями:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


Уважаемые читатели! Просим вас, оставляя комментарии, уважать друг друга и не злоупотреблять свободой слова.
Администрация сайта будет удалять:
1. Комментарии с грубой и ненормативной лексикой.
2. Оскорбления, угрозы и непристойные высказывания.
3. Высказывания, разжигающие национальную, религиозную и прочую рознь и вражду.
4. Комментарии, содержащие другие нарушения законодательства и прав граждан.
5. Комментарии, рекламирующие и продвигающие другие веб-ресурсы, товары и услуги, а также комментарии, не имеющие отношения к дискуссии.

Пользователи, которые нарушают эти правила грубо или систематически, будут заблокированы.