Варіанти індивідуальних завдань

Завдання 1. Робота з символьними рядками.

Мета:Придбання практичних навичок в роботі з символьними рядками з використанням індексних виразів та вказівників, забезпечення функціональної модульності.

Постановка задачі

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

 

При виконанні 1-го завдання необхідно:

Рядки для тестування функції вводити в головній програмі з клавіатури.

Передбачити обробку помилок в завданні параметрів та особливі випадки.

3. Розробити два варіанти заданої функції з використанням:

а) індексованих масивів;

Б) вказівників.

Варіанти індивідуальних завдань

  1. Функція Right_edge (s,l)

Призначення: вирівнювання рядку sпо правому краю до довжини l.

  1. Функція Paste(s,s1,n)

Призначення: вставлення в рядок sпідрядку s1, починаючи з позиції n.

  1. Функція Amputation (s,n,l)

Призначення: вилучення з рядку s підрядка, що починається з позиції n, довжиною l.

  1. Функція Line_up (s,l)

Призначення: вирівнювання рядку sпо ширині до довжини l.

  1. Функція Index(s,n)

Призначення: визначення позиції в рядку s початку слова з номером n.

  1. Функція Length(s,n)

Призначення: визначення довжини слова з номером n в рядку s.

  1. Функція Word(s,n,l)

Призначення: виділення з рядку s k слів, починаючи зі слова з номером n.

  1. Функція Type(s)

Призначення: визначення типу рядка s (можливі типи — рядок букв, десяткове число, 16-ричне число, 8-ричне число двійкове число).

  1. Функція Rozd(s,t)

Призначення: розділення рядку sна дві частини: до першого входження символу t та після нього.

  1. Функція Cent (s1,s2)

Призначення: центрування — розміщення рядку s1у центрі рядку s2.

  1. Функція Сonfer(s,n,l,t)

Призначення: установлення l символів рядку s, починаючи с позиції n, в значення t.

  1. Функція Position(s,t).

Призначення: повертає номер останнього входження символу t в рядок s; якщо символ в рядок не входить, функція повертає значення -1.

  1. Функція Position(s,t).

Призначення: повертає 1, якщо рядок tрозташований в кінці рідка s, та 0 в іншому випадку.

  1. Функція Conversion(s).

Призначення: Перетворює двійкове число (введене як послідовність символів) у десяткове та 16-ричне.

  1. Функція Simile(s1,s2)

Призначення: порівняння рядків (враховуючи пробіли та горизонтальні табуляції).

  1. Функція Length(s,s1)

Призначення: визначення довжини тієї початкової частини рядку s, яка містить тільки символи з рядку s1.

  1. Функція Insert(s).

Призначення: У рядку sпоміняти місцями попередній та наступний символи. Наприклад, є рядок s– 123456789. Після роботи функції отримаємо рядок – 321654987. Якщо наступного символу немає, то останні символи залишаються на своїх місцях.

  1. Функція Peretvorennya(s,s1,s2)

Призначення: перетворення рядку s символів, що входять в алфавіт s1, в символи, що входять в алфавіт s2.

  1. Функція Word(s,n)

Призначення: виділення n-го слова з рядку s.

  1. Функція Length(s,s1)

Призначення: визначення довжини тієї початкової частини рядку s, яка не містить символи з рядку s1.

  1. Функція Change(s,t)

Призначення: заміна в рядку s множинних входжень символу t на одне.

  1. Функція Rotation(s, n, l).

Призначення: У рядку s, починаючи з позиції nвиділити підрядок s1(довжиною l) та обернути його. Наприклад, рядок s – волпржфукрп. Починаючи з позиції n=2 виділяємо підрядок s1довжиноюl=5 (лпржф). При обертанні підрядка s1отримаємо рядок s вофжрплукрп.

  1. Функція Coding(s).

Призначення: кодує символьний рядок за наступним правилом:

a -> b

b -> c
c -> d
……..
z -> a

інший символ -> *

Коди малих латинських букв розташовані за зростанням.

  1. Функція Digit(s).

Призначення: визначає довжину найдовшої послідовності цифр в символьному рядку

  1. Функція Position(s,s1)

Призначення: пошук позиції останнього входження підрядку s1в рядок s.

  1. Функція Insert(s).

Призначення: дозволяє в заданому рядку символів вилучити всі зайві пробіли, замінюючи декілька підряд розташованих пробілів на один пробіл.

  1. Функція Conversion(s).

Призначення: обчислює десяткове значення цілого числа за заданим рядком символів s, який є записом цього числа в двійковій системі числення.

  1. Функція Insert(s).

Призначення: замінює в рядку символів s кожні три крапки – однією крапкою. Функція повинна повертати кількість зроблених замін.

  1. Функція Search(s, c).

Призначення: шукає перше входження певного символу св рядку s. Функція повинна повертати номер позиції цього символу в рядку, якщо символ знайдений та нуль у випадку, якщо символ в рядку не знайдено.

  1. Функція Insert(s).

Призначення: замінює в рядку символів s першу букву кожного слова на велику, якщо вона є малою літерою. Функція повинна повертати число зроблених замін.

  1. Функція InsertSpace(s,l)

Призначення: доведення рядку s до довжини l шляхом рівномірного вставлення пробілів між словами.

  1. Функція Find(s,s1)

Призначення: пошук входження в рядок s заданої фрази (послідовності символів) s1.

  1. Функція Number( s).

Призначення: рахує в заданому рядку символів кількість слів, що починаються з літер ‘а’ або ‘А’ .

  1. Функція Fill(s,n).

Призначення: в рядку символів s заповнює проміжки між словами додатковими пробілами так, щоб довжина рядку дорівнювала n символам. (Вважати, що n більше довжини початкового рядку). Перевірити роботу функції для n=60,70.

  1. Функція Amputation(s1,s2).

Призначення: вилучає з рядку s1 всі символи, що є в рядку s2. Функція повертає кількість вилучених символів.

  1. Функція Uppercase(s).

Призначення: перетворює рядок таким чином, щоб кожне слово починалось с великої літери, якщо воно починалось з малої. Повертає загальну кількість слів рядку.

  1. Функція Insert(s).

Призначення: в символьному рядку замінює всі коми на крапки, а наступну букву робить великою. Повертає кількість зроблених замін.

  1. Функція Quantity(s,P,Q).

Призначення: підраховує кількість входжень підрядку P у рядок Q.

  1. Функція Simile(s,t,n).

Призначення: порівнює не більше ніж n літер рядків s та t (позначимо ці підрядки як ns та nt) та повертає від’ємне, нульове або додатне значення, якщо підрядок ns, відповідно, містить пробілів менше, однакову кількість або більше, ніж у підрядку nt.

  1. Функція Insert(s).

Призначення: У рядку sпоміняти місцями кожні два символи. Наприклад, є рядок s– 123456789. Після роботи функції отримаємо рядок – 214365879. Якщо кількість символів непарна, то останній символ залишається на своєму місці.

  1. Функція Histogram(s).

Призначення: побудова гістограми довжин числових послідовностей в символьному рядку ( гістограми малювати горизонтальними лініями).

  1. Функція Latin(s).

Призначення: обчислює кількість слів в заданому рядку символів, що складаються тільки з латинських букв.

  1. Функція Position(s,t).

Призначення: повертає номер останнього входження рядку t в рядок s; якщо рядок t в рядок s не входить, функція повертає значення -1.

  1. Функція Quantity(s).

Призначення: обчислює довжину найдовшої послідовності підряд розташованих пробілів

  1. Функція Conversion(s).

Призначення: Перетворює усі літери v, за якою стоїть літера a, на символ *. Повертає загальну кількість замін.

Примітка: під «словом» скрізь мається на увазі послідовність символів, яка не містить пробілів, табуляцій та нових рядків.