Главная страница

Задание 1 Массив одномерный. Отчет по выполнению заданий 1 и 2 по статическому и динамическому массивам. По заданию 3 в отчет включить код, комментируя функции. 2


Скачать 116.17 Kb.
НазваниеОтчет по выполнению заданий 1 и 2 по статическому и динамическому массивам. По заданию 3 в отчет включить код, комментируя функции. 2
Дата19.02.2022
Размер116.17 Kb.
Формат файлаdocx
Имя файлаЗадание 1 Массив одномерный.docx
ТипОтчет
#366770
страница1 из 6
  1   2   3   4   5   6

Структура одномерный массив

Тема. Стандартные типы данных языка программирования для представления многоэлементных однородных структур данных задачи в программе

Цель.

- Приобретение навыков по определению одномерного массива для структуры данных задачи

- Приобретение навыков создания алгоритмов операций над одномерным массивом

- Получение навыков по реализации алгоритмов операций над массивом через аппарат функций

Оглавление


Задание 1. Разработать программу для выполнения операций на статическом массиве в отдельном проекте решения 1

Задание 2. Разработать программу для выполнения всех операций варианта над динамическим массивом 2

Задание 3. Разработать программу для выполнения всех операций варианта над динамическим массивом, используя контейнер для его представляя в программе. 2

Задание 4. Подготовить отчет по выполнению заданий 1 и 2 по статическому и динамическому массивам. По заданию 3 в отчет включить код, комментируя функции. 2

Структура отчета 2

Варианты 2

Пример разработки приложения и оформления отчета по заданию 1 5

1)Заполнение исходного массива значениями с клавиатуры 6

2)Вывод значений массива 6

3)Функции декомпозиции 6

Пример разработки приложения и оформления отчета по заданию 2 7

Статический массив 10

Динамический массив 13

Контейнер - современная реализация динамических массивов 15

Приложение 1 Форма отчета 19



Задание 1. Разработать программу для выполнения операций на статическом массиве в отдельном проекте решения


  1. Разработать функции для заполнения и отображения значений массива.

  2. Выполнить декомпозицию задач варианта (смотри пример оформления отчета).

  3. Выполнить разработку задачи варианта, отмеченной символом *.

  1. Постановка задачи

  2. Модель решения

Выполнить декомпозицию задачи. Описать ваш подход к решению каждой выявленной подзадачи (может быть и одна подзадача),

Если решение задачи можно описать на языке математике, то приведите математический аппарат ее решения.

Приведите прототипы функций каждой подзадачи и опишите постусловие и постусловие.

  1. Разработать алгоритм для каждой подзадачи и алгоритм основной задачи.

  2. Реализовать функции подзадач и основной функции.

  3. Отладить каждую функцию на успешных и безуспешных тестах.

Примечание. Выполняйте отладку функций последовательно по одной, сначала те, которые вызываются другой функцией. Только убедившись в том, что функция отлажена, переходите к отладке (можно к разработке) той, которая вызывает.

  1. Для других двух задач варианта выполнить: постановку задачи, описать модель решения (как в 2) п.3, подготовить тесты.

  2. Разработать основную программу, которая должна продемонстрировать работу всех операций над массивом.

  3. Отладить программу. Привести в конце модуля программы тесты.

Задание 2. Разработать программу для выполнения всех операций варианта над динамическим массивом


В отдельном проекте решения, созданного в задании 1. Скопируйте в проект функции из проекта задания 1, внесите изменения в функции, изменяющие размер массива.
Задание 3. Разработать программу для выполнения всех операций варианта над динамическим массивом, используя контейнер <vector> для его представляя в программе.

Задание 4. Подготовить отчет по выполнению заданий 1 и 2 по статическому и динамическому массивам. По заданию 3 в отчет включить код, комментируя функции.

Структура отчета


  1. Условие задания 1

    1. Задачи варианта

    2. Разработка задачи, отмеченной *, т.е. всю разработку от 1) до 5)

    3. Разработка двух других задач и основной программы

    4. Код реализации программы

    5. Результаты тестирования

  2. Условие задания 2

    1. Код реализации

    2. Тесты

    3. Результаты тестирования

Пример оформления отчета приведен в конце данного документа.

Варианты




Задачи варианта. Операции над элементами структуры

1

  1. Найти индекс элемента массива, являющегося простым числом.*

  2. Вставить новый элемент в массив в позицию, следующую за первым простым числом в массиве.

  3. Удалить каждый элемент массива, который кратен 7.

2

  1. Вставить новое значение в массив перед первым элементом массива.*

  2. Определить, образуют ли числа массива арифметическую прогрессию.

  3. Удалить элементы массива, в значениях которых первая и последняя цифры одинаковы.

3

  1. Вставить новый элемент в массив перед элементом в заданной позиции.

  2. Найти последнее вхождение в массив числа, у которого равны первая и последняя цифры.

  3. Удалить элементы массива кратные 5.

4

  1. Вставить новое значение после значения в заданной позиции.

  2. Определить, сколько раз входит в массив максимальное значение массива (одним алгоритмом).

  3. Удалить все числа массива, которые являются совершенными числами (число равно сумме своих делителей кроме самого числа: 6, 28).

5

  1. Вставить новый элемент в массив перед элементом, у которого четное количество цифр.

  2. Удалить все четные числа массива.

  3. Найти максимальное число среди элементов массива, расположенных на четных местах.

6

  1. Найти индекс элемента массива цифры которого упорядочены по возрастанию. Считать, что такое число одно.

  2. Вставить новый элемент после элемента, цифры которого упорядочены по возрастанию.

  3. Удалить число, которое расположено перед числом, цифры которого упорядочены по возрастанию.



7

  1. Найти индекс элемента массива, цифровой корень которого равен 7.

Подсказка. Цифровой корень – это однозначное число. Алгоритм определения цифрового корня: дано число 277, сумма его цифр 16 – двухзначное; снова сумма но уже 16 равна 7 – уже однозначное – это цифровой корень числа 277.

  1. Вставить новый элемент перед элементом, цифровой корень которого равен 7. Считать, что такое число одно.

  2. Удалить элементы массива цифровой корень которых равен 7.

8

  1. Найти индекс элемента массива, наибольшая цифра значения которого – это первая цифра числа.

  2. Вставить новый элемент в массив перед элементом, наибольшая цифра значения которого – это первая цифра числа.

  3. Удалить элементы массива, наибольшая цифра значения которых – это первая цифра числа.

9

  1. Найти индекс элемента массива (первое вхождение), которое является палиндромом.

  2. Удалить элементы массива, расположенное непосредственно перед элементом, содержащим число палиндром.

  3. Вставить новый элемент в массив после элемента массива, который является палиндромом.

10

  1. Найти индекс элемента массива (первое вхождение), которое является совершенным (число равно сумме своих делителей кроме самого числа: 6, 28).

  2. Вставить новый элемент в массив после элемента, который является совершенным.

  3. Удалить элемент массива, расположенный перед элементом, содержащим совершенное число.

11

  1. Найти индекс элемента массива, цифры которого (слева направо) образуют последовательность Фибоначчи.

  2. Вставить новый элемент в массив после элемента, цифры которого образуют последовательность чисел Фибоначчи.

  3. Удалить элемент массива, расположенный перед элементом, цифры которого образуют последовательность чисел Фибоначчи.

12

  1. Найти индекс максимального элемента массива, среди четных чисел массива.

  2. Вставить новый элемент в массив после элемента с максимальным значением среди черных чисел массива.

  3. Удалить элемент массива, расположенный перед элементом, с максимальным значением среди черных чисел массива.

13

  1. Найти максимальное значение массива.

  2. Вставить максимальное значение массива после элемента, у которого первая и последняя цифры равны.

  3. Удалить элементы массива, цифры которых образуют последовательность чисел Фибоначчи, в которой первое и второе число равно 1.

14

  1. Найти индекс первого вхождения минимального значения среди отрицательных чисел массива.

  2. Вставить новый элемент массива после минимального элемента массива.

  3. Удалить все элементы массива равные минимальному значению в массиве среди отрицательных чисел.

15

  1. Найти индекс элемента (первое вхождение) массива, у которого все цифры одинаковые.

  2. Вставить новый элемент в массив после элемента, все у которого все цифры одинаковые.

  3. Удалить элементы, у которого все цифры одинаковые.

  4. Определить, упорядочен ли массив по возрастанию или по убыванию.

