0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
||||||
1 | ||||||
После каждого отрицательного числа вставьте в вектор отрицательное число -20 и выведите содержимое вектора05.06.2016, 13:33. Показов 3779. Ответов 13
Метки нет Все метки)
(
После каждого отрицательного числа вставьте в вектор отрицательное число
-20 и выведите содержимое вектора на экран не пойму как сделать, если я делаю следующее число -20, то у меня всё время будет выполнятся условие vec[i]<0 и соответственно выводится -20.
0
|
|
05.06.2016, 13:33 | |
Ответы с готовыми решениями:
13
Умножить каждое число на первое отрицательное число. Добавив к каждому числу половину последнего отрицательного числа
После каждого слова вставьте слово «Бум!» и выведите список на консоль в одну строку через пробел Вставить 1 после каждого четного отрицательного числа и 0 после каждого нечетного положительного исходного массива |
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 14:08 | 2 | |||||
А не присвойте значение -20 следующему элементу. Т.е. используйте
vec.insert() А, чтобы не учитывать вставленное число, инкрементируйте i. Итого
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
|
05.06.2016, 14:19 [ТС] | 3 |
всё работает только я думаю это неправильный ответ, ведь в задании сказано ПОСЛЕ отрицательного элемента, а не ВМЕСТО
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 14:24 | 4 | |||||
Где неправильный ответ?
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
|
05.06.2016, 14:38 [ТС] | 5 |
а как удалить из вектора все отрицательные числа, отличные от -20.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 14:42 | 6 | |||||
blocker147,
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
|||||||||||
05.06.2016, 14:44 [ТС] | 7 | ||||||||||
а есть вариант как это сделать через
и ещё не пойму почему у меня не хочет выводить элементы вектора:
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
05.06.2016, 14:47 | 8 |
Не от туда скопировал, см пред. сообщение.
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
|||||||||||
05.06.2016, 14:52 [ТС] | 9 | ||||||||||
вот так сработало
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 14:58 | 10 | |||||
Если так уж хочется через цикл:
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
||||||
05.06.2016, 15:24 [ТС] | 11 | |||||
вопрос по поводу этой строки
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 15:31 | 12 | |||||
Можно по-разному (for(auto i:vec), for(auto it=vec.begin(); it!=vec.end(); it++)). По аналогии с вашими циклами:
1
|
0 / 0 / 5
Регистрация: 14.12.2015
Сообщений: 186
|
|
05.06.2016, 15:42 [ТС] | 13 |
В STL имеется алгоритм void reverse( Iterator _First, Iterator
_Last ), который можно применять к контейнерами с произвольным доступом для изменения на обратный порядка следования его элеменов, заключенных в интервале First … Last. Примените его для того, чтобы реверсировать пять средних элементов вашего вектора.
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||
05.06.2016, 15:49 | 14 | |||||
blocker147, Ну так примените.
1
|
05.06.2016, 15:49 | |
Помогаю со студенческими работами здесь
14
Как переделать программу, чтобы после каждого отрицательного числа вставлять z, а не только после первого
Найти отрицательное число и после отрицательное число заменить все элемент на нули Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |