Введення  
   Завдання на курсову роботу являє собою програму, в якій потрібно: реалізувати структури даних, необхідні для виконання завдання курсового проекту, а також реалізація алгоритмів, наприклад, пошуку. Структура даних та алгоритми вибираються самостійно, залежно від підходу до вирішення даної курсової задачі. p align="justify"> Підставою для розробки програми є завдання до курсового проекту з предмету В«Структури та алгоритми комп'ютерної обробки данихВ». Отримана програма, повинна бути максимальна, спрямована на користувача та володіти такими ознаками, як легкість у використанні, зручний інтерфейс, швидкість роботи. p align="justify"> Потрібно створити програму, динамічно підсвічувати ключові слова з завантажуваного користувачем словника. 
  Виконаємо постановку задачі і наведемо умови, яким повинні задовольняти вхідні дані, а також вимоги до необхідного результату: 1) користувач може відкрити текстовий файл і підключити словник, потім почати роботу в програмі, 2) користувач може відразу підключити словник і почати роботу в програмі. 
  Згідно із завданням, мною була розроблена програма, що має простий для користувача інтерфейс, що реалізує динамічну підсвітку ключових слів, причому користувач може відкрити для використання довільний текстовий файл будь-якого розширення. Редагування словника проводиться в будь-якому текстовому редакторі. p align="justify"> Для підсвічування ключових слів необхідно вирішити такі завдання: 
  1) читання ключових слів з файлу словника; 
  2) відкриття, редагування та збереження файлів; 
 ) пошук і виділення ключових слів. 
				
				
				
				
			    Теоретичний матеріал  
   У програмі використовуються додаткові дані - такі як текст. Ці додаткові дані незручно зберігати у вихідному коді програми - вони зберігаються в окремих файлах. Саме для отримання доступу до цих даних і використовуються можливості введення/виведення мови C + +. p align="justify"> У C + + є два способи отримати доступ до файлів: потоки (streams) і доступ до файлів, успадкований від C. У програмі будуть використовуватися тільки потоки. Розглянемо один з важливих операторів - sizeof. p align="justify"> Оператор sizeof повертає розмір в байтах об'єкта або типу даних. Синтаксис його такий: 
   sizeof (type name); (object); object; 
   Результат має спеціальний тип size_t, який визначений як typedef в заголовному файлі cstddef. Ось приклад використання обох форм оператора sizeof: 
   # include ia [] = {0, 1, 2}; 
 // sizeof повертає розмір всього массіва_t array_size = sizeof ia; 
 // sizeof повертає ...