ЕТАПИ НА СЪЗДАВАНЕ НА FLASH-ЛЕКЦИИ В ТЕМАТА "PASCAL"
Първата лекция, изнесена от Паскал, беше на тема „Опашка“ (Фигура 27)
Фигура 27 - Флаш лекция
В него се опитах да обясня учебния материал по темата „Опашка“, както и вътре в лекцията направих тестови задачи за по-пълно разбиране.
Лекцията се състои от три урока:
Разказва за ходовете на рицаря.
Тук съм илюстрирал всички възможни ходове на рицаря, ако е в позиция d4.
Анализ на проблема с хода на рицаря.
Дадени са обозначенията на две полета на шахматната дъска (например A5 и C2). Намерете минималния брой ходове, необходими на шахматен рицар, за да премине от първия квадрат към втория.
Идея за решение: опашката от възможни рицарски движения.
Първо, поставяме на опашка всички квадратчета на дъската, които могат да бъдат достигнати с едно движение. След това, използвайки елементите, които вече са в опашката, попълваме опашката с полета, които могат да бъдат достигнати точно за 2 хода и т.н. Ясно е, че всеки път, когато поставяте квадрат в опашката, не е излишно да проверите дали е желаният и тогава знаем в колко хода ще получи рицарят тук. В този случай механизмът на опашката гарантира, че това ще бъде минималният брой ходове.
По-строг алгоритъм на решението:
Поставете оригиналния рицарски квадрат в опашката
До (не намерих точния номер)
Изберете първия елемент от опашката - клетка X, Y
Ако този артикул НЕ е желаният артикул
след това клетки, до които може да се стигне от X, Y в ход на рицар
ако не окончателен
и все още не е маркиран
опашка и марка
По-долу е основната част от програмата, която решава този проблем:
Намерено: = (Sx = Ex) и (Sy = Ey);
докато (не е намерен)
В тази част на лекцията се опитах да покажа как работи алгоритъмът на опашката. (фигура 28)
Фигура 28 - Последният урок от флаш лекцията
Рекурсивни процедури и функции
Задачата беше да се изнесе лекция на тема: „Рекурсивни процедури и функции“. В хода на работата лекцията беше разделена на три части:
1) рекурсивно изчисление на gcd.
2) Сума M от N числа.
3) Анализ на проблема с Ханойската кула.
1) Рекурсивно изчисление на gcd
В първата част на лекцията беше необходимо да се покаже програма за рекурсивно изчисляване на най-големия общ делител на две числа a и b. (фигура 29)
Фигура 29 - Първата част на лекцията
Опитах се да илюстрирам следния материал в лекцията:
функция NOD (a, b: longint): longint;
тогава NOD: = NOD (a-b, b)
тогава NOD: = NOD (a-b, b)
ако 12, тогава функцията NOD се нарича ОТНОВО, но с параметри (18-12,12), тоест с параметри (6,12).
Моля, обърнете внимание, че функцията NOD, без да завърши работата си, се самоизвиква, но с намалена стойност на един от параметрите - (6,12) вместо (18,12). Такива функции се наричат РЕКУРСИВНИ. Необходимо условие за правилната работа на рекурсивните функции е и условието за НЕ-РЕКУРСИВНО (т.е. БЕЗ извикване на самата функция) изчисление на резултата за определени аргументи на повикване. Например във функцията NOD (a, b) това условие е условието a = b.
В нашия пример функцията NOD ще се извика първо с параметри (6,12), след това 6,6 - това ще бъде последното повикване с отговор 6. След което този отговор ще бъде последователно предаден на извикващите функции до основна програма.
Програмата за изчисляване на най-големия общ делител на числата a и b може да бъде написана нерекурсивно - например по следния начин:
ако a> b, тогава a: = a-b, друго b: = b-a;
2) Сума M от N числа
В тази част на лекцията показах по колко начина можете да направите сума М от N числа. (Фигура 30) Да предположим, че трябва да напишем програма, която въвежда числа M, N и последователност от N числа a [i] и отчита броя на начините, по които числа a [i] могат да бъдат използвани за съставяне на дадена сума M.
Фигура 30 - Съставяне на сумата M от N числа
3) Анализ на проблема с Ханойската кула
Една от древните легенди казва следното:
". В храма на Бенарес има бронзова плоча с три диамантени пръчки. При създаването на света Бог е нанизал 64 диска с различен диаметър чисто злато върху една от пръчките, така че най-големият диск да лежи върху бронзовата плоча, а останалите образуват пирамида, която се стеснява нагоре. Това е кула. Брами Работейки денем и нощем, свещениците прехвърлят дискове от един прът на друг, следвайки законите на Брахма:
Дисковете могат да бъдат премествани само от един прът на друг по един;
Не можете да поставите по-голям диск на по-малък.
Когато всички 64 диска бъдат прехвърлени от един прът на друг, кулата, храмовете и свещениците брахмани ще се превърнат в прах и светът ще свърши. "
Програмата за рекурсивно решаване на проблеми:
Фигура 31 - Рекурсивно решение на проблема с кулата на Ханой
- Статия по география на тема Създаване на образователна и развойна среда за географски кабинет на образователна институция чрез
- Какво е определението, функцията, историята на Сената
- Създаване на VPN връзка в Windows 7 - Ionit-telecom
- Писане на S-функции във Fortran
- Създаване на отчет като обект на база данни