- •Міністерство освіти і науки україни
- •Розділ 1. Арифметичні основи обчислювальних машин
- •1.1. Позиційні системи числення. Переведення числа з однієї системи числення в іншу
- •1.2. Форма представлення чисел. Кодування чисел
- •1.3. Арифметичні операції над двійковими числами. Машинні одиниці інформації
- •Контрольні питання
- •Завдання
- •Розділ 2. Основи алгоритмізації обчислювальних процесів
- •2.1. Поняття і властивості алгоритму
- •2.2. Засоби представлення алгоритмів
- •2.3. Типи алгоритмічних процесів. Приклади
- •Контрольні питання
- •Завдання
- •3.1. Загальна характеристика програми
- •3.3. Кроки для створення та виконання програми
- •3.4. Змінні та константи
- •3.5. Директиви препроцесора
- •Контрольні питання
- •Розділ 4. Введення-виведення даних
- •4.1. Об’єкт виведення даних cout
- •4.2. Функція виведення даних printf
- •4.3. Об’єкт введення даних cin
- •4.4. Функція введення даних scanf
- •Контрольні питання
- •5.2. Операції відношення
- •5.3. Логічні операції
- •5.4. Додаткові операції
- •5.5. Порозрядні операції
- •Контрольні питання
- •Завдання Лінійний обчислювальний процес
- •1. Визначити значення функції y
- •2. Геометричні завдання
- •Розгалужений обчислювальний процес
- •1. Визначити значення функції y
- •3. Перевірити, чи міститься точка з заданими координатами усередині заштрихованої області.
- •Розділ 6. Організація циклів
- •6.1. Організація арифметичних циклів з використанням оператору for
- •6.2. Організація ітераційних циклів з передумовою while та післяумовою do...While
- •6.3. Оператори switch та goto
- •Контрольні питання
- •Завдання Арифметичний цикл
- •Вкладені цикли
- •Ітераційний цикл
- •Суміщення розгалуженого та циклічного процесів
- •Розділ 7. Зовнішні пристрої та символьне введення/виведення. Рядкові, числові функції та функції роботи з датою та часом
- •7.1. Загальна концепція та функції символьного введення-виведення
- •7.2. Символьні функції
- •7.3. Рядкові функції
- •7.4. Числові функції
- •7.5. Функції роботи з датою та часом
- •Контрольні питання
- •Завдання
- •Розділ 8. Вказівки, посилання та масиви
- •8.1. Вказівки
- •8.2. Посилання
- •8.3. Одновимірні масиви
- •8.4. Багатовимірні масиви
- •8.5. Символьні масиви
- •Контрольні питання
- •Завдання Одновимірні масиви
- •Двовимірні масиви
- •Розділ 9. Робота з функціями
- •9.1. Засоби створення функцій
- •9.2. Видимість змінних
- •9.3. Параметри функції та передача значень
- •9.4. Передача масивів в якості параметрів функцій
- •9.5. Функції та вказівки
- •9.6. Перевантаження та шаблони функцій
- •Контрольні питання
- •Завдання
- •Розділ 10. Рекурсивне програмування
- •10.1. Основні поняття рекурсії. Визначення факторіалу числа
- •10.2. Приклади рекурсій
- •Контрольні питання
- •Розділ 11. Робота з файлами
- •11.1. Робота з текстовими та бінарними файлами
- •Можливі режими доступу
- •11.2. Довільний доступ у файлах
- •11.3. Файли потокового введення/виведення з використанням структури file.
- •Контрольні питання
- •Завдання
- •Розділ 12. Структури
- •12.1. Загальна характеристика структури
- •12.2. Масиви структур
- •12.3. Використання масивів, як елементів структур
- •3. Робота зі структурами є універсальною, передбачено додавання записів до файлу (флаг ios:app). Для підрахунку кількості структур на диску приведемо наступні рядки програми:
- •Контрольні питання
- •Завдання
- •Розділ 13. Об’єднання та інші типи даних. Обробка виключних ситуацій
- •13.1. Об’єднання
- •13.2. Перелічені типи даних (enum)
- •13.3. Бітові поля
- •13.4. Обробка виключних ситуацій
- •Контрольні питання
- •Розділ 14. Динамічні структури даних
- •14.1. Стек
- •14.2. Черга
- •14.3. Лінійний список
- •Контрольні питання
- •Завдання
- •Розділ 15. Типові методи сортування масивів
- •15.1. Бульбашкове сортування (bubble sort)
- •15.2. Сортування за допомогою вибору (choice sort)
- •15.3. Сортування вставками (insert sort)
- •15.4. Сортування Шелла
- •15.5. Швидке сортування (quick sort)
- •Контрольні питання
- •Завдання
- •Розділ 16. Чисельне диференціювання та інтегрування
- •16.1. Методи правих та центральних різниць чисельного диференціювання
- •16.2. Методи прямокутників, трапецій, Сімпсона (парабол) чисельного інтегрування
- •Контрольні питання
- •Завдання Чисельне диференціювання
- •Чисельне інтегрування
- •Розділ 17. Чисельні методи розв’язання алгебраїчних рівнянь
- •17.1. Метод половинного ділення (дихотомія)
- •17.2. Метод Ньютона (метод дотичних)
- •17.3. Метод Рибакова
- •Контрольні питання
- •Завдання
- •Розділ 18. Чисельні методи розв’язання системи лінійних алгебраїчних рівнянь
- •18.1. Визначник. Дії над матрицями. Обчислення оберненої матриці
- •18.2. Метод оберненої матриці.
- •18.3. Метод Крамера
- •18.4. Метод Гауса
- •Контрольні питання
- •Завдання
- •1. Розв’язати систему алгебраїчних рівнянь.
- •2. Обчислити добуток матриць.
- •3. Розв’язати матричні рівняння.
- •Список літератури
Контрольні питання
Як вивести дані на будь-який пристрій, наприклад принтер?
Які функції символьного введення/виведення ви знаєте?
Буферезовані та небуферезовані функції введення даних. Головні відмінності.
Які символьні функції для перевірки введеного значення вам відомі?
Які існують функції перетворення символів?
Перелічите основні рядкові функції.
Які ви знаєте функції перетворення рядків у числа?
Перелічите основні числові функції.
Перелічите функції генерації випадкових чисел.
Перелічите функції роботи з датою та часом.
Призначення структури tm.
Призначення структури _timeb.
Завдання
Скласти програму з використанням символьних функцій.
Приклад виконання завдання.
Підрахувати кількість слів у тексті та сформувати масив заданих слів.
Код програми має наступний вигляд:
#include <iostream>
using namespace std;
void main()
{
char s[255];
char mas_s[50][255];
char*f;
int i,kol;
printf("Введите текст:\n");
gets(s);
kol = 0;
f = strtok(s," ");
while(f)
{
strcpy(mas_s[kol],f);
kol++;
f = strtok(0," ");
}
cout<<"\nkol = "<<kol;
cout<<"\n\n";
//вывод сформированного массива слов
for(i = 0;i < kol;i++)
cout<<mas_s[i]<<"\n";
}
У даному прикладі слід звернути увагу на символьну функцію strtok. Дана функція дозволяє виокремлювати окремі елементи рядку, розділені довільними символами. У нашому випадку треба виокремити слова, які можуть бути розділені довільною кількістю пропусків « ». Для першого звертання у функцію strtok передається рядок s:
f = strtok(s," ");
Вказівка f повертає вказівку на перше слово у рядку s, розділене пропусками, “ ”. Для того щоб виокремити інші слова в функцію strtok у якості першого параметру необхідно передати 0. Це означає, що надалі в рядку s будуть виокремлюватись слова доти, поки вказівка f не прийме нульового значення. Механізм є універсальним та призначений для виокремлення інформації на основі довільного шаблону. Виокремлення слів та запис їх до масиву відбувається наступним чином:
while(f)
{
strcpy(mas_s[kol],f);
kol++;
f = strtok(0," ");
}
Варіанти індивідуальних завдань
У заданому тексті замінити слово А на слово В (довжини слів не співпадають).
У заданому тексті визначити кількість слів.
Маємо відомість, яка складається із 10 прізвищ. Знайти і надрукувати порядкові номера прізвищ, які задаються.
У слові “лірика” після кожного складу вставити склад “ма”.
У тексті забрати зайві пропуски між словами, залишивши по одному.
У тексті вставити між словами замість одного два пропуски.
У заданому слові переставити літери в алфавітному порядку.
У текстовій змінній "71D523СЕ8" поставити числа у порядку зменшення.
Розділити заданий текст на рядки. У формі розділення рядків використаний символ %.
У виразі "МІСЯЧНИЙ ШЛЯХ" переставити місцями слова.
Дано слово "АЛГОРИТМ". Вивести його на друк у зворотному порядку.
Скільки разів у тексті зустрічається задане слово? (Слова розділені пропусками).
У слові "ЕЛЕКТРОНІКА" переставити літери у порядку зворотному алфавіту.
Надрукувати найдовше слово із заданого тексту “Ціль статистики зосереджується в наданні фактів у найбільш стислій формі”.
У текстовій змінній "2С35ІА4" представити числа у порядку зростання.
Існує відомість, яка складається із 10 прізвищ. Вивести на друк цю відомість у алфавітному порядку.
В аналізуючому слові всі голосні літери видалити та на їх місце поставити пропуск. Вивести на дисплей початкове слово та результат перетворень.
У слові "ЛІТЕРАТУРА" кожну голосну літеру виділити символом ".
У заданому слові змінити місцями першу і останню літери. Вивести на екран дисплея початкове слово і результат.
У заданому тексті видалити частину тексту , яка взята в дужки. (Разом з дужками).
Визначити процент літери "А" у слові "ЛІТЕРАТУРА".
У текстовій змінній "2С35ІА4" поставити числа у порядку зростання.
У заданому слові "БІЗНЕСМЕН" змінити місцями першу і останню літери.
Визначити, які символи і скільки разів зустрічаються у заданому слові "АЛЬТЕРНАТИВА".
Розшифрувати слово "НЕМСЕНЗІБ", переставити літери навпаки.
У слові "КОМУНІКАЦІЯ" розрахувати кількість приголосних літер.
Визначити літеру, на яку починається більше всього слів у тексті "Практикум починається на першому курсі , паралельно з читанням загального курсу".
Знайти найдовше слово заданого речення “Книга призначена для використання студентами та керівниками”.
У слові "РЕЧЕННЯ" усі приголосні літери замінити цифрами 1,2,3…
Існує відомість, яка складається з 10 прізвищ. Порахувати, скільки прізвищ закінчується на літеру "О".
У слові "ІНІЦІАТОР" після кожної голосної вставити таку ж літеру.
У слові "АЕРОМЕХАНІКА" розрахувати кількість голосних літер.
У слові "ЮРИСДИКЦІЯ" знайти і вивести на друк індекс останньої літери И.
Існує відомість, яка складається з 10 прізвищ. Вивести на друк цю відомість у порядку зворотному алфавіту.
У заданому слові визначити кількість літер А і замінити на літеру М.