Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
самост1_1new_druk!!!.doc
Скачиваний:
22
Добавлен:
13.11.2019
Размер:
1.61 Mб
Скачать

ЗМІСТ

Вступ …………………………………………………………………………………………….6

Розділ І. Основи алгоритмізації

Тема. Поняття архітектури фон Неймана..……………………………………………......…...7

Поняття архітектури фон Неймана ….............................................................................7

Принцип використання двійкової системи числення ………………………………7

Принцип програмного керування роботою комп'ютера ………………………………..8

Принцип збереження програм у пам'яті комп'ютера ……………………………….8

Принцип адресності пам'яті ………………………………………………………...9

Архітектура комп'ютерів фон Неймана …………………………………………..9

Тема. Алгоритм і його властивості ……………………………………………………......….13

Основні етапи розв’язування прикладних задач з використанням ЕОМ …………..13

Навчальна алгоритмічна мова (НАМ) ........................................................................15

Основні вказівки НАМ ...................................................................................................16

Величини ..........................................................................................................................18

Основні характеристики величин ..................................................................................18

Вказівка присвоювання ..................................................................................................18

Тема. Базові структури алгоритмів…………………………………………………………...20

Рекурентні алгоритми .....................................................................................................20

Алгоритми пошуку .........................................................................................................21

Алгоритми сортування ...................................................................................................22

Діалогові алгоритми .......................................................................................................25

Розділ ІІ. Мова програмування Паскаль

Тема. Методології розробки програм ………………………………………………………..27

Використання модулів у Паскаль …………………………………………………….28

Основні концепції об’єктно-орієнтованої методології програмування ……………32

Процедурно-орієнтоване програмування …………………………………………….33

Тема. Загальні відомості про мову Паскаль ...........................................................................39

Поняття програми………………………………………………………………………39

Словник мови ..................................................................................................................40

Коментар ..........................................................................................................................40

Розділ опису підпрограм ................................................................................................41

Розділ операторів ............................................................................................................41

Правила запису операторів ............................................................................................41

Вирази. Пріоритет операцій……………………………………………………………41

Контроль за правильністю використання операцій введення-виведення ………….42

Тема. Опис стандартних типів ..................................................................................................42

Порядкові типи ................................................................................................................42

Перелічувані типи ...........................................................................................................43

Інтервальні типи ..............................................................................................................44

Перетворення типів .........................................................................................................44

Тема. Циклічні конструкції .......................................................................................................45

Вкладені цикли ................................................................................................................45

Приклади ітераційних циклів ........................................................................................46

Тема. Табличні величини. Масиви даних ...............................................................................49

Багатовимірні масиви ....................................................................................................49

Тема. Рядкові типи ....................................................................................................................50

Рядкові і символьні типи ...............................................................................................50

Відкриті рядкові параметри ..........................................................................................50

Тема. Підпрограми ................................................................................................................... 51

Рекурсивні підпрограми ................................................................................................51

Перетворення типів змінних і перетворення значень ………………………………51

Відкриті параметри-масиви …………………………………………………………..52

Тема. Модуль Graph. Графічний режим .................................................................................54

Анімація засобами Turbo Pascal ....................................................................................54

Створення графічних примітивів ..................................................................................60

Процедури керування звуковими сигналами ..............................................................62

Тема. Файловий тип ..................................................................................................................64

Нетиповані файли ...........................................................................................................64

Тема. Вказівники .......................................................................................................................65

Вказівники .......................................................................................................................65

Опис типу вказівник .......................................................................................................66

Розіменування вказівників .............................................................................................66

Присвоєння вказівникам адреси статичних змінних ...................................................67

Створення динамічних змінних .....................................................................................67

Списки ..............................................................................................................................68

Приклади програм ...........................................................................................................70

Тема. Тип запис ………………………………………………………………………………..73

Опис типу запис ………………………………………………………………………..73

Записи з варіантною частиною ……………………………………………………….75

Оператор приєднання With. Використання вказівки with у записах ……………….76

Тема. Множини ………………………………………………………………………………..77

Опис множинного типу ………………………………………………………………..78

Конструктори множин …………………………………………………………………78

Операції над множинами ………………………………………………………………78

Константи множинного типу ………………………………………………………….79

Приклади використання типу множина ………………………………………………80

