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

1. Ввести набір структур з інформацією про дні народження друзів: < Ім’я >, < Дата народження > (дата народження задається символьним рядком День Місяць Рік, наприклад 12 липня 1997). Переставити введені дані так, щоб вони йшли в календарному порядку без урахування років. Надрукувати впорядкований список. Реалізувати функцію, яка порівнює дві календарні дати без огляду на роки.

2. Ввести послідовність україн­ських речень (відомо, що кількість речень не перевищує RM). Методом випадкових чисел вибрати з введеного тексту речення з кількіс­тю слів більшою за три і надрукувати це речення великими літерами. Реалізувати дві функції: 1) для визначення кількості слів у реченні, 2) для друку україномовного речення заголовними літерами (скорис­татись масивами великих і малих літер української абетки).

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

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

5. Ввести послідовність довгих цілих чисел (максимально можлива кількість чисел – NMAX). Перевірити всі введені числа та витерти ті з них, що не є простими. Надрукувати числа, які залишились. Застосувати перевірки, чи є простим задане довге натуральне число. Підказка: просте число не має інших дільників, крім 1 та самого себе.

6. Задано послідовність рядків (максимально можлива кількість – 250), кожен з яких містить ім’я та прізвище студента. Визначити й надрукувати найпоширеніше серед студентів чоловіче ім’я. Використати окрему функцію для визначення статі студента. Підказка: можна вважати, що всі жіночі імена закінчуються літерами  а  або  я, за винятком  Любов.

7. Ввести послідовність символьних рядків, у кожному з яких записаний п’ятірковий код цілого числа (максимально можлива кількість кодів – 30). Перевірити, чи всі введені рядки є правильними п’ятірковими кодами, вилучити неправильні рядки й вказати їхні номери. Потім для рядків, що залишились, обчислити десяткові значення і надрукувати таблицю п’ятіркових кодів чисел та їхніх десяткових значень. Використати дві функції: 1) для перевірки правильності п’ятіркового коду, 2) для знаход­ження десяткового значення числа, заданого п’ятірковим кодом.

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

9. Ввести набір структур з полями: < Дата > та < Подія >, відсортованих у хроно­логічному порядку (дати задаються у формі dd.mm.rrrr, наприклад, 07.11.2008). З клавіатури ввести додатковий запис (структуру). Вставити цей запис у введений масив на відповідне місце, застосувавши окрему функцію для порівняння двох дат. Надрукувати доповнений список.

10. Ввести набір речень (максимально можлива кількість речень – 15). У всіх введених реченнях заховати, замінивши відповідною кількістю зірочок, ті слова, що містять задану комбінацію символів. Речення, в яких такі слова відсутні, витерти. Надрукувати “засекречені” речення. Застосувати функцію, яка перевіряє, чи входять до заданого речення слова, що містять певну послідовність символів, і якщо так, то міняє всі літери цих слів на символ *.

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

12. Ввести набір структур з інформацією про міжміські телефонні розмови: < Місто >, < Час початку >, < Час завершення розмови > (час задається символьним рядком у формі години: хвилини: секунди, наприклад 19:47:30). Перенести у новий масив дані про розмови, тривалість яких у хвилинах перевищує задане з клавіатури значення ТМ. Застосувати функцію, яка визначає тривалість розмови у хвилинах як дійсне число Надрукувати окремо список коротких і довгих розмов.

13. Ввести послідовність дат у формі символьних рядків: День. Місяць. Рік. Надрукувати таблицю, в якій для кожної дати вказати порядковий номер дня року, що відповідає цій даті, наприклад, 1.03.2012 – 61-й день року. Потім вилучити всі дати, дні років яких потрапляють у заданий проміжок D 1.. D 2 (D 1 < D 2 £ 365). Застосувати функцію, яка за заданою датою визначає порядковий номер дня відповідного року, враховуючи, чи рік високосний. Підказка: спрощено можна вважати, що для введених дат високосними (29 днів у лютому) є роки, які цілочислово діляться на 4.

14. Виділити місце для n символьних рядків, кожен з яких буде складатися із цифр 12-розрядного випадкового цілого числа. Заповнити всі рядки згенерованими числами та надрукувати їх. Потім вилучити ті числові рядки, в яких хоча б одна цифра повторюється три або більше раз. Рядки, що залишились, надрукувати та записати у файл, ім’я якого задає користу­вач. Реалізувати дві функції: 1) для формування символьного рядка з десяткових цифр 12-розрядного цілого випадкового числа (підказка: число сформувати з трьох випад­кових 4-розрядних чисел); 2) для перевірки, чи є в числі (рядку символів) цифри, що повторюються понад два рази.

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

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

17. Ввести набір символьних рядків з датами поточного року, що задаються як День Місяць, наприклад 21 грудня. Потім з клавіатури ввести ще дві дати, які вказують початок і кінець певного часового проміжку. Всі дати, які не потрапляють у заданий часовий проміжок, перенести в окремий список (масив). Надрукувати окремо кожен з отриманих наборів дат. Застосувати власну функцію для порівняння двох дат.

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

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

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

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

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

23. Ввести набір структур з полями < Код > та < Повідомлення >, відсортованих за значеннями кодів (відомо, що кількість структур не перевищує 50). Потім з клавіатури ввести ще один запис (структуру), який треба вставити у масив так, щоби збереглася загальна впорядкованість. Надрукувати доповнений список. Застосувати окрему функцію, яка вставляє у відсорто­ваний масив додатковий елемент.

24. Ввести послідовність символьних рядків, у кожному з яких записаний 16-й код натурального числа (максимально можлива кількість кодів – NC). Перевірити, чи всі введені рядки є правильними 16-ми кодами, і вилучити хибні коди. Потім для рядків, що залишились, обчислити десяткові значення і надрукувати таблицю 16-х кодів чисел та їхніх десяткових значень. Реалізувати дві функції: 1) для перевірки правильності 16-го коду, 2) для знаход­ження десяткового значення числа, заданого 16-м кодом.

25. Ввести квадратну матрицю дійсних чисел А. Обчислити значення визнач­ника введеної матриці використо­вуючи метод розкладу за першим рядком:

,

де матриця B k отримується з матриці A через видалення першого рядка та k -го стовпця. Підказка: застосувати рекурсивну функцію, в якій виділяти (а наприкінці звільняти) динамічну пам’ять для кожної під матриці.

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

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

28. Ввести послідовність символьних рядків з датами, що мають форму dd.mm.rrrr, наприклад 12.04.1998). З клавіатури ввести певний рік. Всі дати, роки яких старші за заданий, перенести на початок списку. Надрукувати змінену послідовність дат. Застосувати окрему функцію для порівняння двох дат.

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

30. У динамічній пам’яті виділити місце для збереження масиву цілих чисел заданої розмірності. Заповнити цей масив випадковими трицифровими числами, в кожному з яких усі три цифри різні. Серед елементів масиву не повинно бути однакових. Відсортувати згенерований масив у порядку зрос­тання значень елементів і надрукувати його. Реалізувати дві функції: 1) для перевірки цифр заданого трицифрового числа; 2) для перевірки, чи входить у масив вказаної довжини задане ціле число.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: