![]() |
Модераторы: Alx, Fixin |
![]() ![]() ![]() |
|
CppDevelopeR |
|
|||
![]() Experienced Expert ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 7.1.2008 Где: Moscow-City Репутация: нет Всего: 9 |
довольно таки интересные задачи по массивам:
(A) Напишите функцию int Search (double A[], int n, double x), которая находит в массиве double A[n] элемент, значение которого равно x. Функция возвращает индекс найденного элемента или -1, если такого элемента в массиве нет. Программа получает на вход количество элементов в массиве n, затем n целых чисел – элементы массива, затем число x и должна вывести индекс найденного элемента или число -1, если данный элемент в массиве отсутствует. (B) Напишите функцию int CountMax (double A[], int n), которая подсчитывает, сколько раз в массиве встречается значение, являющееся максимальным. Функция должна выполнять однократный просмотр массива. Программа получает на вход количество элементов в массиве n, затем n целых чисел – элементы массива и должна вывести единственное целое число – сколько раз в массиве встречается значение, равное максимальному. © Дан массив, состоящий из различных целых чисел. Определите второй по величине элемент этого массива. Напишите для этого функцию double SecondMax (double A[], int n). Функция должна выполнять однократный просмотр массива. (D) Напишите функцию double SecondMax (double A[], int n), которая находит второй по величине элемент в массиве – тот элемент, который будет наибольшим, если из массива удалить наибольший элемент, то есть для массивов {1, 2, 3, 4} и {1, 2, 3, 3} вторым по величине элементом будет 3. Функция должна выполнять однократный просмотр массива. (E) Напишите функцию double SecondMaxValue (double A[], int n), которая находит второе по величине значение в массиве – значение элемента, который будет наибольшим, если из массива удалить наибольший элемент и все ему равные, то есть для массива {1, 4, 3, 4} вторым по величине значением будет 3. (F) Даны два отсортированных массива: int A[n] и int B[m]. Объедините их в один отсортированный массив int C[n+m], то есть если A={1, 4, 6, 7}, B={2, 3, 5}, то C={1, 2, 3, 4, 5, 6, 7}. Оформите алгоритм в виде функции void merge (int A[], int n, int B[], int m, int C[]). Время работы алгоритма должно быть порядка n+m действий. Формат входных данных: число n, затем n возрастающих чисел – элементы первого массива, число m, затем m возрастающих чисел – элементы второго массива. Программа должна вывести n+m чисел, полученных объединением двух массивов в порядке возрастания. Пример: Вход 3 1 5 7 4 2 4 4 5 Выход 1 2 4 4 5 5 7 ![]() ![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Интересные и занимательные задачи по программированию | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |