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

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

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

Ошибка компиляции (Debug Assertion Failed) - C++

09.07.2013, 20:45. Просмотров 648. Ответов 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
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
#include "stdafx.h"
#include "DepositList.h"
 
DepositList::DepositList() // Вызывает функцию инит
    {   
        init("C:\\Users\Денис\Desktop\Практика 1 курс\deposit\DepositList.txt"); 
    };
 
void DepositList::init(char filename[]) // инициализация переменной. Заполнение первой  
    {
        file = fopen( filename, "r" );
        DpList tmp_str; // Создание временной структуры 
        while(!feof(file)) // Указывает, что НЕ КОНЕЦ файла
        {
            fscanf(file,"%s %c %f", &tmp_str.DpName, &tmp_str.DpValue, &tmp_str.DpRate); // Читает строку и записывает её во временную структуру
            tmp_str.DpRate=tmp_str.DpRate/100;// ДЕЛИМ  СТО ,СЛУЖЕБНЫЙ ВЫВОД 
            printf("%s %c %f \n",tmp_str.DpName, tmp_str.DpValue, tmp_str.DpRate);// 
            DpL.push_back(tmp_str);//  ПОЛОЖИТЬ В КОНЕЦ 
        }
 
        fclose(file);// ЗАКРЫТЬ ФАЙЛ 
        printf("\n"); 
    };
 
 
void DepositList::calculate()
    {
        //начинаем считать
        Query Q1;// ВЫЗЫВЕМ КЛАССЫ ОБЪЯВЛЯЕМ ПЕРЕМЕННУЮ ЭТОГО ЖЕ КЛАССА 
        Rates Rt1; 
        DpList_out tmp_str; // СОЗДАЕМ ВРЕМЕННУЮ СТРУКТУРУ ТИПА АУТ 
        float tmp_rub=Q1.sum;// СУМ ПЕРЕМЕННАЯ  КЛАССА КВЕРИ 
        float tmp_sum,tmp_rub2; // 
 
        //1. сумму в рубли
        if (Q1.value == 'E')        
            tmp_rub=val_to_rub(Q1.sum,Rt1.euro_now);
        if (Q1.value == '$')
            tmp_rub=val_to_rub(Q1.sum,Rt1.dollar_now);
        printf("summ in R now rate = %f rub\n\n",tmp_rub); // ВЫВОДИМ ЧТО У НАС ПОЛУЧИЛОСЬ 
 
 
        //2. считаем прирост по вкладу,например
        for(int i=0;i<DpL.size();i++) // ДПЛ САЙЗ  ВОЗВРАЩАЮЩАЕТ РАЗМЕР МАССИВА ,ОН ВОЗВРАЩАЕТ ЕЁ ТИПОМ ИНТЕЖЕР ИНТ  
        {
            tmp_sum=tmp_rub;
            
            if (DpL[i].DpValue == 'E')      
                tmp_sum=rub_to_val(tmp_rub,Rt1.euro_now);
            if (DpL[i].DpValue == '$')
                tmp_sum=rub_to_val(tmp_rub,Rt1.dollar_now); //tmp_sum-сумма в валюте вклада
        
            printf("summ in  %c now rate = %f \n",DpL[i].DpValue , tmp_sum);
 
            tmp_sum=((tmp_sum*DpL[i].DpRate)*Q1.time/12)+tmp_sum; // СЧИТАЕМ СКОКА НАТЕЧЁТ ПРОЦЕНТОВ 
 
            printf("summ with percents in  %c %f\n",  DpL[i].DpValue, tmp_sum); // ВЫВОДИМ СКОКА НАТЕКЛО        
 
            tmp_rub2=tmp_sum; 
            if (DpL[i].DpValue == 'E')      
                tmp_rub2=val_to_rub(tmp_sum,Rt1.euro_future);
            if (DpL[i].DpValue == '$')
                tmp_rub2=val_to_rub(tmp_sum,Rt1.dollar_future); //сумма в рублях по ожидаемому курсу
            tmp_rub2-=tmp_rub; // ИЗ КОНЦА ВЫЧИТАЕМ НАЧАЛО 
            printf("profit in Rub %f\n\n", tmp_rub2);  
            //складываем в массив
            // название валюта ставка ожид.прибыль
            tmp_str.DpValue = DpL[i].DpValue;
            tmp_str.DpRate = DpL[i].DpRate;
            memcpy(tmp_str.DpName,DpL[i].DpName,sizeof(DpL[i].DpName)); // КОПИРОВАНИЕ УЧАСТКА   
            tmp_str.profit = tmp_rub2;// СУММУ ЗАКИДЫВАЕМ ВО ВРЕМЕННУЮ СТРУКТУРУ
            //припиливаем к концу вектора
            DpL_out.push_back(tmp_str);
        } 
    };
 
void DepositList:: sort()
    {
        DpList_out tmp_str;
        // сортировка,
        for(int j=0; j<DpL.size()-1; j++) 
            for(int i=j+1; i<DpL.size(); i++)
            {
                if (DpL_out[j].profit < DpL_out[i].profit)
                {
                    //обмен
                    tmp_str=DpL_out[i];
                    DpL_out[i]=DpL_out[j];
                    DpL_out[j]=tmp_str;
                }           
            }
    }
 
void DepositList:: print_out() // ВЫВОДИТ ФАЙЛ  
    {
        sort();
        file = fopen("C:\\Users\Денис\Desktop\Практика 1 курс\deposit\Res.txt", "w" );
        for(int i=0;i<DpL.size();i++)
            fprintf(file,"%s %c %f %f\n",DpL_out[i].DpName,DpL_out[i].DpValue,DpL_out[i].DpRate*100,DpL_out[i].profit);
        fclose(file);
    };
 
float DepositList:: rub_to_val(float rub,float rate) // ПЕРЕГОНЯЕМ ВАЛЮТУ 
    {
        return rub/rate; // ВРЗВРАЩАЕТ В ВЛАЮТЕ 
    }
 
float DepositList:: val_to_rub(float val,float rate) // ПЕРЕГОНЯЕМ ВАЛЮТУ В РУБЛИ 
    {
        return val*rate;
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2013, 20:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка компиляции (Debug Assertion Failed) (C++):

ошибка debug assertion failed - C++
при выполнении программы происходит ошибка debug assertion failed, а именно попытке завершить работу программы вот код #define...

Ошибка Debug Assertion Failed - C++
Доброго времени суток, срочно нужна помощь, такая проблема: есть программа шифрования методом Гронсфельда по английскому алфавиту, для...

Ошибка выполнения: Debug assertion failed - C++
Возникла такая ошибка,никто не сталкивался? Читал что-то про нее,но что-то непонятно... Может кто сталкивался или знает как исправить? ...

Ошибка debug assertion failed, как избавиться? - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #define n 50 #include...

Ошибка при выводе в текстовый файл (Debug assertion failed) - C++
Значит, такая ситуация: Надо с помощью разложения в ряд Тейлора посчитать арктангенс и вывести результаты в текстовый файл, при чем...

При вызове деструктора возникает ошибка Debug Assertion Failed! - C++
вот код программы #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; class String { private:

2
ntrx
122 / 122 / 19
Регистрация: 03.01.2013
Сообщений: 241
09.07.2013, 23:52 #2
весь код не смотрел но ошибка уже в 6й строке, нужно использовать экранирование для \ (бэкслеша), т.е. \\
1
God_Den
1 / 1 / 0
Регистрация: 02.07.2013
Сообщений: 14
10.07.2013, 00:01  [ТС] #3
Спасибо, вроде помогло!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2013, 00:01
Привет! Вот еще темы с ответами:

Debug Assertion Failed! - C++
Доброго времени суток! Не могу понять где ошибка, подскажите пожалуйста. код: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...

Debug assertion failed - C++
Я в с++ делаю первые шаги, так-что прошу сильно не пинать :) При вызове этой функции int qwerty(CComQIPtr &lt;IBody2&gt; pBody) { ...

Debug Assertion Failed - C++
Привет всем. Написал такую программу. #include &lt;stdio.h&gt; int n, m; int i, q, d; void merge(int a, int b, int c, int n, int...

Debug Assertion Failed C++ - C++
Здравствуйте. Не могу понять что не так. Выдает ошибку. Помогите разобраться и подправить. #include&lt;string.h&gt; #include&lt;iostream&gt; ...


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

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

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