Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



ТА ЧАСОМ... 89




7.1. Загальна концепція та функції символьного введення-виведення. 89

7.2. Символьні функції 94

7.3. Рядкові функції 95

7.4. Числові функції 96

7.5. Функції роботи з датою та часом.. 97

Контрольні питання. 100

Завдання. 100

РОЗДІЛ 8. ВКАЗІВКИ, ПОСИЛАННЯ ТА МАСИВИ.. 104

8.1. Вказівки. 104

8.2. Посилання. 112

8.3. Одновимірні масиви. 113

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

8.5. Символьні масиви. 124

Контрольні питання. 129

Завдання. 129

РОЗДІЛ 9. РОБОТА З ФУНКЦІЯМИ.. 138

9.1. Засоби створення функцій. 138

9.2. Видимість змінних. 139

9.3. Параметри функції та передача значень. 143

9.4. Передача масивів в якості параметрів функцій. 146

9.5. Функції та вказівки. 149

9.6. Перевантаження та шаблони функцій. 153

Контрольні питання. 156

Завдання. 157

РОЗДІЛ 10. РЕКУРСИВНЕ ПРОГРАМУВАННЯ.. 160

10.1. Основні поняття рекурсії. Визначення факторіалу числа. 160

10.2. Приклади рекурсій. 160

Контрольні питання. 163

РОЗДІЛ 11. РОБОТА З ФАЙЛАМИ.. 164

11.1. Робота з текстовими та бінарними файлами. 164

11.2. Довільний доступ у файлах. 168

11.3. Файли потокового введення/виведення з використанням

структури FILE. 173

Контрольні питання. 178

Завдання. 179

РОЗДІЛ 12. СТРУКТУРИ.. 183

12.1. Загальна характеристика структури. 183

12.2. Масиви структур. 187

12.3. Використання масивів, як елементів структур. 189

Контрольні питання. 199

Завдання. 199

РОЗДІЛ 13. ОБ’ЄДНАННЯ ТА ІНШІ ТИПИ ДАНИХ. ОБРОБКА

ВИКЛЮЧНИХ СИТУАЦІЙ.. 200

13.1. Об’єднання. 200

13.2. Перелічені типи даних (enum). 201

13.3. Бітові поля. 201

13.4. Обробка виключних ситуацій. 202

Контрольні питання. 203

РОЗДІЛ 14. ДИНАМІЧНІ СТРУКТУРИ ДАНИХ.. 208

14.1. Стек. 208

14.2. Черга. 210

14.3. Лінійний список. 211

Контрольні питання. 215

Завдання. 216

РОЗДІЛ 15. ТИПОВІ МЕТОДИ СОРТУВАННЯ МАСИВІВ.. 218

15.1. Бульбашкове сортування (bubble sort). 218

15.2. Сортування за допомогою вибору (choice sort). 219

15.3. Сортування вставками (insert sort). 220

15.4. Сортування Шелла. 222

15.5. Швидке сортування (quick sort). 223

Контрольні питання. 225

Завдання. 226

РОЗДІЛ 16. ЧИСЕЛЬНЕ ДИФЕРЕНЦІЮВАННЯ ТА ІНТЕГРУВАННЯ.. 228



16.1. Методи правих та центральних різниць чисельного диференціювання. 228

16.2. Методи прямокутників, трапецій, Сімпсона (парабол)

чисельного інтегрування. 229

Контрольні питання. 232

Завдання. 232

РОЗДІЛ 17. ЧИСЕЛЬНІ МЕТОДИ РОЗВ’ЯЗАННЯ АЛГЕБРАЇЧНИХ

РІВНЯНЬ.. 236

17.1. Метод половинного ділення (дихотомія). 236

17.2. Метод Ньютона (метод дотичних). 237

17.3. Метод Рибакова. 240

Контрольні питання. 242

Завдання. 242

РОЗДІЛ 18. ЧИСЕЛЬНІ МЕТОДИ РОЗВ’ЯЗАННЯ СИСТЕМИ

ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ.. 244

18.1. Визначник. Дії над матрицями. Обчислення оберненої матриці 244

18.2. Метод оберненої матриці. 252

18.3. Метод Крамера. 253

18.4. Метод Гауса. 254

Контрольні питання. 257

Завдання. 258

СПИСОК ЛІТЕРАТУРИ.. 263

ДОДАТКИ.. 264


ВСТУП

 

Навчальний посібник з дисципліни «Основи програмування» призначений для поглибленого вивчення студентами основ класичного програмування на мові C++. В якості основ розглядається структурне програмування, яке є базисом для подальшого вивчення об’єктно-орієнтованого програмування. На конкретних прикладах розглянуті алгоритми та програми по основним розділам структурного програмування. У кожному розділі наводиться реалізація прикладів та виведення відповідних результатів. Значна увага приділяється структурам даних, обробці виключних ситуацій, родовим функціям, масивам та роботі з вказівками. У окремих розділах приведені типові алгоритми сортування даних, а також чисельні методи вирішення задач (чисельне диференціювання та інтегрування, чисельне вирішення рівнянь та систем рівнянь).



При реалізації прикладів мають місце декілька варіантів виконання певних операцій, на яких треба зупинитися. У цьому випадку всі варіанти окрім першого коментуються (символи коментарю "//" або "/*…*/").

Зміст навчального посібника охоплює наступні розділи:

1. Арифметичні основи обчислювальних машин.

2. Основи алгоритмізації обчислювальних процесів.

3. Основні відомості C++.

4. Введення-виведення даних.

5. Операції в С++.

6. Організація циклів.

7. Зовнішні пристрої та символьне введення/виведення. Рядкові, числові функції та функції роботи з датою та часом.

8. Вказівки, посилання та масиви.

9. Робота з функціями.

10. Рекурсивне програмування.

11. Робота з файлами.

12. Структури.

13. Об’єднання та інші типи даних. Обробка виключних ситуацій.

14. Динамічні структури даних.

15. Типові методи сортування масивів.

16. Чисельне диференціювання та інтегрування.

17. Чисельні методи розв’язання алгебраїчних рівнянь.

18. Чисельні методи розв’язання системи лінійних алгебраїчних рівнянь.

Приклади, приведені в посібнику розроблені для режиму Console (тип проекту Win32 Console Application) з використанням сучасного стандарту С++ (ISO/IEC 14882). Даний стандарт застосовується у мовах програмування Visual C++, починаючи з 1998 року. У Visual C++ 2002-2010 років підтримується тільки сучасний стандарт і лише в Visual C++ 1998 року підтримується попередній та сучасний стандарти програмування.



Відмінності між попереднім і сучасним стандартами програмування включають дві нові риси: змінився стиль оформлення заголовків (headers) і з'явилася інструкція namespace.

Заголовки (headers), які пов’язані з потоками введення/виведення даних пишуться без розширення h, всі ж інші заголовки залишаються без змін. Це такі хайдери, як <iostream>, <fstream>, <istream>, <ostream>, <iomanip> та інші хайдери, пов’язані з потоками. Коли в програму включається заголовок нового стилю, зміст цього заголовка знаходиться в просторі імен std. Простір імен (namespace) – це оголошувана область, необхідна для того, щоб уникнути конфліктів імен ідентифікаторів. Щоб простір імен std став видимим, необхідно використовувати наступну інструкцію: using namespace std.

Навчальний посібник адресований студентам, слухачам магістратури, аспірантам, викладачам. Може бути використаний як самовчитель.


Дата добавления: 2014-12-30; просмотров: 15; Нарушение авторских прав







lektsii.com - Лекции.Ком - 2014-2021 год. (0.017 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты