Алгоритми УРОК ПО ИНФОРМАТИКА ЗА 9 КЛАС изготвил: инж. В. Митева.

Slides:



Advertisements
Сходни презентации
Бази от данни и СУБД Основни понятия.
Advertisements

Бази от данни и СУБД Основни понятия.
ОПЕРАТОР ЗА ВХОД И ИЗХОД,ПРИСВОЯВАНЕ
Магдалена Плачкова; 10”б” клас; №19
Оператор за цикъл do-while
Алгоритми.
Задачи.
ПОДРЕЖДАНЕ НА ЗОДИАКАЛНИТЕ ЗНАЦИ Дванадесетте зодиакални полета ПО ЗОДИАКАЛНИЯ КРЪГ Схема № 1 Дванадесетте зодиакални полета.
Организация на програми с циклична структура
Теа Игнатова и Патриша Петрова, Х а клас
Алгоритми и блок схеми. Същност на програмирането
Препис на презентация:

Алгоритми УРОК ПО ИНФОРМАТИКА ЗА 9 КЛАС изготвил: инж. В. Митева

Съдържание Същност на алгоритмите Свойства на алгоритмите Видове алгоритми Начини за описание на алгоритмите Въпроси Задачи за самоподготовка Използвана литература

1. Същност на алгоритмите

Всеки от нас знае как се мият ръце: пуска се водата; насапунисват се ръцете под течаща топла вода; търкат се ръцете една в друга; изплакват се обилно; спира се водата; изсушават се ръцете.

 Запомни! Последователността от инструкции, чието изпълнение води до определен резултат, след краен брой стъпки, се нарича алгоритъм.

Исторически сведения Терминът алгоритъм произлиза от латинизираната форма на името на арабския математик Абу Джафар Мохамед ибн Муса ал-Хорезми, който около 820 г. от н. е. написва научен трактат за това, как да се представят (записват) числата в десетичната бройна система и как да се смята с тях. Произведението на Ал Хорезми (al-Gorezmi) е преведено на латински език в Средновековна Европа в началото на XII век, но разпространението на „изкуството да се смята” и ерата на ръчното и механизирано смятане започва едва през XVI век.

 Запомни!  Запомни! Основни понятия Всяка инструкция в алгоритъма се нарича елементарно действие, което може да се извършва без допълнителни указания.  Запомни! Всяко изпълнение на елементарно действие, се нарича стъпка.

 Запомни! ПОДАЛГОРИТМИ При по-сложните алгоритми се налага една и съща последователност от действия да се описва и изпълнява няколко пъти на различни места. Избягването на това повторение става чрез обособяване на тази последователност от действия като самостоятелен алгоритъм.  Запомни! Подалгоритъм е самостоятелно обособена поредица от елементарни действия, която може да се използва в общия алгоритъм многократно. Съдържание

2. Свойства на алгоритмите

2.1. Дискретност – всеки алгоритъм се състои от краен брой елементарни действия. 2.2. Яснота - всяка текуща стъпка трябва да е точно указана и еднозначно да бъде определена следващата. 2.3. Формалност – изпълнителят може да работи формално, да изпълнява указанията докато стигне до указание за край. 2.4. Определеност – при едни и същи данни се получава един и същи резултат.

2.5. Масовост – всеки алгоритъм да се прилага успешно при решаване на задачи с различни входни данни. 2.6. Крайност – всеки алгоритъм да завършва с резултат за краен брой стъпки. 2.7. Резултатност – всеки алгоритъм трябва винаги да дава резултат, ако входните данни принадлежат на допустимото подмножество. Съдържание

3. Видове алгоритми

3.1. Линейни ПРИМЕР: Да се определи обиколката на триъгълник със страни a, b и c. Входни данни: a, b, c , a>0, b>0, c>0; Резултат: Р – обиколка; Стъпка 1: задава се стойност на а; Стъпка 2: задава се стойност на b; Стъпка 3: задава се стойност на c; Стъпка 4: P= a+b+c.  Запомни! Алгоритми, в които действията се изпълняват последователно по реда, в който са записани, се наричат ЛИНЕЙНИ

