Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/34: Рейтинг темы: голосов - 34, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 69

массивы через вектор

25.02.2011, 21:15. Показов 6921. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
знаю что эти задачи разбирались на форуме,но мне нужно что бы через вектр было сделано.спасибо

1.найти произведение элементов массива с четными номерами
2.найти сумму элементов массива расположеных между первым и последним нулевыми элементами
преобразовать массив таким образом что бы сначало располагались все положительные а потом все отрицательные(элементы равны 0 считать положительными)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.02.2011, 21:15
Ответы с готовыми решениями:

Массивы (вектор)
Помогите с задачкой! Голова не соображает вообще. Описать статический массив. Реализовать 3 способа инициализации массива (пользователь...

Динамические массивы (вектор)
Описать динамический массив. Реализовать 2 способа ИНИЦИАЛИЗАЦИИ массива (пользователь должен сам выбрать способ, сделать меню): -...

Классы, массивы, вектор
всем привет, такая проблемка возникла, выхожу за границы массива, новичек в шарпах. class MyVector { private...

3
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
25.02.2011, 21:38
Работа с векторами точно такая же, как и с массивами. Разница в том, что можно динамически добавлять и удалять элементы.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <vector>
#include <conio.h> // для getch()
 
using namespace std;
 
int main(int argc, char *argv[])
{
    // создание вектора int из 15 элементов
    std::vector<int> vec( 15 );
    
    // заполнение существующих элементов как у обычного массива
    for( int i = 0; i < 15; i++ )
       vec[i] = i;
    
    // добавление элементов в конец
    vec.push_back( 404 );
    vec.push_back( 510 );
    
    // удаление пятого элемента
    std::vector<int>::iterator it = vec.begin();
    for( int i = 0; i < 5; i++ )
       it++;
    vec.erase( it );
    
    // вывод элементов
    for( int i = 0; i < 16; i++ )
       cout << vec[i] << "; ";
    
    cout << endl;
    
    // можно так:
    for( it = vec.begin(); it != vec.end(); it++ )
       cout << *it << "; ";
              
    getch();
    
    return 0;
}
1
 Аватар для igorrr37
2872 / 2019 / 991
Регистрация: 21.12.2010
Сообщений: 3,754
Записей в блоге: 9
25.02.2011, 23:12
преобразовать массив таким образом что бы сначало располагались все положительные а потом все отрицательные(элементы равны 0 считать положительными)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream>
#include<vector>
#include<algorithm>
#include<iterator>
 
int main(){
    std::vector<int>con{5,-7,0,0,-6,-6,18,42,42,-1};
    std::sort(con.begin(), con.end(), [](int a, int b){
        if(a>=0&&b<0) return true;
        else return false;
    });
    std::copy(con.begin(), con.end(), std::ostream_iterator<int>(std::cout, "  "));
}
1
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
25.02.2011, 23:41
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от skaska100 Посмотреть сообщение
произведение элементов массива с четными номерами
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <vector>
#include <numeric>
#include <iostream>
#include <iterator>
#include <algorithm>
#include <functional>
 
int random()
{
    return std::rand() % 10 + 1;
}
 
template<typename _InIt, typename _Ty, typename _Func1, typename _Func2>
_Ty accumulate_if(_InIt _First, _InIt _Last, _Ty _Val, _Func1 F1, _Func2 F2){
        for(; _First != _Last; ++_First)
                if( F2(*_First) )
                        _Val = F1(_Val, *_First); 
        return _Val;
}
 
int main()
{
    std::vector<int> v (10);
    std::generate(v.begin(), v.end(), random);
    
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl
              << "The product of all elements in vector is: " 
              << accumulate_if(v.begin(), v.end(), 1, std::multiplies<int>(), std::not1(std::bind2nd(std::modulus<int>(), 2)))
              << std::endl;
 
    return 0;
}
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.02.2011, 23:41
Помогаю со студенческими работами здесь

Массивы, найти вектор
Помогите пожалуйста, при компиляции в полученном масиве 0. Где ошибка? Вот условие: Даны натуральное число n и действительные числа y1...

двухмерные массивы (Сформулировать вектор)
Дан массив А(n,n).Сформулировать вектор B(k) из a(i,j)&lt;0. На печать вывести исходный массив, полученный вектор и его размерность.

Построить вектор(одномерные массивы)
Дано: n \epsilon N; x,y \epsilon{R}^{n} . Построить вектор z, содержащий сначала положительные координаты вектора x,а затем положительные...

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

Разработка класса, содержающего структуры и массивы типа вектор
Доброе время суток! Стал разбираться с классами и столкнулся с некоторыми сложностями: Чисто тестовый код (не претендует на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru