Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задачник_Главы 5-6.doc
Скачиваний:
2
Добавлен:
15.08.2019
Размер:
665.09 Кб
Скачать

6. 2 Обработка одномерных массивов с использованием функций.

  1. Дан массив A(N). Сформировать массив В из повторяющихся элементов массива А, причем одинаковые элементы должны стоять в массиве В подряд. Использовать функции.

  2. Даны массивы A(N) и B(M), упорядоченные по возрастанию. Сформировать массив С размерности M+N, составленный из элемен­тов А и В также упорядоченный по возрастанию.

  3. Дана последовательность A размерности N. Определить, к какому типу относится исходная последовательность: возрастаю­щая, убывающая, переменная. Напечатать исходную последовательность, ее тип, а также +dA – максимальная разность между членами возрастающей последовательности; -dA – минимальная разность между членами убывающей последовательности; 0 – для переменной последовательности. Использовать функции.

  4. Дан массив A(N). Изменить массив таким образом, чтобы в начале стояли четные элементы, затем элементы кратные трем, затем - все остальные. Проверку делимости Ai на число оформить с помощью функции.

  5. Дан массив A(N). Упорядочить массив возрастанию количества цифр в записи числа. Использовать функции.

  6. Заданы два вектора x = {x1,x2,x3,x4} и y = {y1,y2,y3,y4}. Определить угол между векторами по формуле . Написать функцию для вычисления скалярного произведения.

  7. Заданы три вектора , , . Переменной присвоить значение 1, если длина вектора d, равного сумме векторов x и y больше длины вектора с, равного сумме векторов у и z, и значение 0 в противном случае. Написать функцию для вычисления суммы векторов и длины вектора.

Примечание. Длина вектора А(а1, а2, …, аn) вычисляется по формуле .

  1. Заданы четыре массива X(3), Y(3), Z(4), P(4). Логической переменной присвоить значение 1, если скалярное произведение массивов X и Y больше скалярного произведения векторов Z и P, и значение 0 в противном случае. Написать функцию для вычисления скалярного произведения.

  2. Заданы два массива A(N) и B(M). Переменной присвоить значение -1, если максимальный элемент массива A больше максимального элемента массива B и 0 в противном случае. Написать функцию для поиска максимального элемента массива.

  3. Дан массив A(N). Разложить каждое число на простые множители и выбрать среди множителей максимальный. Использовать функции.

  4. Даны массивы A(N) и В(М). Из массива A выбрать и напечатать числа, которые больше хотя бы одного из элемента массива B. Использовать функции.

  5. Заданы три массива X, Y, Z. Упорядочить по возрастанию три числа а, b, с, где а- минимальный элемент массива X, b - минимальный элемент массива Y, c - минимальный элемент массива Z. Написать функцию для поиска минимального элемента.

  6. Написать программу для вычисления вектора , равного сумме векторов и по формуле . Вектор x задан. Значение компонент вектора y вычислить по формуле Написать функцию для вычисления вектора z.

  7. Задан массив чисел A(N). Выбрать из него элементы принадлежащие отрезку [X,Y]. Из выбранных чисел сформировать массив. Оформить функцию на принадлежность числа отрезку.

  8. Заданы три квадратных уравнения :

ax2 + bx + c = 0 , dx2 + fx + r = 0 , px2 + qx + k = 0 Найти минимальное значение среди корней этих уравнений. Написать функцию решения квадратного уравнения. Примечание: считать, что заданы три массива:

M1 ={ a, d, p }, M2 ={ b, f, q }, M3 ={ c, r, k }

  1. Заданы два массива. Написать функцию нахождения суммы элементов массива. Найти максимальную сумму.

  2. Заданы два массива. Определить количество чисел, кратных 5. Определение кратности числа оформить функцией.

  3. Заданы два массива A(N) и В(М). Сформировать еще два массива С и D, элементами которого являются удвоенные элементы массива А и массива B соответственно. Написать функцию формирования массива.

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

  5. Заданы три массива A, B, C. Решить уравнение px2 + dx + r = 0, где p - min элемент массива A; d - min элемент массива B; r - min элемент массива C. Ввод массива и поиск минимального элемента оформить в виде функций.

  6. Даны два массива целых чисел. Наименьший элемент каждого массива заменить средним арифметическим элементов массива. Если в массиве несколько элементов со значением min, то заменить последний элемент по порядку. Написать функцию нахождения минимального элемента.

  7. Заданы три массива различной размерности. Определить среднее арифметическое каждого массива. Найти наибольшее из найденных чисел. Написать функции поиска среднего арифметического и поиска максимального числа.

  8. Заданы два массива. Найти минимальные элементы каждого массива и поменять их местами. Написать функцию нахождения минимального элемента.

  9. Заданы три массива различной размерности. Сформировать еще один массив, вначале которого стоят элементы, равные произведениям элементов каждого массива, а затем стоят элементы - равные сумме положительных элементов каждого массива. Написать функции нахождения произведения элементов массива и суммы положительных элементов.

  10. Задан массив A(N). Все элементы отличны от нуля. Если в массиве отрицательные и положительные элементы чередуются, то ответом должен служить сам массив. Иначе получить все отрицательные элементы массива, сохранив порядок их следования. Написать функцию проверки на чередование знака.

  11. Даны два массива A(N) и B(M) и число K. Если в массиве А нет ни одного элемента со значением K, то первый элемент этого массива заменить на K. По такому же правилу преобразовать массив B(M). Проверку, находится ли среди значений элементов массива число К, оформить с помощью функции.

  12. Задан массив A(N). Сформировать массив B, получаемый путем исключения минимального элемента из массива А. Исключение минимального элемента оформить с помощью функции.

  13. Дан массив A(N). Сформировать массив B из A, элементы которого удовлетворяют условию: K < A(i) < M. Удовлетворяет ли число условию оформить функцией.

  14. Заданы два массива различной размерности. Найти максимальные элементы каждого массива и поменять их местами с первыми элементами соответствующих массивов. Определение максимального элемента и их номера по порядку следования оформить с помощью функции.

  15. Задан массив А. сформировать массив В, заменяя Аi нулем, если Аi не равно максимальному элементу массива А и заменяя Аi единицей в противном случае. Проверку, равно ли Аi максимальному элементу, оформить с помощью функции.

  16. Заданы два одномерных массива X и Y. Рассматривая элементы x1, x2,…,x10 и y1, y2, …,y10 как координаты точек X и Y в десятичном пространстве, составить программу для вычисления расстояния между этими двумя точками

(4)

Расстояние между двумя точками оформить в виде функции.

  1. Задан массив А. Наименьший элемент массива А заменить средним арифметическим всех элементов, остальные элементы оставить без изменения. Если в последовательности несколько элементов со значением min, то заменить последний по порядку. Поиск min оформить в виде функции.

  2. Составить программу для формирования из массива A(3N) массива В(N), очередная компонента которого равна среднему арифметическому очередной тройки элементов массива А. Нахождение среднего арифметического очередной тройки элементов массива А оформить в виде функции.

  3. Составить программу определения всех троек чисел (X, Y, Z) в целочисленном массиве А(30) таких, что

X2 + Y2 < Z2.

Алгоритм оформить в виде функции.

  1. Дан массив А(N). Получить массив В(N), в котором сначала размещены все четные элементы массива А, упорядоченные по возрастанию, а затем – нечетные элементы массива А, также упорядоченные по возрастанию. Упорядочение элементов по возрастанию оформить в виде функции.

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

  3. Задан массив А(N). Сформировать последовательность В из простых чисел массива А(N). Написать функцию, определяющую, является число простым.

  4. Дан массив А(N). Найти элементы, большие единицы и расположить их по возрастанию. Найти номер первого и последнего элемента, больших единицы, в исходном массиве. Использовать функции.

  5. Дана последовательность целых чисел А(N). Переформировать ее таким образом, что в начале будут стоять четные числа, которые делятся на 5, затем – все остальные. Если среди чисел встретится простое число, поместить его в последнюю группу и выдать на печать его номер. Напечатать исходную и полученную последовательности с соответствующими заголовками. Использовать функции.

  6. Дан массив из целых чисел. Упорядочить массив по количеству цифр в записи числа. Использовать функции.

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

  8. Дана последовательность А(N) и целые числа К и L(K<L). Сформировать последовательность В, в которую входят элементы Аi, i = 1,…,К, упорядоченные по возрастанию, затем Аi (i = L,…,N) упорядоченные по убыванию, затем Аi, i = К + 1,…, L – 1 в исходном порядке. Напечатать исходную и полученную последовательности. Упорядочение последовательности по возрастанию оформить в виде функции.

  1. Заданы экспериментальные значения трёх случайных величин , , . Найти максимальное из трёх чисел x, y, z, где

x - математическое ожидание случайной величины а,

y- математическое ожидание случайной величины b,

z- математическое ожидание случайной величины c.

Математическое ожидание случайной величины вычисляется по формуле: Написать функцию для вычисления математического ожидания.

  1. Даны натуральное число n и целые числа a1, a2, …, an. Найти количество чисел ai(i = 1, 2, …, n), являющихся степенями пятерки. Определить функцию, позволяющую распознавать степени пятерки.

  2. Определить возможность построения треугольника из трех отрез­ков А(i), B(i), C(i), i = 1, ...., n, заданных своими длинами. Для каждого i напечатать А(i), В(i), С(i); тип треугольника (остроугольный, прямоугольный, тупоугольный). Использовать функции.

  3. Решить уравнение dx = c, где d – длина вектора А(N) и с – длина вектора В(N). Написать функцию для вычисления длины вектора.

  4. Дан массив А(N). Выяснить, сколько чисел входит в массив более чем по одному разу. Использовать функции.