[ Updated threads · New messages · Members · Forum rules · Search · RSS ]
  • Page 1 of 1
  • 1
Блок схема
TheDjRider
Дата: Friday, 12.06.2015, 10:55 | Съобщение # 1

Група:  

Няма спирачки
Съобщения: 282
Награди: 3
Репутация: 101
Статус: Offline
Блок-схемите са методи за изготвяне и записване на алгоритми, които да бъдат изпълнени и съответно да се получи някакъв резултат. Блок-схемите се осъществяват с помощта на геометрични фигури, като всяка от тях има свое собствено значение. Вътре в тези фигури се въвеждат данните, с които трябва да работи изпълнителят на алгоритъма.


Eternal Network- A different view of the world !
EternalGaming World Team - Best Gaming Teams in all world !
Eternal Order - You need somethnk try our products !
Eternal Radio - Great music is here !
Eternal Support - Find you answer !


Eternal Moto: If you are Eternal prove it, if not learn how to be !
 
TheDjRider
Дата: Friday, 12.06.2015, 10:56 | Съобщение # 2

Група:  

Няма спирачки
Съобщения: 282
Награди: 3
Репутация: 101
Статус: Offline
Описание на алгоритми чрез блок-схеми

Естествените езици не могат да бъдат използвани за описание на формализирани модели заради възможните неясноти, двусмислици и т.н. Това се отнася и до алгоритмите заради изискването за детерминираност.
Особено трудно в естествения език се описват усложнени последователности от операции, когато едни операции трябва да се изпълняват, а други - не, в зависимост от стойностите на входните данни или вече пресметнати резултати.
Съществуват средства за точно представяне на алгоритмите и ние ще разгледаме някои от тях.
Ще се спрем на най-простия начин за описване на алгоритми - чрез блок-схеми. Използван много в ранните години от развитието на информатиката, този начин постепенно губи своето практическо значение, но остава най-подходящото средство за въвеждане в техниката на разработване и описване на алгоритми. Основното му качество е, че позволява изключително лесно да се проследява последователността на изпьлнение на операциите - логиката на алгоритъма. За сметка на това по-малко внимание се отделя на точното представяне на входните данни и извършваните операции.
Блок-схемите представляват графични средства за изрязяване на алгоритми.
Изграждат се от няколко вида геометрични фигури: правоъгълник, ромб, успоредник, овал и др.
Последователността, в която следва да се изпълняват съответните блокове от блок-схемата, се указва чрез стрелки.
Всяка блок-схема има начален блок, с който се посочва от коя команда трябва да започне изпълнението на алгоритъма и поне един блок, с който се посочва краят на изпълнението на алгоритъма.
Правоъгълникът се използва за описание на безусловни команди. Нарича се функционален блок.
Ромбът или условният блок се използва за описание на разклонения в изчислителния процес в зависимост от условието, което е записано в него. Ако условието е удовлетворено, изчислителният процес продължава с блока, към който сочи стрелката, означена с “Да”. В противен случай се продължава с блока, към който води стрелката, означена с “Не”. Условието се записва с логически израз.
Входните данни, използвани в алгоритъма, както и получените резултати се посочват в блок с формата на успоредник.
При описанието на един алгоритъм е възможно да се използва друг алгоритъм. Този алгоритъм се указва с правоъгълник, чиито вертикални страни са удвоени, и се нарича блок за обръщение към подалгоритъм.
Вижте основните типове блокове , които изграждат блоковата схема.
Често блоковете се номерират по подобие на номерирането на командите при словесното записване на алгоритъма. Обикновено номерата се поставят в лявата част на всеки блок, както е показано на следващата блок-схема за намиране на НОД (Алгоритъм на Евклид с изваждане):



Да разгледаме примери на алгоритми, описани с блок-схема.

Пример 1
От 9 броя видимо еднакви монети едната е по-лека (“фалшива”). Опишете чрез блокова схема начин за намирането и, ако се допускат две претегляния с везни без теглилки.



В сравнение със словесните представяния блок-схемите правят описанието на алгоритмите по-прегледно и удобно. Някои от недостатъците, присъщи на използването на естествен език, остават, тъй като елементарните действия и проверяваните условия се записват словесно в съответните блокове. За повишаване на точността на описанието широко се използват и общоприети математически означения.
Данните ще представяме, както е прието в математиката, с променливи - малки или големи букви от латинската азбука, със или без индекси. За всяка такава буква ще си мислим като за място, в което могат да се съхраняват различни еднотипни данни. Буквата е постоянното име на това място, а стойностите, т.е. конкретните съхранявани данни, могат да се изменят по време на изпълнение на алгоритъма. Операцията „смяна на стойност” се отбелязва със знака :=, като в лявата страна се записва името, а в дясната - новата стойност. Например А:=0 означава, че докато не се срещне подобна операция с А в лявата страна, стойността на името А е 0. Малко по-сложни са такива смени на стойността като А:=А+1 .Това означава, че новата стойност е с единица по-голяма от старата.
Пример 2. Да се опише с блок-схема алгоритъм, който по зададени радиуси R1 и R2 на две концентрични окръжности, R1>R2, намира лицето на фигурата, ограничена от двете окръжности. Алгоритъмът трябва да въведе числата R1 и R2, след което да пресметне последователно лицата S1 и S2 на двата кръга и лицето на фигурата S=S1-S2 и да изведе така пресметнатото лице S.



Пример 3 Опишете с блок-схема алгоритъма за решаване на линейното уравнение Ax+B=0.
В случай, че A=0 и B=0 всяко число х е решение на уравнението . Ако A=0 и B≠0 - уравнението няма решения.
Ако А≠0, уравнението има единствено решение x=-B/A.



Задачи за самостоятелна работа:
Задача 1. Опишете чрез блок-схема алгоритъм за намиране и извеждане лицето на квадрат със страна а.
Задача 2. Опишете чрез блок-схема алгоритъм за намиране и извеждане дължината на окръжност с радиус r, като предварително се направи проверка дали r>0. Ако r>0 да се намери и изведе дължината на окръжността. Ако r≤0 да се изведе подходящо съобщение.


Eternal Network- A different view of the world !
EternalGaming World Team - Best Gaming Teams in all world !
Eternal Order - You need somethnk try our products !
Eternal Radio - Great music is here !
Eternal Support - Find you answer !


Eternal Moto: If you are Eternal prove it, if not learn how to be !
 
TheDjRider
Дата: Friday, 12.06.2015, 10:57 | Съобщение # 3

Група:  

Няма спирачки
Съобщения: 282
Награди: 3
Репутация: 101
Статус: Offline
Примерна блок схема на Квадратно уравнение:



Eternal Network- A different view of the world !
EternalGaming World Team - Best Gaming Teams in all world !
Eternal Order - You need somethnk try our products !
Eternal Radio - Great music is here !
Eternal Support - Find you answer !


Eternal Moto: If you are Eternal prove it, if not learn how to be !
 
  • Page 1 of 1
  • 1
Search: