
- •Іі семестр Лабораторна робота №1
- •Запишіть ланцюг рекурсивних викликів та поясніть роботу заданої рекурсивної функції:
- •Запишіть ланцюг рекурсивних викликів та поясніть роботу заданої рекурсивної функції:
- •Лабораторна робота №2
- •Лабораторна робота №3
- •Лабораторна робота №4
- •Лабораторна робота № 5 Тема: Вказівники на функції. Масиви вказівників на функції. Функції з довільним числом параметрів.
- •Лабораторна робота № 6 Тема: Динамічний розподіл пам’яті. Динамічні одновимірні масиви.
- •Лабораторна робота № 7-8
- •Лабораторна робота № 9
- •Лабораторна робота № 10
- •Лабораторна робота № 11
- •Лабораторна робота № 12
- •Лабораторна робота № 13
- •Лабораторна робота № 14-16
Лабораторна робота № 10
Тема: Обробка С-рядків. Використання бібліотечних функцій обробки рядків.
Мета: Формування вмінь і навичок обробки рядків у С, використання рядкових функцій бібліотеки С/С++
Контрольні запитання:
Функції копіювання рядка.
Функції об’єднання рядків.
Як виконати правильне порівняння рядків у С? Функції порівняння рядків.
Пошукові функції.
Функції перетворення рядка у число і навпаки.
Напишіть оператор, який виведе число N у 16-вій системі числення.
Функція розбиття на лексеми. Чи змінює функція рядок? Якщо так, то яким чином?
Як оголосити масив слів? Запропонуйте декілька варіантів. Відповідь обґрунтуйте
Завдання 1 Створити програму для виконання задачі згідно варіанту. При розв’язанні задачі скористатися бібліотечними функціями.
Вимоги до виконання завдання: рядок створювати у динамічній пам’яті.
Варіанти:
Видалити у рядку всі входження заданого фрагмента.
Дано речення, слово А та слово В. Слова у речення розділені пропусками. Замінити слово А на слово В. Слова А та В можуть мати різну довжину.
Вводиться послідовність слів до зустрічі слова ‘stop’. Утворити речення, у якому розмістити слова, що складаються більше як з 5 букв. Слова у речення розділити комами.
Дано речення. Замінити у реченні не більше як 5 перших входжень ‘.’ на ‘;’.
Видалити з рядка всі цифри..
Замінити у рядку кожну цифру символом ’+’.
Дано речення, слово А та слово В. Слова у речення розділені пропусками. Замінити слово А на слово В. Слова А та В мають однакову довжину.
Дано речення. Замінити у реченні не більше як 7 останніх входжень ‘А’ на ‘а’.
Видалити всі цифри у рядку.
Після кожної цифри у рядку вставити знак ‘$’.
Замінити у рядку ‘.’ на ‘…’.
Вводиться послідовність слів до зустрічі слова ‘end’. Утворити текст, у якому розмістити слова, що мають подвоєння букв. Слова у тексті розділити пропусками чи комами.
Замінити у рядку ‘…’ на ‘.’.
Завдання 2 Створити програму для виконання задачі згідно варіанту.
Вимоги до виконання завдання:
при розв’язанні задачі скористатися функцєю strtok().
утворити масив слів
Варіанти:
Дано текст. Вивести слова тексту, упорядковані у алфавітному порядку по перших k літерах слів.
.Дано текст та деяке слово А. Визначити кількість входжень заданого слова у текст.
Дано текст. Вивести слова тексту, упорядковані за спаданням довжин слів.
Дано текст. Вивести слова тексту, упорядковані в алфавітному порядку без врахуванням регістру символів Дано текст. Вивести слова тексту, що складаються з великих літер та порахувати їх кількість.
Дано текст. Вивести слова тексту, що містять подвоєння букв та порахувати їх кількість.
Дано текст. Вивести слова тексту, що містять більше 2-х голосних та порахувати їх кількість.
Дано текст та деяке слово А. Визначити слова тексту , що є подібними заданому слову А. Слова називають подібними, якщо вилученням однієї букви отримуються однакові слова. Наприклад, слова ’spot’ та ’sport’ є подібними.
Дано текст. Знайти перше та останнє по алфавіту слова.
Дано текст. Знайти найдовше та найкоротше слово.
Дано текст. Знайти найдовше та найкоротше слово серед слів, що містять цифри.
Дано текст. Вивести слова тексту, упорядковані в алфавітному порядку з врахуванням регістру символів.
Дано текст. Знайти кількість слів, що починаються з великої букви та вивести їх на екран.
Завдання 3. Скласти програму.
Вимоги до виконання завдання:
Використати бібліотечні функції на вибір atoi() , atof(),strpbrk(), strcspn() strtod() strtol().
Варіанти:
Дано вираз вигляду max(число , число, число). Знайти більше з трьох чисел Дано ціле число N. Знайти кількість 1 у двійковому записі числа N. Використати бібліотечну функцію.
Дано ціле число N. Знайти кількість цифр А - F у 16-ому записі числа N.
Дано вираз без дужок, у якому зустрічаються операції + та -. Обчислити значення виразу. Наприклад, для виразу 11 + 100 – 5 повинні отримати 106.
Дано вираз без дужок, у якому зустрічаються операції * та /. Обчислити значення виразу і. Наприклад, для виразу 2 * 100 / 5 повинні отримати 40.
Дано вираз вигляду функція(число)+ функція(число) . Функція - одна із функцій sin() cos(). Знайти значення виразу.
Дано ціле число N. Знайти кількість 0 у двійковому записі числа N.
Дано вираз вигляду max(число , число). Знайти більше з двох чисел.
Дано вираз вигляду функція(число,число, …) . Функція - одна із функцій min() чи max(). Знайти значення виразу.
Дано вираз вигляду min(число , число). Знайти менше з двох чисел.
Дано вираз вигляду функція(число,число, …) . Функція - одна із функцій avg() чи sum(). Знайти значення виразу.
Дано вираз вигляду <число> < знак> <число>. Знак у виразі - знак операції відношення(>, <). Обчислити значення логічного виразу у типі bool. Наприклад, результат обчислення вираз у 123 > -45 рівний true.
Дано вираз вигляду <число> < знак> <число>. Знак у виразі - знаки операції відношення(!=, ==). Обчислити значення логічного виразу у типі bool. Наприклад, результат обчислення виразу 123 == -45 рівний false.
Додаткові завдання
Завдання 4*. Для виходу у Інтернет кожен комп’ютер отримує IP-адресу. Вона містить чотири цілих числа у діапазоні від 0 до 255, розділених крапками. Наприклад,
127.0.0.0
192.168.0.01
255.00.255.255
Написати програму, яка перевіряє чи введений рядок є правильною IP-адресою.