3.2. Разклонени ПРИМЕР: Да се разделят две числа a и b. Входни данни: a и b; Резултат: C ; Стъпка 1: Задава се стойност на а. Стъпка 2: Задава се стойност на b; Стъпка 3: Ако b=0, делението е невъзможно, в противен случай: C=a/b  Запомни! Алгоритми, в чието описание има наличие на условие за проверка се наричат РАЗКЛОНЕНИ

3.3. Циклични  Запомни! ПРИМЕР: Да се намери сумата на числата от 1 до 100. Входни данни: целите числа от 1 до 100 и br; Резултат: S - сумата ; Стъпка 1: S=0 Стъпка 2: br=1 Стъпка 3: S=S+br Стъпка 4: Ако стойността на брояча е по-малка или равна на 100, то тя да се увеличава с 1 и се преминава към стъпка 3. В противен случай – край.  Запомни! Алгоритми, при чието изпълнение се повтарят няколкократно част от инструкциите, се наричат ЦИКЛИЧНИ Съдържание

4.Начини за описание на алгоритмите

Словесно – на естествен език се описват една по една стъпките. Графично – с помощта на блок-схеми Посредством език за програмиране – Паскал, С++ и т.н.

5. Блок-схеми

 Запомни! Блок-схемите се състоят от блокове и свързващи ги стрелки. В блоковете се описват действията на алгоритъма, а свързващите ги стрелки указват последователността на изпълнение на действията.

Блокове за начало и край 5.1. Видове блокове Блок за обработка / функционален блок/ Блокове за начало и край

/Блок за проверка на условие/ Блок за подалгоритъм Блокове за вход и изход Логически блок /Блок за проверка на условие/ Блокове за свързаване на прекъснат алгоритъм

5.2. Базови алгоритмични конструкции разклонени линейни

Циклични Цикъл с предусловие Цикъл с постусловие

Графично описание чрез блок-схема Примерна задача: Графично описание чрез блок-схема Дадена е окръжност с радиус R. Да се намери лицето на окръжността с радиус R, в противен случай да се изведе подходящо съобщение Словесно описание Стъпка 1: Въвеждаме R Стъпка 2: Проверяваме знака на R: ако R>0 , изчисляваме S=3.14*R*R в противен случай извеждаме съобщение за некоректно въведени данни Стъпка 3: Извеждаме S

Алгоритъмът намира най-големият общ делител / НОД/на две числа a и b Алгоритъм на Евклид Алгоритъмът намира най-големият общ делител / НОД/на две числа a и b Словесно описание: Ако a>b , то изпълни стъпка 2, в противен случай – стъпка 3. На a дай стойността на разликата на a минус b. Изпълни стъпка 1. Ако b>a , то изпълни стъпка 4, в противен случай – стъпка 5. На b дай стойността на разликата на b минус a. Изпълни стъпка 1. Най-големият общ делител е a=b. Задача1. Изпълнете алгоритъма за числата 6 и 15. Задача2. Изразете алгоритъма чрез блок-схема. Съдържание

Въпроси Какво означава понятието “АЛГОРИТЪМ”? Кои са основните свойства на алгоритмите? Какви са видовете алгоритми? Кои са начините за описание на алгоритмите? Какво представляват блок-схемите? Кои са основните блокове в тях? Съдържание

Задачи за самоподготовка Задача 1. Да се състави алгоритъм за решаване на линейно уравнение ax +b = 0 Задача 2. Да се състави алгоритъм за пресмятане на функцията у: у = -13х-3, за х<-3 у = -11х+3, за х>=-3 Задача 3. Да се състави алгоритъм, който проверява дали дадени три отсечки a, b и c могат да са страни на триъгълник и ако “да”, то да се извежда видът му. Задача 4. Да се състави алгоритъм, пресмяташ сумата на редицата 1x+2x2+3x3+…….nxn Съдържание

Използвана литература: електронен учебен курс (ОРАК) Съдържание