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

Результати виконання програми

1.3 Варіанти завдань

  1. Зчитуючи з текстового файла цілі числа, скласти з кожної пари прочитаних чисел комплексне число, вивести на екран послідовність комплексних чисел з вирівнюванням по стовпцям із записом результатів у бінарний та текстовий файли.

  2. Визначити структуру, елементами якої є ім’я робітника та його прибуток. Введені з клавіатури значення імен та прибутків записати у бінарний файл, використовуючи операції <<, >>. Зробити копію файла, надрукувати його вміст із форматуванням по ширині поля виведення, цифрові дані подати у різних системах числення.

  3. Визначити структуру, елементами якої є дані про студента (прізвище, середній бал, стипендія). Ввести дані з клавіатури, записати у бінарний та текстовий файли. Під час запису даних у текстовий файл здійснити їх форматування за допомогою параметризованих маніпуляторів (заповнювачі, точність, ширина поля), простих маніпуляторів (системи обчислення, ігнорування пробілів), прапорців форматування (вирівнювання даних, переведення літер у верхній регістр тощо).

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

  5. Використовуючи методи та маніпулятори класів потоків, створити бінарний файл, що містить дані про прізвище студента, місто, назву інституту, дату вступу. Здійснити пошук у файлі потрібних даних за запитом користувача, замінити на вимогу користувача потрібну дані. Результати пошуку виводити на екран з форматуванням виведення по ширині, вирівнюванні, використати заповнювачі, точність подання числових даних тощо.

  6. За допомогою програми створити текстовий файл, в якому цілі числа представлені у шістнадцятковій системі числення та упорядковані за зростанням, дійсні  за спаданням значень у десятковій системі. Вивести вміст файла та визначити його розмір. Під час виведення значень на екран здійснити форматування у вигляді вирівнювання на задану з клавіатури ширину поля виведення, з поданням указаної користувачем точності зображення чисел. Виведення подати у вигляді "ім’я змінної=значення".

  7. Створити текстовий файл, що містить код мовою С++, вводячи рядки коду з клавіатури. Виконуючи команду system ("notepad.exe специфікація файла"),  вивести вміст файла у вікні текстового редактора Notepad. За допомогою генератора випадкових чисел генерувати номери рядків та коди символів, що виводитимуться на екран. Подати зображення на екрані у вигляді таблиці, що містить колонку номерів рядків та колонку символів, що вибрані з цього рядка відповідно до згенерованих кодів. Записати до бінарного файла символи, коди яких згенеровані.

  8. Використовуючи класи потоків, зчитати з текстового файла код мовою С/С++, підрахувати кількість викликів кожної з функцій та визначити їх адреси в стеку (у шістнадцятковій системі). Використовуючи структуру, полями якої є імена функцій, кількість їх викликів у програмі, адреси у стеку під час їх виклику, зберігти значення полів. Результати вивести на екран та у тестовий файл, з форматування виведення.

  9. Використовуючи методи та маніпулятори класів потоків, розробити програму, що здійснює пошук у коді мовою Паскаль рядків, в яких зустрічаються ідентифікатори змінних типу integer. Вивести код програми мовою Паскаль у вікні Notepad. Для цього виконати команду system("notepad.exe специфікація файла") . На екрані подати результати пошуку у вигляді номерів рядків коду, в яких знайдено потрібні змінні, та самі змінні. Використати форматуванням по ширині , вирівнюванні тощо.

  10. Використовуючи методи та маніпулятори класів потоків, розробити програму, що здійснює пошук у коді мовою C/C++ рядків, в яких зустрічаються ідентифікатори змінних типу float в операторах циклу for. Вивести код програми мовою C/C++ у вікні Notepad. Для цього виконати команду system("notepad.exe специфікація файла"). На екрані подати результати пошуку у рядків коду, в яких знайдено потрібні змінні. Використати форматуванням по ширині, вирівнюванні тощо.

  11. Розробити структуру, поля котрої позначають символ та його ASCII код. Зчитати з текстового файлу код мовою С/С++. Підрахувати кількість кожного символу. Вивести на екран у вигляді таблиці символ, що зчитаний з коду, його ASCII код у десятковій, восьмирічній, шістнадцятковій системах числення з вирівнюванням по колонках заданої ширини та кількість його повторень.

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

  13. Створити структуру, що містить поля про викладача (прізвище, назва дисципліни) та студента (логін, пароль та середній бал з дисципліни). Використовуючи класи потоків, ввести дані у бінарний файл, перевіряючи стан потоку введення. Читаючи бінарний файл, переписати дані у текстовий файл із форматуванням тестових та цифрових даних (вирівнювання, точність, системи числення, верхній регістр тощо). У разі помилок створення та читання файлів визначити стан потоків з виведенням на екран відповідних повідомлень.

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

  15. Розробити маніпулятори ігнорування лідируючих пробілів та інших розділових символів у рядках, що вводяться. Символи, що ігноруються мають визначатися користувачем під час роботи програми. Визначити маніпулятор binary з одним параметром, що ідентифікує число, яке слід зобразити у двійковій системі числення. Наприклад: binary(9) дає результат 10012.

  16. Використовуючи класи fstream, ofstream, ifstream створити текстовий файл, вивести його вміст на екран, перевірити на наявність помилок при відкритті, переписати дані у новий файл, замінивши символи верхнього регістру на символи нижнього регістру і навпаки, визначити обсяг файлу та вивести відповідне значення у різних системах числення та форматах зображення чисел.

  17. Використовуючи методи та маніпулятори класів потоків, створити текстовий файл, якій містить дати та події, що в ці дати здійснилися. Дати задати у форматі «ХХ.ХХ.ХХ». Здійснити пошук дат, в які відбувалися задані з клавіатури події. Вивести у інший тестовий файл знайдені дати та події з дописуванням виконавців, що їх здійснили. Зобразити на екрані у вигляді таблиці вміст файлів з вирівнюванням по стовпцям та іншими можливостями форматування.

  18. Використовуючи методи та маніпулятори класів потоків, створити текстовий файл, рядки якого являють речення, що можуть закінчуватися на різних рядках. Здійснити форматування тексту, що зчитаний з текстового файла, зобразивши на екрані довільну кількість колонок (за аналогією з Word, переведення курсору на нові рядки, використання перенесення слів тощо). Отримані результаті форматування записати у новий тестовий файл.

  19. Використовуючи методи та маніпулятори класів потоків, створити текстовий файл, що містить динамічно створені рядки (за допомогою оператора new). Надрукувати вміст файла з форматуванням рядків з вирівнюванням по ширині поля виведення, з використанням різних регістрів клавіатури. Реалізувати сортування рядків за двома критеріями: за алфавітом та за довжиною рядка. Результати записати у новий текстовий файл.

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

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

  22. Використовуючи методи та маніпулятори класів потоків, розробити програму, яка зчитує з клавіатури дані про автомобілі (марка, ціна, вартість страхового полісу). Кількість автомобілів задає користувач. Програма записує введені дані у бінарний файл, зчитує їх для виведення на екран із форматуванням по колонках, числові дані подаються відповідно до формату, що задається користувачем з клавіатури (система числення, вирівнювання, заповнювачі пробілів, точність, формати зображення – експоненціальний та фіксований, тощо).

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

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

  25. Використовуючи класи потоків, перетворити вхідний текстовий файл так, щоб кожні його п’ять слів були переупорядковані за зразком: 1 2 3 4 5  3 2 4 1 5. Якщо в кінці файла отримали менше п’яти слів, то їх порядок залишити незмінним.

  26. Розробити програму, в якій створюється бінарний файл цілих десяткових чисел, що згенеровані генератором випадкових чисел. Використовуючи маніпулятори перетворення десяткових чисел у восьмирічний і шістнадцятковій формат, перетворити парні числа вхідного бінарного файла у восьмирічну систему, непарні - у шістнадцяткову. Результати перетворення записати у текстовий файл форматі "десяткове число >восьмирічне or шістнадцяткове".

  27. Створити програму, яка одночасно зчитує дані з потоку та здійснює контроль їх введення. Дані представляють телефонний код, який має такий формат: (код місцевості) ХХХ-ХХ-ХХ. Якщо під час введення зчитується недійсний код місцевості, неправильна кількість цифр, невірні символи тощо, слід виводити повідомлення про тип та зміст помилки.