16

  1. Найти индекс элемента массива (первое вхождение) двоичный код значения которого содержит ровно три единицы.

  2. Вставить новый элемент в массив после элемента, двоичный код значения которого содержит ровно три единицы.

  3. Удалить элементы массива, двоичный код значения которых содержит ровно три единицы.

17

  1. Найти индекс элемента массива, старшая цифра значения которого равна заданной.

  2. Вставить новый элемент в массив перед элементом массива, старшая цифра значения которого равна заданной

  3. Удалить все элементы массива, старшая цифра значений которых равна заданной.

18

        1. Найти индекс элемента массива (первое вхождение) троичный код значения которого содержит ровно две двойки.

        2. Вставить новый элемент в массив после элемента, троичный код значения которого содержит ровно две двойки.

        3. Удалить элементы массива, троичный код значений которых содержит ровно две двойки.

19

  1. Найти индекс элемента массива, значение которого содержит цифру 0.

  2. Вставить новый элемент в массив после элемента, значение которого не содержит цифру 0.

  3. Удалить элементы массива, значение которого содержит цифру 0.

20

        1. Найти индекс элемента массива, произведение цифр которого больше нуля и кратно трем.

        2. Вставить новый элемент в массив перед элементом с максимальным значением.

        3. Удалить элемент массива, произведение цифр которого больше нуля и кратно трем.

21

  1. Найти индекс элемента массива, сумма цифр значения которого кратна 7.

  2. Вставить новый элемент в массив перед минимальным элементом, сумма цифр значения которого кратна 7.

  3. Удалить элементы массива, сумма цифр значения которого кратна 7.

22

  1. Найти индекс элемента массива значение которого делится на каждую из цифр числа.

  2. Вставить в массив новый элемент после элемента, значение которого делится на каждую цифру значения.

  3. Удалить из массива все элементы, кратные трем.

23

  1. Определить, упорядочены ли значения в массиве по возрастанию.

  2. Если значения в массиве упорядочены по возрастанию, то удалить из массива элементы, которые кратны введенному значению.

  3. Если значения в массиве не упорядочены по возрастанию, то вставить новый элемент в массив перед первым элементом.

24

  1. Найти индексы (начальный и конечный) самой длинной, упорядоченной по возрастанию подпоследовательности (части массива).

  2. Вставить новый элемент перед элементом, с начальным индексом подпоследовательности.

  3. Удалить все элементы найденной подпоследовательности.

25

  1. Определить, сколько раз в массиве встречается максимальное значение и сформировать массив индексов этих элементов.

  2. Удалить все максимальные значения, используя массив их индексов.

  3. Если в массиве только одно максимальное значение, то добавить такое же значение в массив.

26

  1. Определить, упорядочены ли значения в массиве по возрастанию.

  2. Если значения в массиве не упорядочены по возрастанию, то удалить из массива элементы, которые кратны введенному значению.

  3. Если значения в массиве упорядочены по возрастанию, то вставить новый элемент в массив перед элементом с большим его по значению.

27

  1. Определить, упорядочены ли значения в массиве по убыванию.

  2. Если значения в массиве не упорядочены по убыванию, то удалить из массива элементы, значения которых содержат цифру 5.

  3. Если значения в массиве упорядочены по убыванию, то вставить новый элемент в массив перед элементом с меньшим его по значению.

28

  1. Сформировать новый массив из простых чисел исходного массива, вставляя каждое значение (кроме первого значения) так, чтобы числа образовали в результате возрастающую последовательность.

  2. Удалить минимальное число нового массива.

  3. Определить у скольких чисел исходного массива количество делителей больше трех.

29

  1. Сформировать новый массив из чисел исходного массива, сумма цифр которых кратна 7, вставляя каждое значение (кроме первого значения) так, чтобы числа образовали в результате убывающую последовательность.

  2. Удалить минимальное число нового массива.

  3. Определить у скольких чисел исходного массива цифры образуют возрастающую последовательность.

30

              1. Определить сколько в массиве простых чисел Мерсенна. Считать натуральное число M простым числом Мерсенна, если оно удовлетворяет свойствам: 1) М – простое число 2) число М+1 является степенью двойки. Например, число М=31.

              2. Удалить минимальное число, которое является степенью степень числа 2.

              3. Вставить в массив новый элемент после элемента значение которого является максимальным простым числом Мерсенна.



  1   2   3   4   5   6


написать администратору сайта