ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 13.09.2024
Просмотров: 6
Скачиваний: 0
Додаток №1 до лабораторної роботи №5
Тема: Обробка одновимірних масивів.
Мета: Вдосконалити роботу з складеним типом даних – масив.
Теоретична частина
Масив - кінцева послідовність даних одного типу.
Масив - об'єкт складного типу, кожен елемент якого визначається ім'ям (ID) і цілочисельним значенням індексу (номери), по якому до елементу масиву проводиться доступ. Розглянемо одновимірні масиви.
Увага! Індекси масивів в мові С/С++ починаються з 0.
У програмі одновимірний масив декларується таким чином:
тип ID масиву [розмір];
де розмір - вказує кількість елементів в масиві. Розмір масиву може задаватися константою або константним вираженням. Для використання масивів змінного розміру існує окремий механізм - динамічне виділення пам'яті.
Приклади декларації масивів :
int a[5];
double b[4] = 1.5, 2.5, 3.75;
у цілочисельному масиві а перший елемент а[0], другий - а[1], ., п'ятий - а[4]. Для масиву b, що складається з дійсних чисел, виконана ініціалізація, причому елементи масиву отримають наступні значення: b[0]=1.5, b[1]=2.5, b[2]=3.75, b[3]=0.
У мові С/С++ не перевіряється вихід індексу за межі масиву. Коректність використання індексів елементів масиву повинен контролювати програміст.
Приклади опису масивів :
const Nmax=10; - завдання максимального значення;
typedef double mas1[Nmax*2]; - опис типу одновимірного масиву;
mas1 a; - декларація масиву а типу mas1;
int ss[10]; - масив з десяти цілих чисел.
Елементи масивів можуть використовуватися у виразах так само, як і звичайні змінні, наприклад:
f = 2*a[3] + a[Ss[i] + 1]*3;
a[n] = 1 + sqrt(fabs(a[n - 1]));
На основі теоретичного матеріалу лабораторної роботи №6 та згідно свого варіанту, написати і відлагодити програму з використанням одновимірних масивів
Обрати номер завдання згідно номеру в списк підгрупи. (додаток А)
-
Дані масиви A і B однакового розміру N. Поміняти місцями їх вміст і вивести спочатку елементи перетвореного масиву A, а потім — елементи перетвореного масиву B.
-
Даний масив A розміру N. Сформувати новий масив B того ж розміру, елементи якого визначаються таким чином: BK = 2·AK якщо AK < 5, AK/2 в протилежному випадку.
-
Дано два масиви A і B однакового розміру N. Сформувати новий масив C того ж розміру, кожен елемент якого рівний максимальному з елементів масивів A і B з тим же індексом.
-
Даний цілочисельний масив A розміру N. Переписати в новий цілочисельний масив B всі парні числа з початкового масиву (у тому ж порядку) і вивести розмір отриманого масиву B і його вміст.
-
Даний цілочисельний масив A розміру N (u 15). Переписати в новий цілочисельний масив B всі елементи з непарними порядковими номерами (1, 3 .) і вивести розмір отриманого масиву B і його вміст. Умовного оператора не використовувати.
-
Даний цілочисельний масив A розміру N (Е 15). Переписати в новий цілочисельний масив B всі елементи з порядковими номерами, кратними трьом (3, 6 .), і вивести розмір отриманого масиву B і його вміст. Умовного оператора не використовувати.
-
Даний цілочисельний масив A розміру N. Переписати в новий цілочисельний масив B того ж розміру спочатку всі елементи початкового масиву з парними номерами, а потім — з непарними: A2, A4, A6, …, A1, A3, A5, … Условный оператор не використовувати.
-
Даний масив A розміру N. Сформувати новий масив B того ж розміру за наступним правилом: елемент BK рівний сумі елементів масиву A з номерами від 1 до K.
-
Даний масив A розміру N. Сформувати новий масив B того ж розміру за наступним правилом: елемент BK рівний середньому арифметичному елементів масиву A з номерами від 1 до K.
-
Даний масив A розміру N. Сформувати новий масив B того ж розміру за наступним правилом: елемент BK рівний сумі елементів масиву A з номерами від K до N.
-
Даний масив A розміру N. Сформувати новий масив B того ж розміру за наступним правилом: елемент BK рівний середньому арифметичному елементів масиву A з номерами від K до N.
-
Даний масив A розміру N. Сформувати два нові масиви B і C: у масив B записати всі позитивні елементи масиву A, в масив C — всі негативні (зберігаючи початковий порядок проходження елементів). Вивести спочатку розмір і вміст масиву B, а потім — розмір і вміст масиву C.
Номер завдання обрати згідно загального списку групи. (Додаток Б)
При виконанні завдань на перетворення масиву не слід використовувати допоміжні масиви.
-
Даний масив A розміру N і ціле число K (1 < K < N). Перетворити масив, збільшивши кожен його елемент на початкове значення елементу AK. Значення К задається з клавіатури.
-
Даний цілочисельний масив розміру N. Збільшити всі парні числа, що містяться в масиві, на початкове значення першого парного числа. Якщо парні числа в масиві відсутні, то залишити масив без змін.
-
Даний цілочисельний масив розміру N. Збільшити всі непарні числа, що містяться в масиві, на початкове значення останнього непарного числа. Якщо непарні числа в масиві відсутні, то залишити масив без змін.
-
Даний масив розміру N. Поміняти місцями його мінімальний і максимальний елементи.
-
Даний масив розміру N (N — парне число). Поміняти місцями його перший елемент з другим, третій, — з четвертим і так далі.
-
Даний масив розміру N (N — парне число). Поміняти місцями першу і другу половини масиву.
-
Даний масив розміру N. Поміняти порядок його елементів на зворотний.
-
Даний масив A розміру N і цілі числа K і L (1 < K < L < N). Переставити в зворотному порядку елементи масиву, розташовані між елементами AK і AL, включаючи ці елементи.
-
Даний масив A розміру N і цілі числа K і L (1 < K < L < N). Переставити в зворотному порядку елементи масиву, розташовані між елементами AK і AL, не включаючи ці елементи.
-
Даний масив розміру N. Обнулити елементи масиву, розташовані між його мінімальним і максимальним елементами (не включаючи мінімальний і максимальний елементи).
-
Даний масив розміру N. Переставити в зворотному порядку елементи масиву, розташовані між його мінімальним і максимальним елементами, включаючи мінімальний і максимальний елементи.
-
Даний масив розміру N. Обнулити всі його локальні максимуми (тобто числа, більші від своїх сусідів).
-
Даний масив розміру N. Звести в квадрат всі його локальні мінімуми (тобто числа, менші від своїх сусідів).
-
Даний масив розміру N. Замінити кожен елемент масиву на середнє арифметичне цього елементу і його сусідів (середнє арифметичне ТРЬОХ елементів).
-
Даний масив розміру N. Здійснити зрушення елементів масиву управо на одну позицію (при цьому A1 перейде в A2, A2 — в A3 ., AN-1 — в AN, а початкове значення останнього елементу буде втрачено). Перший елемент отриманого масиву покласти рівним 0.
-
Даний масив розміру N. Здійснити зрушення елементів масиву вліво на одну позицію (при цьому AN перейде в AN-1, AN-1 — в AN-2 ., A2 — в A1, а початкове значення першого елементу буде втрачено). Останній елемент отриманого масиву покласти рівним 0.
-
Даний масив розміру N і ціле число K (1 < K < N). Здійснити зрушення елементів масиву управо на K позицій (при цьому A1 перейде в AK+1, A2 — в AK+2 ., AN-K — в AN, а початкове значення K останніх елементів буде втрачено). Перші K елементів отриманого масиву покласти рівними 0.
-
Даний масив розміру N і ціле число K (1 < K < N). Здійснити зрушення елементів масиву вліво на K позицій (при цьому AN перейде в AN-K, AN-1 — в AN-K-1, AK+1 — в A1, а початкове значення K перших елементів буде втрачено). Останні K елементів отриманого масиву покласти рівними 0.
-
Даний масив розміру N. Здійснити циклічне зрушення елементів масиву управо на одну позицію (при цьому A1 перейде в A2, A2 — в A3 ., AN — в A1).
-
Даний масив розміру N. Здійснити циклічне зрушення елементів масиву вліво на одну позицію (при цьому AN перейде в AN-1, AN-1 — в AN-2 ., A1 — в AN).
-
Даний масив A розміру N і ціле число K (1 < K < N). Здійснити циклічне зрушення елементів масиву управо на K позицій (при цьому A1 перейде в AK+1, A2 — в AK+2, AN — в AK). Допускається використовувати допоміжний масив з 4 елементів.
-
Даний масив A розміру N і ціле число K (1 < K < N). Здійснити циклічне зрушення елементів масиву вліво на K позицій (при цьому AN перейде в AN-K, AN-1 — в AN-K-1, A1 — в AN-K+1). Допускається використовувати допоміжний масив з 4 елементів.
-
Даний масив А розміру N. Знайти в нім максимальний і мінімальний елементи і замінити на середнє арифметичне мінімального і максимального елементів ті члени масиву, які мають індекси, кратні 2.
-
Даний масив А розміру N. Знайти середнє геометричне елементів масиву і замінити набутого значення ті елементи масиву, які більше мінімального елементу на 4, а якщо таких елементів немає, вивести відповідне повідомлення.
Хід виконання роботи.
Запустити середовище візуальної розробки та ознайомитися з інтерфейсом.
За наданими методичними вказівками створити проект та ознайомитися з властивостями використаних компонентів.
Оформити звіт до виконаної роботи.
Структура звіту
-
Назва роботи.
-
Тема роботи.
-
Мета роботи.
-
Перелік використних компонентів.
-
Властивості використаних компонентів та події, що вони забезпечують. (Доцільно оформити у вигляді таблиці.)
-
Скрін-шот працюючого додатку.
-
Програмний код додатку.
-
Відповіді на контрольні питання до роботи.
Виконання додатку А оцінюється на задовільно та добре.
Виконання додатку Б оцінюється на добре та відмінно.
Література:
-
Березін Б.І., Березін С.Б. Початковий курс С і C++. — М.: ДІАЛОГ-МІФІ, 1996
-
Ван Тассел Д. Стиль, розробка, ефективність, відладка і випробування програм. — М.: Світ, 1981.
-
Подбельський В.В. Мова Си++. — М.: Фінанси і статистика, 1996.
-
Паппас К., Мюррей У. Программирование на С і C++. — Київ: «Ірина»; BHV, 2000.