BigEdu.ru
» » » Поняття компонента в програмуванні
Вернуться назад

Поняття компонента в програмуванні

Зміст
1. Мови та системи програмування
2. Технологія програмування та проектування програмного забезпечення (ПЗ)
3. Пошук за ключем у масиві
4. Сортування вибором
5. Сортування простими вставками
6. Список використаної літеатури.
Мови та системи програмування
1. Процедурні та проблемно-орієнтовані мови: особливості організації і напрямки розвитку. Основні концепції і можливості мов , , , , , , , .
2. ( і ) та . Етапи трансляції: лексичний, синтаксичний, семантичний аналіз, оптимізація, генерація об'єктного коду, збирання.
3. , що створюється транслятором: статична, автоматична, базована та динамічна пам'ять. Методи гешування.
4. Організація передачі параметрів між програмовими модулями. , за найменуванням, за результатом. Проблеми комплексування різномовних модулів.
5. Мови, що орієнтовані на паралельну та розподілену обробку. Особливості реалізації.
6. Генератори систем програмування. Макрогенератори та розширювані системи програмування, .
7. : багатомовні системи, параметричні системи та метатранслятори.
8. Діалогові системи програмування: призначення та архітектура. Форми організації діалогу. Способи мовного спілкування: відеоформи, меню, електронні таблиці, використання функціональних клавіш і т. п.. Діалог на природній мові.
Технологія програмування та проектування програмного забезпечення (ПЗ)
1. Основні стадії та етапи проектування програм та документування. Технічне завдання. Ескізний, технічний, робочий проекти. Впровадження та супроводження, моделі життєвого циклу ПЗ.
2. . Понятійні засоби специфікації. Денотаційна, операційна та аксіоматична семантики. Класифікація мов специфікацій.
3. Якість програмового забезпечення. Методи налагодження та тестування програм, .
4. Організація роботи колективів програмістів. Бригада головного програміста. Планування виробництва ПЗ. Проектування послідовних та паралельних програм.
5. Поняття рекурсії. Рекурсивні означення та рекурсивні програми. Властивості рекурсивних алгоритмів. Функціональні і рекурсивні структури даних.
6. . Теорема про структурування програм. Багатоосновні алгебри структур даних. Теоретико-множинні структури даних.
7. Схеми програм над пам'яттю. . Повторне використання ПЗ. Модифікованість алгоритмів та програм.
8. . Мови: , .
9. . Концепції та приклади. Мова .
10. . Приклади систем програмування "за правилами". Мова .
1. Пошук за ключем у масиві
1.1. Лінійний пошук Читачеві колись доводилося шукати своє прізвище в списках, надрукованих не в алфавітному порядку? Або уявіть собі словник на 100 тисяч слів, розташованих там без упорядкування за алфавітом. Потрібне слово шукати там доведеться довго. Дуже довго. Звичайно, якщо воно випадково не потрапило в самісінький початок. А якщо в кінець чи середину? А пошук слова в “нормальному” словнику займає чомусь кілька секунд незалежно від його розташування там. У цьому параграфі ми наведемо два алгоритми. Перший описує пошук “підряд” у невпорядкованій послідовності, другий – той пошук, до якого ми звикли, шукаючи слова в словниках. Замість слів розглянемо цілі значення елементів масиву. Тип значень може бути й іншим – головне, щоб їх можна було порівнювати. Нехай елементи масиву A[1], A[2], … , A[n] та змінна key (”ключ”) мають той самий тип T.
Пошук за ключем полягає в пошуку номера i такого, що A[i]= key. За відсутності такого номера результатом будемо вважати 0. Нехай діють означення const maxn = 1000; type T = integer; Indx = 1 maxn; (17.1) ArT = array [Indx] of T; Подамо розв’язання задачі функцією function srcseq ( var A : ArT; n : Indx; key : T) : integer; var i : integer; begin i := 0; while ( i A[2], то поміняємо їхні значення місцями. Потім порівняємо A[2] і A[3] та за необхідності обміняємо їхні значення. В результаті A[3] має найбільше значення серед A[1], A[2], A[3]. Продовжимо такі порівняння та обміни до кінця масиву: для всіх i від 1 до n-1 виконати якщо A[i]>A[i+1], то значення A[i] та A[i+1] обмінюються. Якщо значення елементів розглядати як розміри бульбашок, то ці порівняння та обміни схожі на те, як більші бульбашки відтісняють менших униз і спливають нагору. Тому цей метод називається бульбашковимсортуванням. У результаті найбільша бульбашка стає верхньою, тобто останній елемент A[n] має найбільше значення. Наприклад, послідовність значень перетвориться на . Далі почнемо все спочатку і перемістимо друге за величиною значення до передостаннього елемента A[n-1], перетворивши, наприклад, на . Потім третє за величиною значення перемістимо до A[n-2] тощо. Останній крок складається лише з порівняння A[1] A[i+1] then swap (A[i], A[i+1]) end Тут і далі процедура swap задає обмін значень своїх параметрів. Як бачимо, разом виконується (n-1)+(n-2)+…+1= nЧ (n-1)/2 порівнянь. Очевидно, що найбільше можливе число елементарних дій за цим способом прямо пропорційне кількості порівнянь. Тому час сортування масиву з n елементів у такий спосіб прямо пропорційний nЧ (n-1).
Задача 1. Якщо при черговому виконанні циклу із заголовком for i:=1 to k-1 do процедури Bubbles1 не було жодного обміну, то масив уже відсортовано. Тому подальші проходи масивом зайві. Переробити процедуру сортування так, щоб її виконання закінчувалося за відсортованого масиву
3.Сортування вибором здійснюється так. Проглянемо елементи масиву від першого до останнього, визначимо елемент із найменшим значенням, та обміняємо це значення з першим. Потім так само виберемо найменше значення серед A[2] .A[n] і обміняємо його зі значенням A[2], потім виберемо наступне найменше та обміняємо з A[3] тощо. Написати процедуру сортування вибором.
4. Сортування простими вставками дозволяє створити відсортований масив із значень, що читаються, наприклад, із клавіатури. Перше значення записується на перше місце, тобто присвоюється першому елементу масиву. Друге значення порівнюється з першим і, якщо перше менше, то воно “витісняється” на друге місце. Інакше нове значення йде на друге місце. Потім третє порівнюється з другим та записується або на третє місце, або витісняє значення з другого місця на третє та порівнюється з тим, що на першому місці. Наприклад, за читання послідовності значень 3, 1, 2 створюються послідовності значень у масиві , , . Узагалі, після читання k-1 елемента маємо відсортовану частину масиву A[1]A[2] .A[k-1]. Нове значення v порівнюємо зі значенням A[k-1]. Якщо A[k-1]>v, то значення A[k-1] зсуваємо на k-е місце. Після цього порівнюємо v зі значенням A[k-1]: якщо A[k-2]>v, то A[k-2] зсуваємо на (k-1)-е місце тощо. Коли за чергового порівняння A[i] m C1Ч G(n) Ј F(n) Ј C2Ч G(n). Така залежність між функціями позначається за допомогою знака “О”: F(n) = O(G(n)). Для задання порядку зростання інколи користуються іншим означенням: функція F(n) називається функцією порядку G(n) за великих n, якщо , де C>0, C 2 маємо 0.5Ч n2 a[c[rr]].y)or not( (tp.x>a[c[ll]].x)and(tp.x a[c[rr]].y)or not( (tp.x>a[c[ll]].x)and(tp.x.
Список використаної літератури:
1.
2.
3. Інформаційні системи. – К., 1989р.
4. Підручник Інформатика. – К., 1999р.

Внимание, отключите Adblock

Вы посетили наш сайт со включенным блокировщиком рекламы!
Ссылка для скачивания станет доступной сразу после отключения Adblock!

Скачать
Рефераты по информатике Зміст 1. Мови та системи програмування 2. Технологія програмування та проектування програмного забезпечення (ПЗ) 3. Пошук за ключем у масиві 4.
Оценок: 533 (Средняя 5 из 5)

Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.

© 2016 - 2022 BigEdu.ru