Читайте также:
|
|
1. Дано натуральні числа m, n і цілі числа , , …, , , , …, , k. Якщо в послідовності , , …, нема жодного члена зі значенням k, то перший по порядку член цієї послідовності, не менший усіх інших членів, замінити на значення . По такому ж правилу перетворити послідовність , , …, відносно значення 10. Визначити функції перевірки наявності в послідовності цілих чисел елемента з деяким значенням і перетворення послідовності за описаним правилом.
2. Дано натуральне число n і дійсні числа , , …, . Розвернути найдовшу підпослідовність, що містить тільки додатні числа. Визначити функцію формування нової послідовності.
3. Дано натуральні числа m, n і дійсні числа , , …, , , , …, . У заданих послідовностях усі члени, що йдуть за членом з найбільшим значенням (за останнім по порядку, якщо їх декілька) замінити на 0,5. Визначити дві функції – пошуку останнього по порядку найбільшого елемента послідовності й заміни деяким значенням усіх елементів послідовності, починаючи з елемента с заданим номером.
4. Дано натуральне число і цілі числа , , …, . Отримати дві послідовності, перша з яких повинна містити всі парні члени вихідної послідовності, а друга – усі непарні. Визначити функцію переформування однієї послідовності в дві інші. У нових послідовностях члени повинні йти в порядку протилежному початковому.
5. Дано натуральне число n й цілі числа , , …, . Розглянути відрізки послідовності , , …, (послідовності членів, що йдуть підряд), які містять тільки
а) степені п’ятірки;
б) прості чисел.
У кожному випадку отримати найдовший підмасив. Визначити функції формування масивів, які містять вказані підмасиви.
6. Дано натуральне число n й дійсні числа , , …, . Сформувати два масиви, у перший з яких переписати за неспаданням усі додатні члени послідовності , , …, , а в другий – теж за неспаданням усі від’ємні члени. Визначити функції формування вказаних масивів.
7. Дано натуральне число n і послідовність з n цілих чисел. Сформувати масив з усіх простих чисел, що містяться в заданій послідовності між її максимальним і мінімальним елементами, записавши елементи в тому ж порядку, що й в початковій послідовності. Визначити функцію формування шуканого масиву.
8. Дано натуральне число і послідовність цілих чисел , , …, . Отримати нову послідовність, вставивши в первинну після кожного парного числа його половину і видаливши з початкової послідовності всі непарні значення. Визначити функцію формування нової послідовності.
9. Дано натуральне числа і масив з n цілих чисел. Сформувати новий масив, що містить тільки ті елементи первинного масиву, які не є простими числами. Визначити функцію формування нового масиву.
10. Дано натуральне числа і послідовність цілих чисел , , …, . Видалити в цій послідовності найбільший і найменший члени. Якщо в послідовності декілька найбільших або найменших елементів, то видалити всі такі члени. Визначити функцію видалення..
11. Дано натуральне число і цілі числа , , …, . З’ясувати, чи є серед чисел , , …, співпадаючі, і видалити всі такі елементи, залишивши тільки неповторювані значення. Визначити функцію видалення.
12. Дано натуральне число і послідовність цілих чисел , , …, . Видалити з послідовності всі нульові члени в впорядкувати нову послідовність так, щоб у ній спочатку йшли за неубуванням усі від’ємні елементи, а потім за незростанням усі додатні елементи. Визначити функцію формування нової послідовності.
13. Дано натуральні числа m, n і цілі числа , , …, , , , …, . Сформувати нову послідовність з членів послідовності , , …, , що не входять в послідовність , , …, . Визначити функцію формування нової послідовності.
14. Дано натуральне число і послідовність дійсних чисел , , …, . Залишити без зміни послідовність , , …, , якщо вона впорядкована за неубуванням або незростанням; у противному випадку видалити з неї ті члени, порядкові номери яких кратні трьом, зберігши порядок членів, що залишаться. Визначити функцію формування нової послідовності.
15. Дано натуральне число і послідовність відмінних від нуля цілих чисел , , …, . Якщо в послідовності числа з різними знаками чергуються, видалити з неї усі додатні члени; у противному випадку змінити знаки усіх членів послідовності. Визначити дві функції – видалення з послідовності додатних членів і зміни на протилежний знаків її членів.
16. Дано натуральне число n і цілі числа , , …, . Досконалим зветься таке натуральне число, яке дорівнює сумі всіх своїх простих дільників. Знайти в послідовності , , …, усі відрізки елементів, що йдуть підряд і містять тільки досконалі числа. Визначити функцію формування двовимірного масиву з рядками різної довжини, які містять вказані вище відрізки (підпослідовності) натуральних чисел.
17. Дано натуральні числа m, n, p, а також дві матриці розміру і одна матриця розміру . Отримати добуток першої і третьої матриць, а також суму перших двох. Визначити функції множення і підсумовування двох прямокутних матриць.
18. Дано натуральні числа m, n, p і квадратна матриця A порядку m. Отримати матрицю I + A + A 2 +... + A n, де I – одинична матриця порядку m. Визначити дві функції – множення двох квадратних матриць і підсумовування двох квадратних матриць одного порядку.
19. Дано прямокутну матрицю. Помножити цю матрицю на транспоновану і навпаки. Визначити функції транспонування матриці и множення двох матриць.
20. Дано двовимірний числовий масив із рядками різної довжини. Впорядкувати цей масив за зростанням довжин рядків, визначивши функцію впорядкування.
21. Дано числовий масив з n елементів. Переписати в двовимірний масив із рядками різної довжини всі впорядковані за незростанням підпослідовності з елементів одновимірного масиву. Визначити функцію формування масиву з вказаними властивостями.
22. Дано натуральні числа m, n 1, n 2, …, nm , де m – кількість рядків, а nj – кількість елементів у j -му рядку (j =1, 2, …, nj) двовимірного масиву дійсних чисел з рядками різної довжини. Дано масив з вказаними характеристиками. Впорядкувати рядки масиву за неспаданням їх максимальних елементів. Визначити функцію впорядкування вмісту масиву.
23. Дано натуральне число n і дві трикутні матриці A і B, у першій з яких нульові елементи містяться під головною діагоналлю, а в другій – над побічною (рис. 1–2). Обидві матриці задані послідовностями рядків, довжина першого з яких дорівнює n, другого – (n – 1) і т. д. Сформувати дві такі матриці й отримати їх суму.
Рис. 1 – Права трикутна матриця A | Рис. 2 – Ліва трикутна матриця B |
Визначити функції формування вказаних трикутних матриць як масивів з рядками різної довжини.
5. Контрольні запитання
1. Значення кого типу повертають функції calloc(), malloc() й realloc()?
2. Який тип має результат операції new?
3. Як створити одновимірний динамічний масив?
4. Як здійснюється примусове вивільнення динамічної пам’яті?
5. Що можна сказати про розміри двовимірного динамічного масиву або динамічного масиву з кількістю вимірів, більшою двох?
6. Як у динамічній пам’яті можна імітувати двовимірний динамічний масив?
7. Опишіть методику вивільнення динамічної пам’яті, зайнятої структурою даних, що імітує двовимірний масив або масив з кількістю вимірів, більшою двох?
8. Функція типу void що не використовує глобальні змінні, повинна створити масив з n елементів типу double, де n – натуральне число. Що можна сказати про параметри такої функції?
9. У програмі зустрівся такий оператор:
double * p = calloc(n * sizeoff(double));
Що можна сказати про нього?
10. У програмі зустрівся такий оператор:
double * p = newdouble[n];
Що можна сказати про цей оператор?
11. Прототип функції має такий вид:
int * f(int ** x, int * n);
Що може виконувати така функція?
Список літератури
1. Страуструп, Б. Язык программирования Си++: Второе издание / Б. Страуструп. – К.: ДиаСофт, 1993. – Ч. 1. – 264 с.; Ч. 2. – 296 с.
2. Керниган, Б. Язык программирования Си / Б. Керниган, Д. Ритчи. – М.: Финансы и статистика, 1992. – 272 с.
3. Либерти, Джесс. Освой самостоятельно С++ за 21 день: учеб. пособ. / Джесс Либерти. – М.: Вильямс, 2001. – 816 с.
4. Подбельский, В. В. Программирование на языке Си / В. В. Подбельский, С. С. Фомин. – М.: Финансы и статистика, 1999. – 600 с.
5. Подбельский, В. В. Язык Си++ / В. В. Подбельский. – М.: Финансы и статистика, 1999. – 560 с.
6. Савитч, Уолтер. Язык C++. Курс объектно-ориентированного программирования / Уолтер Савитч. – М.: Вильямс, 2001. – 704 с.
Навчальне видання
Методичні вказівки
до лабораторної роботи
«Використання динамічної пам’яті у програмах мовою C++»
з курсу «Програмування» для студентів напряму 6.040302 – Інформатика
і курсу «Програмування та алгоритмічні мови» для студентів напряму
6.040303 – Системний аналіз
Укладачі: БЕЗМЕНОВ Микола Іванович,
БЕЗМЕНОВА Ольга Миколаївна
Відповідальний за випуск О. С. Куценко
Роботу до видання рекомендував О. В. Горелий
За авторською редакцією
План 2013 р., поз. 11/41–13
Підписано до друку __.__.2013 р. Формат 60´84 1/16. Папір офсетний.
Друк – ризографія. Гарнітура Таймс. Ум. друк. арк. _______.
Обл.-вид. арк. 1,0. Тираж 50 прим. Зам. №___. Ціна договірна.
________________________________________________________________________________________________________________________
Видавничий центр НТУ «ХПІ».
Свідоцтво про державну реєстрацію ДК№ 116 від 10.07.2000 р.
61002, Харків, вул. Фрунзе, 21.
________________________________________________________________________________________________________________________
Друкарня НТУ «ХПІ».
61002, Харків, вул. Фрунзе, 21.
Дата добавления: 2015-12-08; просмотров: 104 | Нарушение авторских прав