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

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

Войти
Регистрация
Восстановить пароль
 
BlueBerry
0 / 0 / 0
Регистрация: 08.04.2010
Сообщений: 10
#1

Хранение в контейнере deque целых чисел и проверка основных операций - C++

03.11.2010, 15:59. Просмотров 557. Ответов 3
Метки нет (Все метки)

Написала код:
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
#include "stdafx.h"
#include <iostream>
#include <deque> 
 
using namespace std; 
 
void show (const char *str, const deque<int> &Dq) 
{
    cout << str << ":" << endl;
    for (deque<int>::const_iterator ic = Dq.begin(); ic != Dq.end(); ++ic) 
    cout << *ic << " "; 
    cout << endl << endl; 
};
int main()
{
    deque<int> Dq; // имя контейнера deque для хранения в нем целых чисел
    deque<int>::iterator i; // итератор в контейнере deque с целыми числами 
    deque<int>::reverse_iterator ir; // обратный итератор в контейнере deque с целыми числами
    cout << "SIZE - dlya pustoy ocheredi: \n" << Dq.size() << endl; 
    // Ввод исходных данных и включение их в двустороннюю очередь
    cout << "Vvedite kolichestvo elementov v ocheredi\n"; 
    int x, x1;
    cin >> x; 
    cout << "Vvedite ochered\n"; 
    for ( int x2=1; x2<=x; x2++)
    { 
        cin >> x1; 
        Dq.push_back(x1);
    };
    cout << "SIZE - dlya zapolnennoy ocheredi: \n" << Dq.size() << endl;
    show("Ishodnaya ochered", Dq); 
    // Вставка элемента в начало очереди 
    cout << "Metod push_front. Vvedite element:\n"; 
    cin >> x1; 
    Dq.push_front(x1);
    // Вставка целого числа 2 вторым элементом в очереди
    cout << "Metod insert. Vvodim chislo 2 - element #2\n";
    i = Dq.begin(); 
    Dq.insert(++i, 2); 
    // Показать на экране контейнер после вставки нового элемента (число 100) предпоследним в конец очереди
    show("Posle vstavki 100 pered poslednim", Dq); 
    // Удалить первый и последний элементы в контейнере 
    i = Dq.begin(); x = *i; Dq.pop_front(); 
    cout << "Udalili iz nachala " << x << endl; 
    i = Dq.end(); x = *--i; Dq.pop_back(); 
    cout << "Udalili s konca " << x << endl; 
    // Показать на экране контейнер после удаления первого и последнего элемента 
    show("Ochered posle udalenija", Dq); 
    // Поставить элементы в контейнере в обратной последовательности и показать на экране полученный результат 
    cout << "Reversivnyi sposob raspechatki -reverse_iterator \n"; 
    for (deque<int>::reverse_iterator pr = Dq.rbegin(); pr != Dq.rend(); ++pr) cout << *pr << " ";
    return 0;
};
-полностью рабочий, компилит..
Но: после того, как я ввожу элемент для вставки на начало очереди (33-34 строчки), окно закрывается...
в чем проблема?...
Заранее спасибо всем, кто попытается помочь!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2010, 15:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Хранение в контейнере deque целых чисел и проверка основных операций (C++):

Хранение сложных классов в контейнере - C++
Всем, привет. Прошу помощи в одной проблемке. В общем у нас должны быть два контейнера. Один должен хранить объекты по значению, а...

Хранение в контейнере обьектов разных классов - C++
Здраствуйте. Есть небольшая иерархия классов, в вершине которой стоит абстрактный класс vehicle, а от него наследуеться пару классов....

перегрузка операций основных типов - C++
Здорова! Опять ничо не получается. Пытаюсь разобраться с перегрузкой операций возьмем класс int от я записал допустим int a=4; ...

Программа основных операций над матрицами - C++
Помогите пожалуйста, нужно написать программу основных операций над матрицами в С++ Транспортировку сделала, дальше всё никак+это ведь...

Длинная арифметика: реализация основных арифметических операций (ООП) - C++
общие требования В независимости от индивидуального варианта должны быть реализованы следующие возможности: 1. Реализация методов...

Программа для проведения основных операций над матрицами - C++
Парни привет всем нужна помощь мне задали сделать курсовую на с++ я в нем не шарю теорию я сделал а вот дело дошло до проги я незнаю как...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
03.11.2010, 16:04 #2
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
#include "stdafx.h"
#include <iostream>
#include <deque> 
 
using namespace std; 
 
void show (const char *str, const deque<int> &Dq) 
{
        cout << str << ":" << endl;
        for (deque<int>::const_iterator ic = Dq.begin(); ic != Dq.end(); ++ic) 
        cout << *ic << " "; 
        cout << endl << endl; 
};
int main()
{
        deque<int> Dq; // èìÿ ГЄГ®Г*ГІГҐГ©Г*ГҐГ°Г* deque äëÿ õðГ*Г*ГҐГ*ГЁГї Гў Г*ГҐГ¬ öåëûõ Г·ГЁГ±ГҐГ«
        deque<int>::iterator i; // ГЁГІГҐГ°Г*òîð Гў ГЄГ®Г*ГІГҐГ©Г*åðå deque Г± öåëûìè Г·ГЁГ±Г«Г*ìè 
        deque<int>::reverse_iterator ir; // îáðГ*ГІГ*ûé ГЁГІГҐГ°Г*òîð Гў ГЄГ®Г*ГІГҐГ©Г*åðå deque Г± öåëûìè Г·ГЁГ±Г«Г*ìè
        cout << "SIZE - dlya pustoy ocheredi: \n" << Dq.size() << endl; 
        // Ââîä èñõîäГ*ûõ Г¤Г*Г*Г*ûõ ГЁ âêëþ÷åГ*ГЁГҐ ГЁГµ Гў äâóñòîðîГ*Г*ГѕГѕ î÷åðåäü
        cout << "Vvedite kolichestvo elementov v ocheredi\n"; 
        int x, x1;
        cin >> x; 
        cout << "Vvedite ochered\n"; 
        for ( int x2=1; x2<=x; x2++)
        { 
                cin >> x1; 
                Dq.push_back(x1);
        };
        cout << "SIZE - dlya zapolnennoy ocheredi: \n" << Dq.size() << endl;
        show("Ishodnaya ochered", Dq); 
        // ÂñòГ*ГўГЄГ* ýëåìåГ*ГІГ* Гў Г*Г*Г·Г*ëî î÷åðåäè 
        cout << "Metod push_front. Vvedite element:\n"; 
        cin >> x1; 
        Dq.push_front(x1);
        // ÂñòГ*ГўГЄГ* öåëîãî Г·ГЁГ±Г«Г* 2 âòîðûì ýëåìåГ*òîì Гў î÷åðåäè
        cout << "Metod insert. Vvodim chislo 2 - element #2\n";
        i = Dq.begin(); 
        Dq.insert(++i, 2); 
        // ÏîêГ*Г§Г*ГІГј Г*Г* ГЅГЄГ°Г*Г*ГҐ ГЄГ®Г*ГІГҐГ©Г*ГҐГ° ïîñëå ГўГ±ГІГ*ГўГЄГЁ Г*îâîãî ýëåìåГ*ГІГ* (÷èñëî 100) ïðåäïîñëåäГ*ГЁГ¬ Гў ГЄГ®Г*ГҐГ¶ î÷åðåäè
        show("Posle vstavki 100 pered poslednim", Dq); 
        // ÓäГ*ëèòü ïåðâûé ГЁ ïîñëåäГ*ГЁГ© ýëåìåГ*ГІГ» Гў ГЄГ®Г*ГІГҐГ©Г*åðå 
        i = Dq.begin(); x = *i; Dq.pop_front(); 
        cout << "Udalili iz nachala " << x << endl; 
        i = Dq.end(); x = *--i; Dq.pop_back(); 
        cout << "Udalili s konca " << x << endl; 
        // ÏîêГ*Г§Г*ГІГј Г*Г* ГЅГЄГ°Г*Г*ГҐ ГЄГ®Г*ГІГҐГ©Г*ГҐГ° ïîñëå ГіГ¤Г*ëåГ*ГЁГї ïåðâîãî ГЁ ïîñëåäГ*ГҐГЈГ® ýëåìåГ*ГІГ* 
        show("Ochered posle udalenija", Dq); 
        // ÏîñòГ*ГўГЁГІГј ýëåìåГ*ГІГ» Гў ГЄГ®Г*ГІГҐГ©Г*åðå Гў îáðГ*ГІГ*îé ïîñëåäîâГ*òåëüГ*îñòè ГЁ ïîêГ*Г§Г*ГІГј Г*Г* ГЅГЄГ°Г*Г*ГҐ ïîëó÷åГ*Г*ûé ðåçóëüòГ*ГІ 
        cout << "Reversivnyi sposob raspechatki -reverse_iterator \n"; 
        for (deque<int>::reverse_iterator pr = Dq.rbegin(); pr != Dq.rend(); ++pr) cout << *pr << " ";
        //return 0;
        cin.get();
        cin.get();
};
BlueBerry
0 / 0 / 0
Регистрация: 08.04.2010
Сообщений: 10
03.11.2010, 16:20  [ТС] #3
надо же..
мелочь такая)) а все пошло, как надо ^^

спасибки)
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
03.11.2010, 16:32 #4
пожалуйста
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.11.2010, 16:32
Привет! Вот еще темы с ответами:

Перегрузка операций для класса целых двоичных чисел в виде строк - C++
нужна ваша помощь, пожалуйста Создать класс, который запоминает целые двоичные числа в виде строк. Перегрузить операции +, ++ и +=.

Написать функции для выполнения операций над одномерным массивом целых чисел - C++
Написать функции для выполнения операций над одномерным массивом целых чисел: • определить среднее арифметическое отрицательных элементов...

Реализовать абстрактную таблицу и дать оценку времени выполнения основных операций - C++
Здравствуйте, дали задание реализовать абстрактную таблицу и дать оценку времени выполнения основных операций. Оценку дать думаю не состоит...

Рекурсия функции. Сумма целых чисел n и m, в которой из арифметических операций используется только прибавление и вычисление единицы - C++
Напишите рекурсивную функцию, вычисляющую сумму целых чисел n и m, в которой из арифметических операций используется только прибавление и...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.11.2010, 16:32
Ответ Создать тему
Опции темы

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