Програмування
.pdf©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
16.Елемент з початку черги поміняти місцями з останнім елементом цієї черги.
17.Дано стек, заповнений випадковим чином цілими числами. Помістити парні елементи в один стек, непарні - в другій
18.Черга складається з цілих чисел. Помістити в початок черги парні, а в кінець - непарні елементи.
19.Створити стек з цілих чисел, в якому кожен елемент дорівнює сумі попередніх елементів. Перший елемент дорівнює одиниці.
20.Записати чергу в зворотному порядку. Елементи черги задаються випадковим чином.
21.Стек заповнений однозначними і двозначними числами. Помістити однозначні числа в один стек, двозначні - в інший.
22.Створити копію черги, елементи якої задані випадковим чином. Організувати перегляд елементів черги.
23.Дано стек з цілих чисел. Знайти мінімальний елемент стека і записати його в основу стека.
24.Визначити довжину черги, елементи якої задані випадковим чином.
25.Знайти в стекові, складеному з цілих чисел, максимальний елемент і помістити його в основу стека.
26.Створити чергу, елементи якої є випадковими числами від –M до M. Сформувати дві нові черги: в одну з них помістити від’ємні числа заданої черги, а в іншу – невід’ємні.
27.У стекові, складеному з цілих чисел, знайти мінімальний елемент і помістити його в вершину стека.
28.Створити чергу, елементи якої є випадковими числами. Створити дві нових черги: в одну помістити парні числа заданої черги: в іншу – непарні.
29.Стек заповнений однозначними і двозначними числами. Помістити однозначні числа в початок стека, двозначні - в кінець.
30.Створити копію черги, елементи якої розміщені у зворотному порядку. Організувати перегляд елементів черги.
31.Дано стек з цілих чисел. Поміняти місцями пари сусідніх елементів стека.
32.Створити чергу з цілих чисел. Визначити чого у черзі більше – двохзначних чи однозначних чисел.
33.Створити стек цілих чисел і знайти у ньому кількість двохзначних чисел та їх суму.
41
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
34.Дана черга з цілих чисел. Поміняти в черзі перший елемент з другим, третій з четвертим і так далі до кінця черги.
35.Створити стек символів. Перевірити чи у стекові є символи, з яких можна утворити слово «студент».
36.На початок черги, що складається з натуральних чисел, помістити числа, які утворені лише з парних цифр, а в кінець – з непарних.
42
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
Лабораторна робота №16
Організація роботи з файлами
Завдання 1.
1.Дано файл, який містить цілі числа. Визначити:
1)кількість парних елементів;
2)суму додатних елементів;
3)середнє арифметичне найменшого та найбільшого елементів;
4)добуток квадратів елементів;
5)суму модулів елементів з непарними номерами.
2.Дано файл з дійсними числами. Визначити:
1)найбільший та найменший елементи;
2)найменший елемент серед елементів з парними номерами;
3)різницю між першим та найбільшим елементом;
4)яких елементів більше — від’ємних чи додатних.
3.Дано файл, елементами якого є цілі числа. Обчислити:
1)кількість подвоєних непарних чисел серед елементів;
2)кількість елементів, значення яких збігаються з їх номерами;
3)кількість елементів, значення модулів яких є квадратами їх номерів;
4)кількість парних елементів, які мають парні номери.
4.Записати у файл результати обчислення за формулою ( ) = 2 5 для x=1,2,…,30.
43
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
5. Нехай для x=0,1,…,15 обчислення проводиться за формулою:
y x cos x2 sin x x!
Усі додатні результати записати у файл f, а всі від’ємні — у файл g.
6.Таблицю значень y = sinx для x = 10, 9.9,…,10 записати у файл відповідними парами чисел (x, y).
7.Дано файл f, компонентами якого є дійсні числа. Одержати копію файла у файлі g.
8.Послідовність значень обчислюються за формулою:
i |
|
i2 i 6 , |
де i=1,2,3,… |
У файл g записати ті члени послідовності, які передують першому члену, значення якого менше за .
9.Дано файл f, компонентами якого є цілі числа. Переписати у файл g ті з них, які:
1)є парними числами;
2)менші за задане ціле число;
3)діляться на 3 та не діляться на 7;
4)мають парні номери;
5)є квадратами непарних чисел.
10.Дано два файли g1 та g2, компонентами яких є дійсні числа. Переписати із збереженням порядку компоненти файла g1 у файл g2 і навпаки — із g2 в g1, скориставшись для цього третім файлом g3.
11.Дано файл f із цілих елементів. Переписати парні числа у файл g, а непарні
— у файл h, зберігаючи при цьому їх заданий порядок.
12.Дано файл f, що складається з дійсних елементів. Переписати їх у файл g у зворотному порядку.
13.Дано файл f, що складається з дійсних елементів. Створити файл g, що містить елементи файла f без повторних входжень.
44
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
14.Дано два файли f та g, що містять цілі елементи. Створити файл h, переписавши в нього
1)спочатку всі елементи файла f, а потім файла g;
2)чергуючи елементи файла f та g.
15.Дано файл f, який містить лише дійсні, відмінні від 0 числа. Переписати у файл g лише додатні числа, а у файл h — від’ємні числа із файла f, зберігаючи при цьому їх порядок у файлі f.
16.До умови попередньої задачі додається обмеження — кількість додатних та від’ємних чисел у заданому файлі однакова. Переписати числа із файла f
уфайл g, чергуючи додатні та від’ємні числа.
17.Дано файл f, який містить лише цілі, відмінні від 0, числа. Відомо, що числа у
заданому файлі чергуються таким чином: десять додатних, десять від’ємних, десять додатних, десять від’ємних і т.д. Переписати числа з файла f у файл g, змінивши чергування чисел:
1)п’ять додатних, п’ять від’ємних і т.д.;
2)двадцять додатних, двадцять від’ємних і т.д.
18.Дано файл f, який містить цілі числа. Кількість елементів файла кратна натуральному n. Для кожної групи з n чисел із файла f, зберігаючи їх порядок, записати у файл g:
1)мінімальні значення ;
2)середні арифметичні значення;
3)півсуму найменшого та найбільшого чисел.
19.Припустивши в умові попередньої задачі, що кількість елементів файла f довільна, виконати завдання:
1)записати у файл g максимальні значення з кожної групи n елементів заданого файла, а решту елементів файла f (якщо він менший за n) переписати у файл h;
2)записати у файл g впорядковані групи з n елементів даного файла, зберігаючи їх порядок, а решту елементів файла f (якщо він менший за n) дописати у цей файл без змін;
45
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
20.Дано два однотипних файли f та g. Визначити:
1)чи рівні ці файли, тобто чи збігаються послідовності їх елементів;
2)чи є один з цих файлів доповненням другого, тобто чи є один з них першою частиною іншого.
21.Дано файл f, який складається з цілочислових елементів. Змінити в ньому послідовність елементів, переписавши останній елемент на перше місце, передостанній — на друге і т.д., не використовуючи для цього додаткового файла.
22.Дано два символьні файли f та g. Злити вміст цих файлів у файл h, розташувавши спочатку інформацію з файла f, а потім з файла g.
23.Закодувати текст, що вводиться з клавіатури, записавши у символьний файл відповідні ASCII-коди цих символів.
24.У символьному файлі f розміщено цілі числа. Знайти їх середнє арифметичне значення.
25.Дано символьний файл, який містить десяткові цифри, розділені пробілами. У новий символьний файл записати відповідні текстові еквіваленти цих цифр (нуль, один, два і т.д.), розділяючи їх пробілами та зберігаючи при цьому їх послідовність.
26.У символьному файлі розміщені дійсні числа, що містять таку інформацію: перше число — кількість елементів послідовності, всі наступні — самі
елементи послідовності. Вивести на екран монітора елементи послідовності, що містяться у файлі і визначити кількість від’ємних елементів.
27.У символьному файлі розміщено інформацію про цілочислову матрицю таким чином: перший рядок файла — кількість рядків та стовпчиків матриці, наступні рядки — елементи матриці, задані по рядках. Вивести на екран монітора елементи матриці, розташувавши їх у вигляді таблиці (вважається, що розмірність матриці дозволяє вивести її на екран).
28.Дано натуральні числа n та m. Елементи прямокутної таблиці розмірністю n*m розраховуються за формулою (i j) /(n * m) . Одержані значення прямокутної таблиці записати по рядках у текстовий файл. На початку цього файла окремим рядком повинні бути записані значення чисел n та m.
46
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
29.Дано послідовність з n цілих чисел. Записати у символьний файл дану
послідовність чисел та її упорядкований за зростанням варіант з відповідними текстовими коментарями: „Дана послідовність:” та „Упорядкована послідовність:”.
Завдання 2.
1.Розробити програму, яка: а) створює текстовий файл TF1_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF1_1 і записує кожне слово в окремий рядок файла TF1_2 (розділові знаки опускаються); в) читає вміст файла TF1_2 і друкує його по рядках.
2.Розробити програму, яка: а) створює текстовий файл TF2_1 із символьних рядків різної довжини; б) читає вміст файла TF2_1, знаходить всі послідовності цифр і записує кожну із них в окремий рядок файла TF2_2; в) читає вміст файла TF2_2 і друкує його по рядках.
3.Задано n ключових слів. Розробити програму, яка: а) створює текстовий файл TF3_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF3_1 і записує у файл TF3_2 тільки ті рядки, які містять хоча б одне із ключових слів (якщо таких рядків немає, то повідомлення про це поміщається у файл TF3_2); в) читає вміст файла TF3_2 і друкує його по рядках.
4.Розробити програму, яка: а) створює текстовий файл TF4_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками (слова не перевищують довжину 16 символів); б) читає вміст файла TF4_1, визначає скільки в ньому є слів із одного, двох, трьох, і т. д. символів, результат записує у файл TF4_2: у перший рядок кількість слів із одного символу, у другий рядок кількість слів із двох символів і т. д.; в) читає вміст файла TF4_2 і друкує його по рядках.
5.Розробити програму, яка: а) створює текстовий файл TF5_1 із символьних рядків різної довжини; б) читає вміст файла TF5_1, знаходить всі послідовності цифр, які відповідають синтаксису цілого числа, і записує їх, розділяючи пробілами, у файл TF5_2; в) читає вміст файла TF5_2 і обчислює суму цих чисел.
47
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
6.Розробити програму, яка: а) створює текстові файли TF6_1 і TF6_2, елементи в яких упорядковані за неспаданням; б) зливає файли TF6_1 і TF6_2 в один, також упорядкований за неспаданням, файл TF6_3 по 10 символів у рядку (останній рядок може бути не повним); в) читає вміст файла TF6_3 і друкує його по рядках.
7.Розробити програму, яка: а) створює текстовий файл TF7_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF7_1, знаходить слова з подвоєнням букв і записує їх у файл TF7_2 по одному в рядок (якщо таких слів немає, то повідомлення про це поміщається у файл TF7_2); в) читає вміст файла TF7_2 і друкує його по рядках.
8.Розробити програму, яка: а) створює текстовий файл TF8_1 із символьних рядків різної довжини; б) читає вміст файла TF8_1, пропускає цифри і формує рядки по 10 символів (останній рядок може бути неповним), вставляє перед кожним порядковий номер (номер займає п’ять позицій і відділяється від тексту пробілом) і записує їх у файл TF8_2; в) читає вміст файла TF8_2 і друкує його по рядках.
9.Розробити програму, яка: а) створює текстовий файл TF9_1 із символьних рядків різної довжини; б) читає вміст файла TF9_1, формує рядки за правилом: якщо рядок файла TF1 коротший ніж 20 символів, то він доповнюється пробілами, а якщо довший, то зрізається і записує їх у файл TF9_2; в) читає вміст файла TF9_2 і друкує його по рядках.
10.Розробити програму, яка: а) створює текстовий файл TF10_1 із символьних рядків різної довжини; б) читає вміст файла TF10_1, вилучає всі цифри і записує у файл TF10_2 по 10 символів у рядок (останній рядок може бути не повним); в) читає вміст файла TF10_2 і друкує його по рядках.
11.Розробити програму, яка: а) створює текстовий файл TF11_1 із символьних рядків однакової довжини; б) читає вміст файла TF11_1, вилучає у кожному рядку всі символи крім цифр, доповнює його до заданої довжини пробілами і записує у файл TF11_2; в) читає вміст файла TF11_2 і друкує його по рядках.
12.Розробити програму, яка: а) створює текстовий файл TF12_1 із символьних рядків різної довжини; б) читає вміст файла TF12_1 і записує його у файл TF12_2 по рядках: у першому – один символ, у другому – два символи, … , у десятому – десять символів, у одинадцятому – один символ і т. д. (останній рядок може бути не повним); в) читає вміст файла TF12_2 і друкує його по рядках.
48
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
13.Розробити програму, яка: а) створює текстовий файл TF13_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF13_1, знаходить слова, які розпочинаються голосною літерою і записує кожне в окремий рядок файла TF13_2; в) читає вміст файла TF13_2 і друкує його по рядках.
14.Розробити програму, яка: а) створює текстовий файл TF14_1 із символьних рядків різної довжини; б) читає вміст файла TF14_1, знаходить всі послідовності цифр, які відповідають синтаксису дійсного числа, і записує їх, розділяючи пробілами, у файл TF14_2; в) читає вміст файла TF14_2 і знаходить найбільше значення із записаних чисел.
15.Розробити програму, яка: а) створює текстовий файл TF15_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF15_1, знаходить симетричні слова (симетричними будемо називати слова виду “абввба”) і записує їх, розділяючи пробілами, у файл TF15_2; в) читає вміст файла TF15_2 і друкує кожне слово в окремому рядку.
16.Розробити програму, яка: а) створює текстовий файл TF16_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF16_1, знаходить слова, які розпочинаються голосною літерою, і записує кожне в окремий рядок файла TF16_2; в) читає вміст файла TF16_2 і друкує його по рядках.
17.Розробити програму, яка: а) створює текстовий файл TF17_1 із символьних рядків різної довжини; б) переписує вміст файла TF17_1 у файл TF17_2 (використовуючи при цьому допоміжний файл TF17_3) так, щоб спочатку розміщувалися всі цифри, а потім всі інші символи по 10 у рядку (останній рядок може бути не повним); в) читає вміст файла TF17_2 і друкує його по рядках.
18.Розробити програму, яка: а) створює текстові файли TF18_1 і TF18_2 із символьних рядків різної довжини; б) переписує вміст файла TF18_1 у файл TF18_2 і вміст файла TF18_2 у файл TF18_1 (використовуючи при цьому допоміжний файл TF18_3) по 20 символів у рядку (останній рядок може бути не повним); в) читає вміст файлів TF18_1, TF18_2 і друкує його по рядках.
19.Розробити програму, яка: а) створює текстовий файл TF19_1 із символьних рядків різної довжини, слова в яких розділені пробілами (одним або декількома); б) читає вміст файла TF19_1, вилучає в кожному рядку всі слова з
49
©Караванова Т.П., Любарщук Є.А., Скутар І.Д.
однієї букви та зайві пробіли і записує їх у файл TF19_2; в) читає вміст файла TF19_2 і друкує його по рядках.
20.Розробити програму, яка: а) створює текстовий файл TF20_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF20_1, знаходить всі слова найбільшої довжини і записує їх, розділяючи пробілами, у файл TF20_2; в) читає вміст файла TF20_2 і друкує його по п’ять слів у рядок.
21.Задано n ключових слів. Розробити програму, яка: а) створює текстовий файл TF21_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF21_1, вилучає в кожному рядку ключові слова і записує їх у файл TF21_2; в) читає вміст файла TF21_2 і друкує його по рядках.
22.Розробити програму, яка: а) створює текстовий файл TF22_1 із символьних рядків різної довжини, слова в яких розділені пробілами і розділовими знаками; б) читає вміст файла TF22_1, знаходить всі слова найбільшої довжини, які містять символ “а” і записує кожне з них в окремий рядок файла TF22_2 (якщо таких слів немає, то повідомлення про це поміщається у файл TF22_2); в) читає вміст файла TF22_2 і друкує його по рядках.
23.Розробити програму, яка: а) створює текстовий файл TF23_1 із символьних рядків різної довжини; б) читає вміст файла TF23_1, замінює символ ”1” на “0” та навпаки і записує у файл TF23_2 по 15 символів у рядок (останній рядок може бути неповним); в) читає вміст файла TF23_2 і друкує його по рядках.
24.Розробити програму, яка: а) створює текстовий файл TF24_1 із символьних рядків різної довжини; б) читає вміст файла TF24_1 і записує його у файл TF24_2 так, щоб символи у кожному рядку розміщувалися в оберненому порядку; в) читає вміст файла TF24_2 і друкує його по рядках.
25.Розробити програму, яка: а) створює текстовий файл TF25_1 із символьних рядків різної довжини; б) читає вміст файла TF25_1 і записує його у файл TF25_2 так, щоб у кожному рядку спочатку розміщувалися цифри, а потім всі останні символи із збереженням порядку їх розміщення; в) читає вміст файла TF25_2 і друкує його по рядках.
26.Розробити програму, яка: а) створює текстовий файл TF26_1 із рядків латинських букв різної довжини; б) читає вміст файла TF26_1, замінює великі літери на одноіменні малі і записує його у файл TF26_2 по 15 символів у
50