Розділ ІІІ. Загальні відомості про С++. Основні конструкції мови програмування С++.

Тема. Потоки. Введення-виведення даних …………………………………………………..82

Перенаправлення потоків введення-виведення у MS DOS ………………………….82

Тема. Адреси даних. Вказівники. Динамічна пам’ять ………………………………………82

Адреси даних …………………………………………………………………………...82

Вказівники ……………………………………………………………………………...83

Динамічна пам’ять. Принцип динамічної організації пам’яті ………………………84

Тема. Розгалуження....................................................................................................................85

Побітові логічні операції та операції зсуву …………………………………………..85

Тема. Основні відомості по структурному програмуванню...................................................86

Проектування алгоритму методом покрокової деталізації ………………………….86

Структурний підхід до побудови алгоритмів ………………………………………..86

Програмні модулі в С++ ……………………………………………………………….87

Розділ ІV. Програмування мовою С++.

Тема. Функції ……………………………………………………………………………….….90

Посилання……………………………………………………………………………….90

Класи пам’яті …………………………………………………………………………...91

Перевантаження функцій………………………………………………………………93

Шаблони функцій………………………………………………………………………94

Спеціалізація шаблонів функцій………………………………………………………95

Шаблони класів. Недоліки шаблонів………………………………………………….96

Тема. Масиви даних..................................................................................................................102

Функції malloc, calloc, free при роботі з масивами………………………………….102

Алгоритми сортування. Метод вставки та інші при сортуванні масивів………….105

Тема. Рядки в С++ ...................................................................................................................109

Реверс рядків ………………………………………………………………………….109

Функції перетворення типів………………………………………………………….109

Тема. Форматування потоків ..................................................................................................112

Форматування потоків…………………….…………………………………………..112

Неформатоване введення-виведення………………………………………………...117

Помилки потоків………………………………………………………………………117

Переадресація введення-виведення………………………………………………….120

Тема. Графічні можливості мови програмування С++ .......................................................121

Формування меню в графічному режимі. Створення графічних примітивів в С++ …..…121

Список літератури ..................................................................................................................126

Вступ

Самостійну роботу ми розглядаємо як важливий фактор засвоєння навчального матеріалу, про що свідчать психолого-педагогiчнi дослідження. Метою самостійної роботи є формування самостiйностi студента, його вмінь, знань, навичок, що здійснюється опосередковано через зміст i методи всіх видів учбових занять.

Самостійна робота – це робота студентів яка планується та виконується по завданню і при методичному керівництві викладача, але без його безпосередньої участі. Самостійна робота студентів необхідна не тільки для оволодіння певною дисципліною, але й для формування навичок самостійної роботи взагалі, в учбовій, науковій, професійній діяльності, здібності приймати на себе відповідальність, самостійно вирішувати проблему, знаходити конструктивні рішення, вихід із кризової ситуації і т.д. Незалежно від спеціалізації і характеру роботи, будь-який починаючий спеціаліст повинен мати фундаментальні знання, професійні вміння і навички діяльності свого профілю, досвід творчої і досвідної діяльності по рішенню нових проблем, досвідом соціально-оціночної діяльності. Дві останні складові освіти формуються як раз в процесі самостійної роботи студентів.

Самостійна робота вирішує задачі всіх видів учбової роботи. Ніякі знання, якщо вони не підкріпленні самостійною діяльністю, не можуть стати справжнім надбанням людини. Крім того, самостійна робота має виховне значення: вона формує самостійність не тільки як сукупність вмінь та навичок, але й як рису характеру, яка грає суттєву роль у структурі особистості сучасного спеціаліста вищої кваліфікації.

Самостійна робота студентів систематично контролюється викладачем. Основою для самостійної роботи служить науково-теоретичний курс, комплекс отриманих студентами знань. При видачі завдань студенти отримують інструкції по їх виконанню, методичні вказівки, посібники, перелік необхідної літератури.

Самостійна робота сприяє:

  • поглибленню і розширенню знань;

  • формування інтересу до пізнавальної діяльності;

  • оволодінню прийомами процесу пізнання;

  • розвитку пізнавальних здібностей.

Тому вона стає головним резервом підвищення ефективності підготовки спеціалістів.

Розділ і. Вступ. Основи алгоритмізації Тема: Поняття архітектури комп’ютера фон Неймана.

Поняття архітектури комп’ютера.

Поняття архітектури обчислювальних систем є одним з основних в інформатиці. Уперше термін «архітектура комп'ютера» був введений фірмою IBM при розробці обчислювальних систем серії IBM 360 і застосований до тих засобів, які може використовувати програміст під час написання програм на рівні машинних команд.

Під цим терміном розуміли структуру комп'ютера з погляду програміста, так звану логічну архітектуру, що є поняттям архітектури у вузькому розумінні. Воно охоплює формати команд, форми зображення даних, методи адресації й управлін­ня операціями введення–виведення. При цьому з розгляду випадають такі аспекти, як фізична організація пристроїв комп'ютера, ієрархія пам'яті, методи паралель­ної обробки інформації, а також багато-багато інших, які часто узагальнюються терміном «організація комп'ютера» чи структурна організація комп'ютера.

Далі ми використовуватимемо термін «архітектура», розуміючи під цим понят­тям логічну структуру у сукупності з фізичною структурною організацією.

В основу архітектури більшості сучасних комп'ютерів покладено принципи, які ще 1946 року були сформульовані у звіті «Попереднє обговорення логічного конструювання електронного обчислювального пристрою» Джоном фон Нейманом і його колегами Г. Голдстайном та А. Берксом. Усі комп'ютери, побудовані згідно з цими принципами, тепер відомі як комп'ютери з фоннейманівською архітектурою.

Основні принципи архітектури фон Неймана такі:

  • використання двійкової системи числення для кодування інформації у комп'ютері;

  • програмне керування роботою комп'ютера;

  • збереження програм у пам'яті комп'ютера;

  • адресація пам'яті.

Принцип використання двійкової системи числення

Інформація (команди і дані) у комп'ютері кодуються у двійковій системі числення. Система числення – це система позначення чисел. У повсякденній практиці використовується десяткова система, в якій числа записуються за допомогою де­сяти арабських цифр 0, і, 2, ..., 9. У двійковій системі числення є тільки дві циф­ри: 0 та і, Зручність використання двійкової системи в обчислювальній техніці обумовлена тим, що електронні перемикачі можуть перебувати тільки в одному із двох станів: увімкненому чи вимкненому. Ці стани можна кодувати двома цифра­ми: одиницею або нулем. Так само в двох станах у кожен окремий момент часу може перебувати канал передачі даних: «рівень напруги високий» або «рівень на­пруги низький». Крім того, логіка висловлень є двійковою логікою: будь-яке ви­словлення в кожен момент є істинним або хибним. Якщо висловлення є істин­ним, йому відповідає значення 1, якщо хибне – значення 0.

Одна двійкова цифра називається бітом (від англ. binary digit – двійкова цифра). За допомогою одного біта можна закодувати два інформаційних повідом­лення, що умовно позначаються символами «0» та «1». Із двох бітів можна утво­рити коди чотирьох інформаційних повідомлень: «00», «01», «10» та «11»; із трьох бітів – восьми. У загальному випадку за допомогою n бітів можна закодувати 2n інформаційних повідомлень.

Послідовність, що складається з восьми бітів, у сучасній обчислювальній тех­ніці прийнято називати байтом. За допомогою одного байта можна закодувати 28 = 256 різних повідомлень і зобразити, наприклад, значення цілих чисел від 0 до 255. Ці самі повідомлення можна розглядати і як числа від -128 до 127 (їх кількість теж дорівнює 256), символи, логічні значення тощо.

Байт є одиницею обсягу пам'яті. Для позначення тисяч та мільйонів байтів використовуються такі одиниці, як кілобайт (1 Кбайт = 210 = 1 024 байт), мегабайт (1 Мбайт - 220 = 1 048 576 байт) і гігабайт (1 Гбайт = 230 - 1 073 741 824 байт).

Послідовностями двійкових цифр можна кодувати не лише числа, а й довільні інформаційні повідомлення. Зокрема, загальноприйнята система кодування ASCII ставить коди у відповідність 256 символам. Наприклад, латинській літері «а» від­повідає код 9710= 1100001, а символу «@» – код 6410= 10000002. Складніші сис­теми кодування дають можливість закодувати зображення, звук тощо.