- •Потужність множини. Зчисленні та незчисленні множини. Їх властивості.
- •2.Поняття моделі. Поняття інформаційної моделі. Поняття математичної моделі.
- •Приклади лінійних просторів
- •2.Алгоритм. Способи опису алгоритмів. Словесна та графічна форми подання алгоритмів.
- •1. Похідна функції однієї змінної, її геометричний та механічний зміст. Основні правила диференціювання.
- •3. Похідна складної функції.
- •1. Диференційовані функції однієї змінної, критерій диференційованості. Диференціал в точці, його геометричний зміст, застосування до наближених обчислень.
- •2. Програма. Поняття мови програмування. Поняття про середовище програмування
- •1. . Основні теореми диференціального числення. Теорема Лагранжа. Умови сталості та монотонності функції.
- •2. . Трансляція та її види: інтерпретація, компіляція. Їх особливості. Поняття системи програмування.
- •1. Екстремум функції. Необхідні умови екстремуму. Достатні умови екстремуму.
- •1. Максимум і мінімум функції в точці.
- •2. Основні принципи технології структурного програмування. Метод покрокової деталізації.
- •1. Структурне програмування
- •1.1. Принцип модульності
- •1. Первісна функція та неозначений інтеграл. Інтегрування підстановкою та частинами.
- •2. Основні принципи технології об’єктно-орієнтованого програмування. Поняття про об’єкт (клас).
- •1. Означений інтеграл. Необхідна умова інтегровності. Критерій інтегровності. Інтегровність неперервної функції.
- •Стандартні функції мови с
- •Аргументи функції
- •1. Квадровні фігури. Застосування означеного інтеграла до обчислення площ плоских фігур.
- •2. Алгоритми обробки масивів. Алгоритм послідовного пошуку. Пошук максимального (мінімального) елемента. Масиви даних
- •Одновимірні масиви (вектори)
- •1. Спрямлювані криві та їх довжини. Теорема Жордана. Обчислення довжини кривої за допомогою означеного інтеграла.
- •1. Застосування визначеного інтеграла до обчислення об’ємів тіл обертання та площ поверхонь обертання.
- •Задача про перевезення (транспортна задача)
- •1. Додатні числові ряди, властивості збіжних рядів, критерій збіжності. Теореми про порівняння рядів. Ознака Даламбера та інтегральна ознака Коші.
- •2. Метод штучного базису відшукання початкового базисного розв’язку злп. М-метод розв’язування злп.
- •1) Методи відшукання початкового базисного розв’язку
- •2) Описання м-методу розв’язування злп.
- •1Знакозмінні ряди. Ознака Лейбніца. Абсолютно і умовно збіжні ряди.
- •2. Двоїсті злп та їх властивості. Теореми двоїстості. Двоїстий симплекс-метод.
- •1. Функціональні послідовності і ряди. Збіжність, область збіжності. Рівномірна збіжність. Ознака Вейєрштраса.
- •2. Транспортна задача (тз). Властивості тз. Деякі методи відшукання початкового базисного розв’язку тз. Метод потенціалів розв’язування тз.
- •§2. Деякі властивості транспортної задачі.
- •§3. Базисні розв’язки транспортної задачі.
- •§4. Деякі методи відшукання базисного розв’язку транспортної задачі.
- •4.1. Метод північно-західного кута.
- •4.2. Метод мінімального елемента
- •§5. Метод потенціалів розв’язування транспортної задачі.
- •1. Метричні простори. Відкриті та замкнуті множини, їх властивості.
- •2. Потоки та мережі. Постановка задачі. Задача про найкоротший шлях. Метод Мінті. Задача про максимальний потік. Метод Форда-Фалкерсона.
- •3. Задача про максимальний потік. Метод Форда–Фалкерсона
- •1. Векторний добуток двох векторів, його властивості та застосування.
- •2. Поняття границі числової послідовності, її властивості. Теорема про границю монотонної числової послідовності. Теорема Больцано-Вейєрштраса
- •1.Еліпс, означення та канонічне рівняння. Дослідження форми еліпса за канонічним рівнянням.
- •Оптимальні чисті стратегії
- •§ 3. Оптимальні змішані стратегії
- •1. Означення детермінанта n-го порядку. Властивості детермінантів.
- •2. Правила суми і добутку. Розміщення, перестановки, комбінації (без повторень та з повтореннями).
- •2. Алгоритми обробки масивів. Сортування елементів масиву методом "бульбашки". Масиви даних
- •Одновимірні масиви (вектори)
- •1. Площини та прямі в просторі.
- •2. Теорема множення ймовірностей. Незалежність подій.
- •1. Поверхні другого порядку. Еліпсоїди, параболоїди, гіперболоїди, гіперболічний параболоїд.
- •Запишемо рівняння поверхні обертання, утвореної обертанням еліпса
- •Записуючи рівняння параболоїда обертання (6) у вигляді
- •На закінчення розглянемо
- •2. Формула повної ймовірності та формули Байєса.
- •1. Формула повної ймовірності та формули Байєса.
- •49.3. Матриця лінійного оператора. Приклади.
- •2. Опис рядків у мові програмування с. Операції над рядками, функції для обробки рядків Рядки
- •Функції обробки символів та рядків
- •Функції, що стосуються рядків, які розглядаються як послідовність байт.
- •Функції, що обробляють рядки
- •1. Множини та відношення. Основні види бінарних відношень. Розбиття множини на класи.
- •1. Лінійні диференціальні рівняння першого порядку та рівняння Бернуллі.
- •Рівняння в повних диференціалах
- •2. . Канонічні (нормальні) форми булевих функцій. Алгебра Жегалкіна.
- •1. Лінійні однорідні диференціальні рівняння n-го порядку із змінними коефіцієнтами. Фундаментальна система розв’язків. Детермінант Вронського. Загальний розв’язок.
- •2. Комбінаторні конфігурації. Біноміальна та поліноміальна теореми.
- •1. Розв’язування диференціальних рівнянь та їх систем.
- •2. Повнота і замкненість систем булевих функцій. Теорема (критерій) Поста.
- •1. Інтерполювання функцій многочленами Лагранжа.
- •Інтерполювання функцій многочленами Ньютона. Сплайни.
- •Скінченні різниці
- •Перша інтерполяційна формула Ньютона
- •Друга інтерполяційна формула Ньютона
- •1. Лінійна та нелінійна кореляція. Метод найменших квадратів. Побудова емпіричних формул.
- •2. . Опукле програмування. Функція Лагранжа. Теорема Куна-Таккера-1. Теорема Куна-Таккера-2. Задача опуклого квадратичного програмування. Квадратичний симплекс-метод. Задачі опуклого програмування.
- •Функція Лагранжа. Теореми Куна-Таккера.
2.Алгоритм. Способи опису алгоритмів. Словесна та графічна форми подання алгоритмів.
Алгоритм розглядається як послідовність дій із строго визначеними правилами виконання, напрямлена на досягнення певної мети.
Властивості алгоритмів:
- дискретність (алгоритм повинен бути записаний у вигляді послідовності окремих, чітко сформульованих вказівок);
- доступність (вказівки алгоритму повинні· бути зрозумілими для виконавця і однозначно виконуватись виконавцем);
- масовість (алгоритм потрібно сформулювати так, щоб його можна було використовувати для розв'язання цілого класу однотипних задач, що відрізняються вхідними даними);
- результативність (виконання алгоритму повинно закінчуватись після виконання скінченого числа кроків. Метою ж виконання алгоритму є одержання результату — шуканих величин);
- визначеність (кожен крок повинен бути чітко й недвозначно визначеним, не повинен допускати довільного розуміння виконавцем);
- формальність (вказівки алгоритму повинні бути сформульовані так, щоб кожен виконавець, який їх прочитає, зміг їх виконати точно і без додаткових пояснень).
Поняття алгоритму тісно пов'язане з поняттям "виконавця алгоритму". Алгоритми створюються для конкретних виконавців, наприклад, людини, спеціально дресированої тварини, особливої машини-автомату, ЕОМ і т.д. Алгоритм є вказівкою до дії для виконавця, тому до значення слова "алгоритм" близькі "вказівка" або "інструкція".
Для опису алгоритмів, виконавцем яких є людина, використовуються три основні форми: словесна, графічна (блок-схема), алгоритмічна мова (псевдокод).
Розглянемо перші дві форми.
Аналіз цих форм проведемо на прикладі алгоритму Евкліда (пошук найбільшого спільного дільника для двох натуральних чисел).
При описі алгоритму у словесній формі команди алгоритму нумеруються, щоб можна було на них посилатись. Наприклад:
1. Якщо числа рівні, то взяти прийняти перше з них за відповідь і завершити виконання алгоритм, інакше перейти до п.2.
2. Визначити більше з двох чисел.
3. Замінити більше число на різницю більшого і меншого чисел.
4. Перейти до п.1.
Команди такого алгоритму виконуються у порядку слідування номерів. Якщо у команді міститься посилання на якийсь рядок, то здійснюється перехід на його виконання.
Для подання алгоритмів більш наочно використовується графічна форма. Команди алгоритму розміщують в середині блоків, з'єднаних стрілками, що показує послідовність їх виконання. Прийняті певні стандарти графічних зображень блоків:
Для запису команд всередині блоків використовується звичайна мова з елементами математичної символіки. В результаті перевірки умови виникає два можливих шляхів продовження виконання алгоритму. Ці шляхи відображаються стрілками із знаками "+" · "-" ("Так", "ні").
Способи опису алгоритмів. Словесна та графічна чорма подання алгоритмів
Досвід практичної діяльності дозволив людині виробити спосіб розв'язування складних задач, який називається алгоритмічним. Цей спосіб полягає в тому, що складний процес розв'язування задачі поділяється на декілька етапів, кожному з яких відповідає дія, виконання якої не становить труднощів. Якщо виконавець процесу розв'язування певної задачі (людина, комп'ютер, робот тощо) відомий, то всі дії, що відповідають етапам – складовим цього процесу, можна подати як конкретні команди. Виконавець обов'язково повинен їх правильно розуміти (у прямому чи переносному смислі) та вміти виконувати. У такому разі кажуть, що розв'язування задачі зводиться до виконання певного алгоритму. Алгоритм – це скінчена послідовність вказівок (команд), формальне виконання яких дозволяє за обмежений час отримати розв'язок задачі. Інакше кажучи, алгоритм – це певна інструкція для виконавця, яка може бути задана різними способами – словами, формулами, послідовністю обчислювальних операцій чи логічних дій тощо. Але не кожна інструкція може бути алгоритмом. Алгоритм повинен відповідати певним вимогам, мати такі властивості. 1. Масовість. Алгоритм має бути придатним для багатьох задач, що належать до певного класу. 2. Визначеність (детермінованість). Ця властивість означає, що кожна команда не повинна допускати двоякого тлумачення. Кожний крок алгоритму повинен бути точно визначеним. 3. Дискретність. Процес, який визначається алгоритмом, повинен мати дискретний (перервний) характер, тобто являти собою послідовність окремих завершених кроків-команд або дій. 4. Результативність. Результативність означає, що кожна дія повинна приводити до цілком певного результату. 5. Формальність. Будь-який виконавець, здатний сприймати та виконувати вказівки алгоритму (навіть не розуміючи їх змісту), діючи за алгоритмом, може виконати поставлене завдання. 6. Скінченність. Діючи за алгоритмом, виконавець одержує розв'язок задачі за скінченну кількість кроків. Досконалим виконавцем алгоритмів обробки інформації є комп'ютер, робота якого здійснюється під управлінням програми. Програма – це алгоритм, команди якого «зрозумілі» комп'ютеру і можуть бути ним виконані. Кожний тип комп'ютера має свій власний набір операцій, із яких можна складати програми. Це так званий набір машинних команд комп'ютера, що визначає обмеження на розробку програм. Тому створення програм являє собою творчий процес, коли потрібно «навчити» комп'ютер розв'язувати різноманітні, як правило складні задачі, використовуючи обмежений набір простих операцій (команд). Разом з тим набір операцій кожного із сучасних комп'ютерів є алгоритмічне повним. Тобто, з цих простих комп'ютерних операцій, як із цеглинок, можна складати алгоритми для розв'язування задач будь-якої складності. Алгоритм описується засобами мови, зрозумілої виконавцю. Для людини – це природна мова. Комп'ютер виконує операції з багато розрядними числами у двійковій системі числення, тобто мовою комп'ютера є послідовність кодів із нулів і одиниць. Використання такої комп'ютерної мови для складання програм дуже неефективне. Записи програм, отримані таким чином, виявляються дуже докладними та громіздкими, процес розробки програм – програмування – складним і трудомістким. Тому для створення програм використовуються спеціальні мови -- так звані мови програмування. Мова програмування дозволяє записувати команди в такій формі, щоб їх можна було замінити на машинні коди. Це перетворення автоматично здійснюється за допомогою спеціальних програм-перекладачів, які називаються трансляторами. Транслятори є складовою частиною системного програмного забезпечення комп'ютера. Чим досконалішими стають комп'ютери, тим більше мови програмування за своїми властивостями наближаються до природної мови людини. При розробці й поданні алгоритмів можуть бути застосовані різні способи їх запису в текстовій та графічній формі. Широкого розповсюдження набув найбільш наочний спосіб зображення алгоритмів у вигляді графічних схем (схем алгоритмів). Схема алгоритму складається з елементів двох типів. Перший тип – це графічні фігури (прямокутники, ромби тощо), кожна з яких відображає один з етапів процесу розв'язування задачі і містить у собі текст відповідної команди. При побудові схем алгоритмів здебільшого використовуються такі графічні позначення: овали – для початку й кінця алгоритму, паралелограми – для введення та виведення даних, прямокутники – для обчислень, ромби – для перевірки умов. У прямокутниках зображується також будь-яка результативна команда по перетворенню даних або ситуації Другий тип елементів — це лінії зі стрілками, що вказую ті послідовність (порядок) виконання етапів. У цілому такий спосіб запису алгоритмів можна розглядати як певну алгоритмічну мову – систему позначень правил для однотипного запису алгоритмів та їх виконання Схема алгоритму ілюструється на рис. на приклад процесу розв'язування квадратного рівняння. А зараз ми з вами розглянемо детальніше алгоритм на способі такої задачі: Задача За який час тіло, яке вільно падає без початкової швидкості , проходить п-ий сантиметр свого шляху. Для початку ми розробимо математичну модель. Нам дано: V0=0 м/с; G=9,81 м/с; Знайти: - час. Визначимо кроки розв’язку задачі. Переміщення при прямолінійному рівноприскореному русі визначається за формулою Оскільки початкова швидкість дорівнює нулю , то формула набере вигляду Вихідним рівнянням є де -час руху тіла на п-му сантиметрі шляху. Звідси Запишемо словесно наш алгоритм.
1Вивести текст : “Працює програма <Вільне падіння>”. 2Вивести текст задачі. 3 Вивести текст: ”Введення вхідних даних”. 4 Вивести текст: “Введіть п ”. 5 Вивести <n=>; n 6 Розрахувати значення за формулою 7 Вивести текст: “Результат обчислень ”. 8 Вивести текст і значення змінної : “час = ” ; . І на кінець, запишемо нашу задачу на навчальні алгоритмічні мові : АЛГ Вальне падіння (дійсні п, ) АРГ п РЕЗ ПОЧ Дійсні данні Виведення Працює програма <Вільне падіння> Виведення Вона обчислює час , за який тіло Виведення проходить п-ий сантиметр Виведення Виведення Введіть п Виведення “п=”; п g = 9,81 =SQRT(2/g)*(SQRT(n)-SQRT(n-1)) Виведення КІН Ось ми і описали нашу задачу алгоритмом. На наступному уроці ми з вами спробуємо переписати нашу задачу з алгоритму на мову програмування.
Білет3