Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
pz.IV
0 / 0 / 0
Регистрация: 05.06.2011
Сообщений: 3
#1

Размер вектора - C++

05.06.2011, 11:40. Просмотров 751. Ответов 4
Метки нет (Все метки)

День добрый. У меня проблема.
Нужно объявить вектор, заполнить его случайными числами в диапазоне от -50 до 50, вывести в listbox1. После каждого отрицательного элемента добавить 0 и вывести результат в listbox2.

У меня всё работает, только я не могу взять размер вектора для второго цикла. Когда я ставлю, к примеру, какое нибудь числовое значение, то он работает именно до него, «съедая» оставшиеся элемента вектора. v.size, почему-то, не работает

C++
1
2
3
4
5
6
7
8
9
10
11
12
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
vector <int> v;
for(int i=0; i<10; i++){
int a=rand()%100-50;
v.push_back(a);
listBox1->Items->Add(v[i]);     
}
for(int i=0; i<???; i++){
if(v[i]<0)
v.insert(v.begin+1+i,0);
listBox2->Items->Add(v[i]);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2011, 11:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Размер вектора (C++):

Как можно увеличить размер вектора, который является элементом вектора vector<vector<int>>arr(n, vector <int>) - C++
Написал программу, которая создает вектор 'а' векторов 'b', вектора 'b' содержат 2 числа. Стало интересно, как нужно изменить программу...

Размер вектора - C++
Подскажите функцию для класса vector, которая будет возвращать размер памяти, который занимает вектор.

Размер двумерного вектора - C++
имею такое объявление vector&lt;vector&lt;int&gt;&gt; Mat; vector&lt;int&gt; Vec; инициализируем эту структуру, элементы в Mat хранятся так -...

Получить размер вектора - C++
Привет всем. Столкнулся вот с такой проблемкой: Есть вектор: std :: vector&lt;Ball*&gt; balls; Он находится инициализируется в классе...

Размер вектора и вывод элементов - C++
Объясните почему в функции print размер передаваемого вектора v.size()=0? Соответсвенно не работает цикл for в print(). #include...

Изменить размер трехмерного вектора - C++
Товарищи, у меня есть массив вида vector&lt;vector&lt;int&gt; &gt; rand_num_first(220, vector&lt;double&gt;(3, 0)) (да и трехмерные тоже есть). Я по ходу...

4
diagon
Higher
1930 / 1196 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
05.06.2011, 11:43 #2
C++
1
v.insert(v.begin+1+i,0);
Как у вас это вообще скомпилировалось?
И не v.size, а v.size()
1
pz.IV
0 / 0 / 0
Регистрация: 05.06.2011
Сообщений: 3
05.06.2011, 11:48  [ТС] #3
Хм, и правда. Теперь эта строка бастует.
0
diagon
Higher
1930 / 1196 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
05.06.2011, 11:51 #4
После методов нужно ставить ()
Т.е. должно быть
C++
1
v.insert(v.begin()+1+i,0);
А цикл таким
C++
1
for(int i=0; i<v.size(); i++)
1
pz.IV
0 / 0 / 0
Регистрация: 05.06.2011
Сообщений: 3
05.06.2011, 11:52  [ТС] #5
Спасибо большое, пойду читать матчасть : )
0
05.06.2011, 11:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2011, 11:52
Привет! Вот еще темы с ответами:

Как вывести размер вектора - C++
Скажите, пожалуйста, что нужно добавить в код чтобы вывести размер вектора? Элементы я вывел.. #include &lt;iostream&gt; #include...

Как узнать размер двумерного вектора? - C++
есть квадратная матрица. Для ее хранения создаю динамический массив: double **matrix = new double*; for (int i = 0; i &lt; range; i++) ...

Как изменить размер двумерного вектора? - C++
Объявление у меня такое: std::vector&lt;std::vector&lt;std::size_t&gt;&gt; Data; Изначально размер неизвестен, число строк и столбцов зависит от...

Размер вектора всегда равен нулю - C++
void f (char a, vector &lt;int&gt;ch) { for (int i=0; (a-'0')&lt;10 &amp;&amp; (a-'0'&gt;=0) ; i++) // { ch.push_back(a-'0'); } } ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru