Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
8 / 5 / 3
Регистрация: 17.02.2020
Сообщений: 38

Компилятор выдаёт ошибку app.exe has triggered a breakpoint

18.02.2020, 14:18. Показов 2195. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При завершении работы программы выдаёт ошибку app.exe has triggered a breakpoint, при этом все функции выполнились, подскажите пожалуйста что делать. Работаю на Visual Studio 2015.
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
#include "stdafx.h" 
#include <iostream.>
using namespace std;
 
 
struct Node                             //Структура, являющаяся звеном списка
{
    int x;                             //Значение x будет передаваться в список
    Node* Next, *Prev;                 //Указатели на адреса следующего и предыдущего элементов списка
};
 
class List                              //Создаем тип данных Список
{
    Node* Head, *Tail;                 //Указатели на адреса начала списка и его конца
public:
    List() :Head(NULL), Tail(NULL) {};    //Инициализируем адреса как пустые
    ~List();                           //Прототип деструктора
    void Show();                       //Прототип функции отображения списка на экране
    void Add(int x);     //Прототип функции добавления элементов в список
    void Quan();
    void Av();
    void Min();
    void Max();
    void Fourth();
};
 
List::~List()                           //Деструктор
{
    while (Head)                       //Пока по адресу на начало списка что-то есть
    {
        Tail = Head->Next;             //Резервная копия адреса следующего звена списка
        delete Head;                   //Очистка памяти от первого звена
        Head = Tail;                   //Смена адреса начала на адрес следующего элемента
    }
}
 
void List::Add(int x)
{
    Node *temp = new Node;
    temp->x = x;
 
    if (!Head)
        Head = temp->Prev = temp->Next = temp;
    else
    {
        temp->Prev = Head->Prev;
        temp->Next = Head;
        Head->Prev->Next = temp;
        Head->Prev = temp;
    }
}
 
void List::Show()
{
    //ВЫВОДИМ СПИСОК С КОНЦА
    /*Node* temp = Tail; */                  //Временный указатель на адрес последнего элемента
 
                                             //while (temp != NULL)               //Пока не встретится пустое значение
                                             //{
                                             //  cout << temp->x << " ";        //Выводить значение на экран
                                             //  temp = temp->Prev;             //Указываем, что нужен адрес предыдущего элемента
                                             //}
                                             //cout << "\n";
 
                                             //ВЫВОДИМ СПИСОК С НАЧАЛА
    if (Head == NULL) cout << "\nСписок пуст\n\n";
    else
    {
        Node* temp = Head;                       //Временно указываем на адрес первого элемента
        do                                       //Пока не встретим пустое значение
        {
            cout << temp->x << " ";        //Выводим каждое считанное значение на экран
            temp = temp->Next;             //Смена адреса на адрес следующего элемента
        } while (temp != Head);
        cout << "\n";
    }
}
void List::Quan()
{
    Node* temp = Head;
    int count = 0;
    do
    {
 
        count++;
        temp = temp->Next;
    } while (temp != Head);
    cout << count << "\n";
}
void List::Av()
{
    Node* temp = Head;
    double av = 0;
    int count = 0;
    do
    {
        av += temp->x;
        temp = temp->Next;
        count++;
    } while (temp != Head);
    cout << av / count << "\n";
 
}
void List::Min()
{
    Node* temp = Head;
    int min = temp->x;
    do
    {
        if (temp->x < min)
            min = temp->x;
        temp = temp->Next;
    } while (temp != Head);
    cout << min << "\n";
    temp = Head;
    int befMin = 0;
    do
    {
        if (temp->x == min)
        {
            temp = temp->Prev;
            befMin = temp->x;
            break;
        }
        temp = temp->Next;
    } while (temp != Head);
    cout << "Знач перед мин\n " << befMin << "\n";
 
}
void List::Max()
{
    Node* temp = Head;
    int max = temp->x;
    do
    {
        if (temp->x > max)
            max = temp->x;
        temp = temp->Next;
    } while (temp != Head);
    cout << max << "\n";
 
}
int main()
{
    setlocale(LC_ALL, "Rus");
    system("CLS");
    List lst; //Объявляем переменную, тип которой есть список
    int x, n;
    cout << "Сколько элементов вы хотите добавить в список > ";
    cin >> n;
    for (int i = 0; i < n; i++)
    {
        cout << "Значение > ";
        cin >> x;
        lst.Add(x);
    }
    lst.Show(); //Отображаем список на экране
    cout << "Колво" << endl;
    lst.Quan();
    cout << "Среднее" << endl;
    lst.Av();
    cout << "Мин" << endl;
    lst.Min();
    cout << "Макс" << endl;
    lst.Max();
    system("pause");
    return 0;
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.02.2020, 14:18
Ответы с готовыми решениями:

Компилятор выдает ошибку app.exe has triggered a breakpoint
Парни C++ только начал изучать как пол года назад. Ссори если не правильно высказываюсь. Делаю задачку. Не могу врубиться почему...

Компилятор выдает ошибки (Решение 1.exe has triggered a breakpoint)
и еще эта ошибка: &quot;Unhandled exception at 0x770E5624 (ntdll.dll) in Решение 1.exe: 0xC0000374: Куча была повреждена (parameters:...

App.exe has triggered a breakpoint
Здравствуйте. Я пытаюсь создать класс Management для управления студентами. Реализую функцию добавления нового студента в список, но...

2
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
18.02.2020, 14:55
Лучший ответ Сообщение было отмечено Vic_ks как решение

Решение

Vic_ks, как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
List::~List()                           //Деструктор
{
    if (Head)                           //Список есть?
    {
        Node* temp = Head;              //Запомним начало списка!
        do
        {
            Tail = Head->Next;          //Резервная копия адреса следующего звена списка
            delete Head;                //Очистка памяти от первого звена
            Head = Tail;                //Смена адреса начала на адрес следующего элемента
        } while (Head != temp);         //Пока не будет старое начало списка!
    }
}
1
8 / 5 / 3
Регистрация: 17.02.2020
Сообщений: 38
18.02.2020, 16:44  [ТС]
Спасибо большое!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.02.2020, 16:44
Помогаю со студенческими работами здесь

Не получается разобраться с ошибкой: app.exe has triggered a breakpoint
Задание: Считать информацию с одного файла и вывести в другой. Для 4 структур сделал 4 указателя для файлов. Не могу найти, почему...

HoughTransformV4.exe has triggered a breakpoint
Помогите=) стоит только попытаться применить любую операцию округления выдает такое сообщение: HoughTransformV4.exe has triggered a...

Ошибка .exe has triggered a breakpoint
вылетает, когда делаю delete, если delete стоит перед strcpy, то всё норм #include&lt;iostream&gt; void Perevod(char*,int...

Stalin.exe has triggered a breakpoint
Здравствуйте! У меня возникла проблема, по которой я не могу найти решения в интернете. Собственно, после введения любой строки в...

.exe has triggered a breakpoint (умножение матриц)
Класс матриц. Выдает такую ошибку при попытке вызвать функцию умножения: CMatrix operator*(CMatrix &amp;leftMatrix, CMatrix...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru