
- •Показівники Тема: Показівники.
- •Тип показівник
- •Вбудовані засоби
- •Надання значення змінній-показівнику
- •Використання оператора @
- •Addr(X):pointer;
- •Seg(X):word
- •Визволення динамічної змінної
- •Блочне визволення пам'яті
- •1) New/dispose
- •2) New/mark/release
- •3) Getmem/freemem.
- •Структури, побудовані на базі показівників:
- •Варіанти завдань
- •Контрольні запитання.
Варіанти завдань
10 - 1
Задано масив вказівників, визначаючих елементи з двома полями: дійсна та уявна частина числа. Знайти найбільше по модулю з цих чисел. Реалізувати завдання через процедуру або функцію.
10 - 2
Задано масив вказівників на дійсне число. Описати функцію знаходження найбільшого з цих чисел.
10 - 3
Задано масив вказівників на дійсне число. Описати функцію, значенням якої є той з елементів масиву, котрий засилається на найменьше від'ємне число, або пустий вказівник , якщо від'ємних чисел немає.
10 - 4
Задано масив вказівників на дійсні числа. Описати логічну функцію, яка перевіряє, чи є хоча б два засилання на один і той же елемент (дійсне число).
10 - 5
Задано масив вказівників на дійсні числа. Описати процеду, яка у вихідному масиві заміняє всі елементи, що посилаються на рівні числа, першим з цих посилань.
10 - 6
Довгий неперервний текст надано наступним чином: поділено на рядки, кожен з є масивом з n символів (або рядком довжиною n). На кожен з таких рядків посилається елемент масиву,загальна вимірність якого d, у порядку слідування рядків. Якщо рядків меньш, ніж d, то останні елементи містять пусті посилки.
Описати процедуру, що заміняє i-й рядок тесту j-тим рядком того ж тексту (копійою j-го рядка).
10 - 7
Довгий неперервний текст надано наступним чином: поділено на рядки, кожен з є масивом з n символів (або рядком довжиною n). На кожен з таких рядків посилається елемент масиву,загальна вимірність якого d, у порядку слідування рядків. Якщо рядків меньш, ніж d, то останні елементи містять пусті посилки.
Описати процедуру, що вилучає i-й рядок з тесту.
10 - 8
Довгий неперервний текст надано наступним чином: поділено на рядки, кожен з є масивом з n символів (або рядком довжиною n). На кожен з таких рядків посилається елемент масиву,загальна вимірність якого d, у порядку слідування рядків. Якщо рядків меньш, ніж d, то останні елементи містять пусті посилки.
Описати процедуру, що міняє місцями i-й та j-й рядки у тесті.
10 - 9
Довгий неперервний текст надано наступним чином: поділено на рядки, кожен з є масивом з n символів (або рядком довжиною n). На кожен з таких рядків посилається елемент масиву,загальна вимірність якого d, у порядку слідування рядків. Якщо рядків меньш, ніж d, то останні елементи містять пусті посилки.
Описати процедуру,що додає після i-го рядка тесту Т копію j-го рядка.
10 - 10
Текст задано у вигляді однозв'язного списку, кожен елемент якого містить рядок фіксованої довжини. Описати процедуру, що міняє місцями i-й та j-й рядки у тесті.
10 - 11
Текст задано у вигляді однозв’язного списку, кожен елемент якого- рядок фіксованої довжини. Описати процедуру, що міняє місцями i-й рядок на копію j-го рядка.
10 - 12
Текст задано у вигляді однозв’язного списку, кожен елемент якого- рядок фіксованої довжини. Описати процедуру, що додає після i-го рядка тексту копію j-го рядка.
10 - 13
Текст задано у вигляді однозв’язного списку, кожен елемент якого- рядок фіксованої довжини. Описати процедуру, що вилучає i-й рядок з тексту.
10 - 14
Набір латинських слів задано однозв'язним списком. Описати процедуру, що упорядковує елементи списку у порядку абетки.
10 - 15
Задано два однозв'язних списки, елементами яких є дійсні числа. Описати функцію, яка перевіряє на рівність ці списки (порядок слідування та значення елементів).
10 - 16
На базі однозв'язного списку утворити чергу. Розробити процедури додавання елементу в чергу та вилучення елементу з черги.
10 - 17
Задано два однозв'язних списка L1, L2, елементами яких є дійсні числа.
Описати функцію, яка перевіряє, чи є однакові елементи у цих списках та повертає їх кількість.
10 - 18
Задано два однозв'язних списка L1, L2, елементами яких є цілі числа. Описати функцію, яка перевіряє чи є однакові елементи у цих списках та повертає їх кількість.
10 - 19
Задано два однозв'язних списка L1, L2, елементами яких є дійсні числа. Описати функцію, яка перевіряє чи є однакові елементи у цих списках та повертає їх кількість.
10 - 20
Задано однозв'язний список, елментами якого є латинські символи. Описати рекурсивну функцію, що визначає, чи входить елемент до списку.
10 - 21
Задано однозв'язний список, елементами якого є дійсні числа. Описати рекурсивну функцію, що підраховує середнє арифметичне всіх елементів непустого списку.
10 - 22
Задано два однозв'язних списка L1, L2, елементи котрих - дийсні числа. Описати процедуру, що формує список L3, включаючи до нього елементи, що входять одночасно в обидва списка L1,L2.
10 - 23
Задано два однозв'язних списка L1, L2, елементи котрих - дийсні числа. Описати процедуру, що формує список L3, включаючи до нього по одному разу елементи, що входять в L1, та не входять до L2.
10 - 24
Задано два впорядкованих по неспаданню однозв'язних списка L1, L2, що містять дійсні числа. Описати процедуру, що об'єднує ці списки в один, який впорядковано по неспаданню, змінюючи відповідним чином посилки в L1 та L2.
10 - 25
Задано три однозв'язних списка L, L1, L2, елементи котрих довільні. Описати процедуру, що знаходить в списку L перше входження списку L1 ( якщо воно існує ) та замінює на список L2.
10-26
На базі однозв'язного списку утворити стек, Розробити процедури додавання елементу в стек та вилучення елементу з стеку.
10-27
Утворити двозв'язний список. Виконати сортування його елементів методом обміну.
10-28
Утворити двозв'язний список. Розробити процедуру додавання елементу після і-го елементу.
10-29
Утворити двозв'язний список. Розробити процедуру вилучення і-го елементу.