Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Вставить слово после последнего вхождения заданного слова https://www.cyberforum.ru/ cpp-beginners/ thread1761197.html
Вставить слово после последнего вхождения заданного слова. Решение задачи – функция. Текст и слова заданы списком символов, т.е. в каждой ячейке, так сказать, находится один символ
C++ Заменить в строке все цифры на пробелы
Понимаю что я наверное дурак, но не могли бы помочь с программой на С++ Вводится строка. Заменить в строке все цифры на пробелы В С++ полный нуб, был бы очень признателен вашей помощи, очень срочно надо сделать задание, но все не удается (
C++ Поиздеавться над бинарным поиском Вот у меня задание, написать алгоритм бинарного поиска числа в отсортированном по возрастанию массиве. Вот я написал. вроде бы все потестил. Но по закону подлости преподаватель находит бреши в программе. Пожалуйста поиздевайтесь над этой программой: int double_search(int i, int size, int right, int left, int *var) { int position = left + (right - left) / 2; if (var == i) return... https://www.cyberforum.ru/ cpp-beginners/ thread1761188.html C++ Программа не работает в RAD Studio 10 Seattle https://www.cyberforum.ru/ cpp-beginners/ thread1761181.html
не работает в rad studio 10 seattle прога, в чем может быть проблема ребята? можете отредактировать прогу, кому не сложно, что бы заработало , а то выдает ошибки какие-то #include <iostream> #include <stdio.h> #pragma hdrstop #pragma argsused int main()
Указатели,нужно разобраться в программе C++
Всем добро времени суток. Учился работать с базами данных по этому видеоуроку: https://www.youtube.com/watch?v=F8aciqcO_Cg вот конечная программа: https://mega.nz/#F!NlACjTiY!zIoNvlCwVinNuWgoSwoGqg Я ее переделывал под свои нужды, вроде во всем разобрался только не пойму как работают указатели в проге. А конкретнее *data и *tmp в 27 строке not_database.h и в 47 not_database.cpp...
C++ Домашний бюджет и инфляция https://www.cyberforum.ru/ cpp-beginners/ thread1761123.html
Помогите написать программу для решения такой задачи - составьте список основных продуктов питания, покупаемых в вашей семье за какой-то промежуток времени (неделя, месяц): хлеб, молоко, масло, сахар, мясо и т.п. Разработайте таблицу для примерной оценки инфляции за определенный период времени (две недели, два месяца, — возможно, несмежных). Таблица должна содержать следующие столбцы: ...
C++ Специфика описания методов класса и инициализации объектов на примере класса Date Создайте класс Date, который будет содержать информацию о дате (день, месяц, год). С помощью механизма перегрузки операторов, определите операцию разности двух дат (результат в виде количества дней между датами), а также операцию увеличения даты на определенное количество дней. https://www.cyberforum.ru/ cpp-beginners/ thread1761060.html Массив структур и все такое C++
В чем суть: Существует описание структуры struct student { string NAME; int GROUP; int SES; };
C++ Обработка ошибок #include <iostream> using namespace std; class fraction { private: int num; // числитель int den; // знаменатель public: fraction( ) : num( 0 ), den( 1 ) { } https://www.cyberforum.ru/ cpp-beginners/ thread1760998.html C++ Массив объектов класса https://www.cyberforum.ru/ cpp-beginners/ thread1760935.html
Всем привет! Я не так давно познакомился с классами в C++, прочитав несколько статей по этой теме решил попрактиковаться. Есть задача: нужно реализовать класс "Зоомагазин", в котором будут конструкторы (по умолчанию, с параметрами, копирования); деструктор; также нужно продумать функционал класса и написать соответствующие методы. Я сделал список операций, доступных пользователю, одна из них -...
Работа со строками ( поиск, проверка) C++
Подскажите, как быстрее сделать? Какие вообще есть быстрые способы решения? Моё решение выходить за границу времени. Слова (Время: 1 сек. Память: 16 Мб Сложность: 48%) Для шифрования слов с ними можно производить множество различных операций. Например, интересна такая операция: первые несколько букв заданного слова приписываются к его концу в обратном порядке, после чего удаляются из начала...
C++ Как сделать красиво? https://www.cyberforum.ru/ cpp-beginners/ thread1760925.html
Как реализовать красиво и удобно функционал string to enum ( чтобы по стрингу брать элемент из енума) , с возможностью добавлять новые элементы к enum только в одном месте? есть у меня такой вариант: class A { public: enum class TYPE { enum1, enum2,
0 / 0 / 0
Регистрация: 07.11.2014
Сообщений: 16
0

Функция удаления для очереди - C++ - Ответ 9264695

12.06.2016, 21:15. Показов 1412. Ответов 0
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Как правильно будет здесь применить удаление... Подскажите пожалуйста

"IN.h"
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
107
108
109
110
111
112
113
#include <iostream>
#include<locale.h>
#include <cassert> 
 
template <class T>
class Queue
{
    T *queue; // массив (указатель на очередь)
    int ssize; // расзмер массива
    int top; // последний введеный
    T *pop; //первый введеный
    int elemCT; // счетчик элементов
public:
    //конструктор очеди с параметром - размером
    Queue(int size)
    {
        ssize = size;
        queue = new T[ssize];
        std :: cout << "Размер очереди = " << size << std :: endl;
        top = 0;
    }
    //Деструктор очереди
    ~Queue()
    {
        delete []queue;
    }
    //Ввод элемента
    void push(T a)
    {
        if(top < ssize)
        {
            queue[top++] = a;
        }
        else
        {
            cout << "Очередь заполненна" << endl << "" << endl;
            for(int i = 0; i < ssize; i++)
            {
                queue[i] = queue[i+1];
            }
            queue[ssize-1] = a;
        }
    }
 
    //Класс итератора
    class iterator_q
    {
        Queue& q; // указатель на элемент
        int index; // индекс элемента
    public:
        // конструктор итератора с одним параметром
        iterator_q(Queue& is) : q(is), index(0){}
        // конструктор с двумя параметрами
        iterator_q(Queue& is, bool) : q(is), index(q.top){}
        // проверка выхода в конец очереди
        bool operator == (const iterator_q& rv){return index == rv.index;}
        bool operator !=(const iterator_q& rv){return index !=rv.index;}
        // префксно Итерирует итератор на 1
        T operator ++()
        {
            if (index < q.top)
                return q.queue[++index];
            else
                cout << "Очередь заполненна";
        }
        // постфиксно итерирует на 1
        T operator++(int)
        {
            if (index < q.top)
                return q.queue[index++];
            else
                cout << "Очередь заполненна";
        }
        // перегружаем адресацию
        T& operator*() const
        {
            return q.queue[index];
        }
    };
    // Начало очереди
    iterator_q begin()
    {
        return iterator_q (*this);
    }
    // Конец очереди
    iterator_q end()
    {
        return iterator_q (*this,true);
    }
    //удаление
    iterator_q pop_front()
    {
        //delete iterator_q(*this);
         assert( top > 0 );
         queue[--top];
         //return;
    }
};
// Проверка на ввод числа
int check_int()
{
    int i, flag = 0;
    char ch[10];
    std :: cin >> i;
    flag = std :: cin.rdstate();
    if (flag& std :: ios :: failbit)
    {
        std :: cin.clear();
        std :: cin >> ch;
        throw 1;
    }
    return i;
}
"Source.cpp"
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
#include "in.h"
#include<locale.h>
 
using namespace std;
void main()
{
    setlocale(LC_CTYPE, "");
    int flag = 0;
    int index_work, size;
    // Размер очереди
    do
    {
        try
        {
            flag = 0;
            cout << "Введите размер очереди: ";
            size = check_int(); // проверить вводимый символ
        }
        catch(int)
        {
            flag = 1;
            cout << "Ошибка!!! " << endl;
        }
    }
    while(flag == 1);
    Queue <int> queue_w(size); // создание очереди с заданным размером
    int o = 0;
    // Основной цикл
    while(true)
    {
        Queue<int> :: iterator_q start = queue_w.begin();
        cout << "1. Добавить элемент  " << endl
            << "2. Найти элемент " << endl 
            << "3. Удалить элемент из очереди" << endl
            << "4. Выход "<<endl;
        do
        {
            try
            {
                flag = 0;
                cout << "Выберете действие: ";
                index_work = check_int(); // проверить вводимый символ
            }
            catch(int)
            {
                flag = 1;
                cout << "Ошибка!!! " << endl;
            }
        }
        while(flag == 1);
        // ДОБАВЛЕНЕ
        if(index_work == 1)
        {
            int a;
            cout << "Добавить элемент " << endl;
            cout << "Введите элемент: " << endl;
            cin >> a;
            queue_w.push(a);
            Queue<int> :: iterator_q end = queue_w.end();
            cout << "Очередь: " << endl;
            while(start != end)
            {
                cout << "< " << *start << " >" << endl;
                start++;
            }
        }else
        {
            // ПОИСК
            if(index_work == 2)
            {
                cout << "Найти элемент " << endl;
                cout << "Введите элемент: ";
                int a, index_check = 0, index_stay;
                cin >> a;
                Queue<int> :: iterator_q end = queue_w.end();
                while(start != end)
                {
                    if(a == *start)
                    {
                        index_check++;
                        index_stay = (*start);
                    }
                    start++;
                }
                if(index_check > 0)
                    cout << "Заданный элемент" << a << " найден " << index_stay << endl;
            }else
            {
                // УДАЛЕНИЕ
                Queue<char> myQueue(14);
                if(index_work == 3)
                {
                    cout << "Удалить элемент " << endl;
                    myQueue.pop_front();
                }
                else
                {
                    if(index_work == 4)
                        break;
                }
            }
        }
    }
}


Вернуться к обсуждению:
Функция удаления для очереди C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2016, 21:15
Готовые ответы и решения:

Функция для удаления выоборочного элемента из очереди
Я удаляю выборочный элемент, вывожу элементы очереди на экран выводятся элементы, которые стояли до...

Освобождение памяти (функция удаления элемента Очереди)
Здравствуйте, Есть класс двусвязного списка и производный от него класс Очередь. Почти всё работает...

Функция для удаления элемента
Есть ли функция в си++ для удаления элемента,например из текста?) Запрещено создавать темы с...

Функция для удаления слова из строки
Доброго времени суток, господа! Столкнулся с проблемой написания функции для удаления слова из...

0
12.06.2016, 21:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.06.2016, 21:15
Помогаю со студенческими работами здесь

Функция для удаления строки из двумерного массива
Массив должен передаваться в функцию как параметр. Написать функцию для удаления строки из...

Функция для удаления всех знаков препинания
Есть набор строк, написать функцию, которая принимает на вход этот набор строк и возвращает новый...

Функция для удаления из массива простых чисел
Написать функцию которая удаляет все простые числа из массива X.И вывести массив без простых чисел.

Функция для удаления элемента в двумерном динамическом массиве. В чем ошибка?
функция для удаления элемента в двум дин массиве (пока только часть в которой указывается какой...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru