5 / 5 / 2
Регистрация: 21.03.2011
Сообщений: 79
|
|
1 | |
Использование алгоритмов STL11.10.2011, 18:19. Показов 3009. Ответов 23
Метки нет (Все метки)
Здравствуйте.
Ребят пожалуйста решите 2 простенькие задачки, потратьте немного своего времени, очень прошу. Заранее огромное спасибо вам! 1) Дана последовательность целых чисел. Определить, является ли сумма элементов простым числом. 2) Дана последовательность целых чисел. Вставить новый элемент после всех элементов, которые заканчиваются на заданную цифру. Пожалуйста !
0
|
11.10.2011, 18:19 | |
Ответы с готовыми решениями:
23
Использование алгоритмов STL Реализация алгоритмов библиотеки STL Примеры алгоритмов для STL map Разработать программу с использованием трех алгоритмов stl |
magirus
|
11.10.2011, 18:22
#2
|
Не по теме: а стл тут причем?
0
|
5 / 5 / 2
Регистрация: 21.03.2011
Сообщений: 79
|
|
11.10.2011, 18:26 [ТС] | 3 |
в STL вроде как алгоритмы для этого есть, или нет?
библиотека numeric
1
|
Higher
|
|||||||||||
11.10.2011, 18:31 | 4 | ||||||||||
Непонятно, на кой здесь STL, но можно как-то так
1)
Добавлено через 2 минуты Кстати да, тогда можно так
1
|
Заблокирован
|
|
11.10.2011, 18:32 | 5 |
Есть алгоритм для подсчета суммы последовательности. Называется он, если память не изменяет, std::accumulate. Находите с помощью него сумму, а дальше уже сами определяете, является ли сумма простым числом, или нет.
Для второй задачи нужно выбрать разновидность алгоритма std::find для поиска последнего вхождения числа в последовательность с заданной последней цифрой. А затем вставляете туда новое число тем методом, который определен для вашей последовательности. Кстати сказать, вы должны определиться, в каком виде задана ваша последовательность.
1
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
11.10.2011, 18:38 | 6 | |||||
Не по теме: Хе, опоздал :(
1
|
5 / 5 / 2
Регистрация: 21.03.2011
Сообщений: 79
|
|
11.10.2011, 18:40 [ТС] | 7 |
Спасибо огромное друзья !
А вторую задачку не можете тоже написать ?
0
|
Higher
|
||||||
11.10.2011, 18:45 | 9 | |||||
Не придумал, как решить красиво, только так
1
|
5 / 5 / 2
Регистрация: 21.03.2011
Сообщений: 79
|
|
11.10.2011, 19:30 [ТС] | 11 |
Еще вопросец. Для чего в 1ой задаче, в цикле "for (int i = 2, sq = sqrt(x); i <= sq; ++i)" cтоит корень из Х и почему его не воспринимает Вижуал Студио ?
0
|
5 / 5 / 2
Регистрация: 21.03.2011
Сообщений: 79
|
|
11.10.2011, 19:44 [ТС] | 13 |
0
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
|
11.10.2011, 19:51 | 14 |
нет, проблема в том, что вы ей передаете целое число
напишите sqrt((double)x) или sqrt(x+0.0)
0
|
Заблокирован
|
|
11.10.2011, 19:52 | 15 |
Что означает ваше "нет"?!
Квадратный корень там используется для того, что не имеет смысла перебирать все числа, меньше заданного числа, чтобы проверить, что оно является простым. Квадратный корень дает верхнюю оценку того, что, какие делители имеет смысл проверять, чтобы убедиться, что число простое. Добавлено через 36 секунд Какие могут быть проблемы с тем, что функции передается целое число?! Не объясните?!
0
|
11.10.2011, 19:55 | 16 | |||||
0
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
|
11.10.2011, 20:16 | 20 |
Сыроежка, мой компилятор VS2010 говорит мне на sqrt(1) - ambiguous call и std::sqrt(1) тут не помогает, потому что компилятор не может выброать, к какой из типов (float, double, long double) преобразовать неявным преобразованием
И это типичная проблема для компиляторов микрософта Может в других и не так, но у ТС имено студия, а в ней так
1
|
11.10.2011, 20:16 | |
11.10.2011, 20:16 | |
Помогаю со студенческими работами здесь
20
Продемонстрировать работу алгоритмов STL copy, и max_element Сортировка списка строк с использованием стандартных алгоритмов библиотеки STL Как скопировать массив в вектор одной строкой без использования циклов и алгоритмов STL? Использование STL - C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |