Форум программистов, компьютерный форум CyberForum.ru

Работа с vector-ом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Линейный двунаправленный список http://www.cyberforum.ru/cpp-beginners/thread281609.html
Помоги написать. Вот такое условие: Линейный двунаправленный список, упорядоченный по убыванию. Стек с возможностью перемещения произвольного элемента в вершину.
C++ Из-за чего могла возникнуть такая ошибка? Через некоторое время работы моя программа падает с такой ошибкой: terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Можете подсказать, чтобы это могло быть и в какую сторону нужно капать? http://www.cyberforum.ru/cpp-beginners/thread281549.html
C++ что значит "поставить контроль памяти"? (в динамическом массиве)
подскажите, пожалуйста. программа работает, но не совсем понял чего требует.
C++ Перевод кода из Pascal/VB в C++
Помогите пожалуйста перевести код в С++. Сдавать уже скоро, и я никак не приложу ума как это все сотворить в С++ uses crt; type fff=file of char; var f,g:fff; procedure vvod(var f:fff); var c:string; i:integer; a:char;
C++ Код. http://www.cyberforum.ru/cpp-beginners/thread281511.html
Ich gruesse euch! Куда можно скинуть код? Целью является то, чтобы другие программисты им попользовались и выявили, по-возможности, ошибки, предложили улучшения.
C++ проверка на пустоту строки подскажите как сделать чтобы проверялось еще одно условие if((ff==' ') || (ff=='')) то есть надо чтобы проверялось заполнена строка или нет в противном случае заполнить её _ const rt=100; char ggh(char ff) { cin.sync(); cin.getline(ff, 100); for(int z33=0;z33<rt;z33++) { подробнее

Показать сообщение отдельно
REALIST07
Автор FAQ
Автор FAQ
 Аватар для REALIST07
174 / 174 / 13
Регистрация: 11.06.2010
Сообщений: 932
22.04.2011, 21:27  [ТС]     Работа с vector-ом
Не получается все равно программа
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
/* выполнить следующее:
1. Создать объект-контейнер в соответствии с вариантом задания и заполнить его данными, тип которых определяется 
вариантом задания.
2.    Просмотреть контейнер.
3.    Изменить контейнер, удалив из него одни элементы и заменив другие.
4.    Просмотреть контейнер, используя для доступа к его элементам итераторы.
5.    Создать второй контейнер этого же класса и заполнить его данными того же типа, что и первый контейнер.
6.    Изменить первый контейнер, удалив из него n элементов после заданного и добавив затем в него все элементы из 
второго контейнера.
7.    Просмотреть первый и второй контейнеры.
 
Тип контейнера: vector
Встроенный тип данных: double
*/
 
#include "stdafx.h"
#include <vector>
#include <iostream>
#include <algorithm>
#include <time.h>
using namespace std;
void main()
{    srand(unsigned(time(NULL)));
    setlocale(LC_ALL, "Russian");
    /*
    1. Создать объект-контейнер в соответствии с вариантом задания и заполнить его данными, тип которых определяется 
    вариантом задания.
    */
    vector <double>::iterator cont1_Iter;
 
    // Create an empty multiset ms0 of key type integer
    vector <double> cont1;
    const int MAX = 10;
    for(int i=0; i<MAX; i++)
        cont1.push_back((rand()%50)/10.0);
    cout<<endl;
    
    //2.    Просмотреть контейнер.
    cout << "Контейнер 1 =";
    for ( cont1_Iter = cont1.begin( ); cont1_Iter != cont1.end( ); cont1_Iter++ )
        cout << " " << *cont1_Iter;
    cout<<endl;
 
   //3.    Изменить контейнер, удалив из него одни элементы и заменив другие.
    cont1_Iter = ++cont1.begin();
    cont1.erase(cont1_Iter);
    cont1.push_back(10.001);
    cout<<endl;
 
    //4.    Просмотреть контейнер, используя для доступа к его элементам итераторы.
    cout<<"Контейнер№1 после удаления и вставки элемента: \n";
    cout << "Cont1 =";
    for ( cont1_Iter= cont1.begin( ); cont1_Iter != cont1.end( ); cont1_Iter++ )
        cout << " " << *cont1_Iter;
    cout<<endl;
    
    //5.    Создать второй контейнер этого же класса и заполнить его данными того же типа, что и первый контейнер.
    vector <double>::iterator cont2_Iter;
    vector <double> cont2( cont1 );
    //    Просмотреть контейнер, используя для доступа к его элементам итераторы.
    cout << "Контейнер №2 =";
    for ( cont2_Iter = cont2.begin( ); cont2_Iter != cont2.end( ); cont2_Iter++ )
        cout << " " << *cont2_Iter;
    cout<<endl;
 
    /*6.    Изменить первый контейнер, удалив из него n элементов после заданного и добавив затем в него все элементы из 
        второго контейнера.
    */
    cout<<"Введите кол-во эл-ов, которые нужно удалить из 1-го контейнера: ";
    int n;
    cin>>n;
    cout<<"Введите значение элемента, после которого нужно удалить "<<n<<" элементов: ";
    double k;
    cin>>k;
    vector <double>::iterator tmp;
    
    cont1_Iter = find( cont1.begin(), cont2.end(), k);
    if (cont1_Iter == cont1.end())
        cout<<"В векторе нет такого элемента!";
    else {
        for(int i=0; (i<n) && (cont1_Iter!= cont1.end( )); i++){
            tmp=cont1_Iter;
            cont1_Iter++;
            cont1.erase(tmp);
        }
    }
    
    cout<<endl;
 
    //7.    Просмотреть первый и второй контейнеры.
    //    Просмотреть контейнер, используя для доступа к его элементам итераторы.
    cout << "Контейнер №1 =";
    for ( cont1_Iter = cont1.begin( ); cont1_Iter != cont1.end( ); cont1_Iter++ )
        cout << " " << *cont1_Iter;
    cout<<endl;
    //    Просмотреть контейнер, используя для доступа к его элементам итераторы.
    cout << "Контейнер №2 =";
    for ( cont2_Iter = cont2.begin( ); cont2_Iter != cont2.end( ); cont2_Iter++ )
        cout << " " << *cont2_Iter;
    cout<<endl;
    cont1.clear();
    cont2.clear();
    
    system("pause");
    return ;
}
 
Текущее время: 02:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru