Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Lokosios
0 / 0 / 0
Регистрация: 25.05.2012
Сообщений: 32
1

Ошибка при запуске программы

25.05.2012, 20:19. Просмотров 858. Ответов 5
Метки нет (Все метки)

Приветствую)
Есть код программы, который, по идее, должен запускаться и работать без особых проблем, но почему-то ругается на всё подряд. Подскажите, пожалуйста, в чем проблема.
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
 #include "stdio.h"
#include "math.h"
#include "conio.h"
 
class Matrix
{
    int m; // количество строк
    int n; // количество столбцов
    double **Matr;
public:
    Matrix(int _n, int _m);
 
    void MatrixInit(int, int);
    void random_put();
 
    Matrix operator+(Matrix );
 
    Matrix operator+(int ); 
    Matrix operator+(double ); 
 
    void operator=(int );
    void operator=(double );
 
    double operator()(int, int);
 
    void Print();
 
};
 
Matrix::Matrix(int _n, int _m)
{
    n = _n;
    m = _m;
    Matr = new double*[m];
    for(int i=0; i<m; i++)
        Matr[i]=new double[n];
}
 
void Matrix::random_put()
{
    srand((unsigned)time(NULL));
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]=(rand()%10+1)+0.2;
}
 
Matrix Matrix::operator+(Matrix A)
{
    Matrix temp(A.n, A.m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A.Matr[i][j];
    return temp;
}
 
Matrix Matrix::operator+(int A)
{
    Matrix temp(n, m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A;
    return temp;
}
 
Matrix Matrix::operator+(double A)
{
    Matrix temp(n, m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A;
    return temp;
}
 
void Matrix::operator=(int A)
{
 
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]= A;
 
}
 
void Matrix::operator=(double A)
{
 
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]= A;
 
}
 
double Matrix::operator()(int index, int index2)
{
    if(index >= 0 && index2 >= 0)
        if( index <= n && index2 <= m)
            return Matr[index][index2];
        else
            Printf("error index");
    else
        Printf("error index");
}
 
void Matrix::Print()
{
    for(int i=0; i<m; i++)
    {
        cout << endl;
        for(int j=0; j<n; j++)
            cout << Matr[i][j] << " ";
    }
    cout <<endl;
}
 
int main()
{
    Matrix Q(4,5);
    Q.random_put();
    Q.Print();
 
    Matrix W(4,5);
    W.random_put();
    W.Print();
 
    W = Q + W;
    W.Print();
 
    W = Q + 1;
    W.Print();
 
    Q = 2.7;
    cout << endl << Q(0,0) << endl;
    char ch;
    cin >> ch;
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2012, 20:19
Ответы с готовыми решениями:

В чем ошибка? При запуске программы открывается консоль и сразу ошибка о завершении программы
К тому же выдает warning: deprecated conversion from string constant to 'char*'...

Ошибка в конструкторе с параметром. Компилятор не ругается, но при запуске программы возникает ошибка
Я знаю точно, что ошибка в конструкторе с параметром. Компилятор не ругается,...

Ошибка при запуске программы
Всем привет, компилю программу в Visual 2010, язык C++. Компилирую как в Debug,...

Ошибка при запуске программы
Здравствуйте! Нужно исправить ошибки в программе,почему-то не запускается...

Ошибка при запуске программы
запускаю программу, выдает ошибку, завтра нести надо, ума не приложу что там не...

5
zss
Модератор
Эксперт С++
7470 / 6843 / 4320
Регистрация: 18.12.2011
Сообщений: 18,105
Завершенные тесты: 1
25.05.2012, 20:20 2
C++
1
2
3
#include <stdio.h>
#include <math.h>
#include <conio.h>
0
Infinity3000
1060 / 579 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
25.05.2012, 20:22 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
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
#include "iostream"
#include "ctime"
 
 
using namespace std;
 
class Matrix
{
    int m; // количество строк
    int n; // количество столбцов
    double **Matr;
public:
    Matrix(int _n, int _m);
 
    void MatrixInit(int, int);
    void random_put();
 
    Matrix operator+(Matrix );
 
    Matrix operator+(int ); 
    Matrix operator+(double ); 
 
    void operator=(int );
    void operator=(double );
 
    double operator()(int, int);
 
    void Print();
 
};
 
Matrix::Matrix(int _n, int _m)
{
    n = _n;
    m = _m;
    Matr = new double*[m];
    for(int i=0; i<m; i++)
        Matr[i]=new double[n];
}
 
void Matrix::random_put()
{
    srand((unsigned)time(NULL));
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]=(rand()%10+1)+0.2;
}
 
Matrix Matrix::operator+(Matrix A)
{
    Matrix temp(A.n, A.m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A.Matr[i][j];
    return temp;
}
 
Matrix Matrix::operator+(int A)
{
    Matrix temp(n, m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A;
    return temp;
}
 
Matrix Matrix::operator+(double A)
{
    Matrix temp(n, m);
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            temp.Matr[i][j]=Matr[i][j] + A;
    return temp;
}
 
void Matrix::operator=(int A)
{
 
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]= A;
 
}
 
void Matrix::operator=(double A)
{
 
    for(int i=0; i<m; i++)
        for(int j=0; j<n; j++)
            Matr[i][j]= A;
 
}
 
double Matrix::operator()(int index, int index2)
{
    if(index >= 0 && index2 >= 0)
        if( index <= n && index2 <= m)
            return Matr[index][index2];
        else
            printf("error index");
    else
        printf("error index");
}
 
void Matrix::Print()
{
    for(int i=0; i<m; i++)
    {
        cout << endl;
        for(int j=0; j<n; j++)
            cout << Matr[i][j] << " ";
    }
    cout <<endl;
}
 
int main()
{
    Matrix Q(4,5);
    Q.random_put();
    Q.Print();
 
    Matrix W(4,5);
    W.random_put();
    W.Print();
 
    W = Q + W;
    W.Print();
 
    W = Q + 1;
    W.Print();
 
    Q = 2.7;
    cout << endl << Q(0,0) << endl;
    char ch;
    cin >> ch;
    return 0;
}
1
Lokosios
0 / 0 / 0
Регистрация: 25.05.2012
Сообщений: 32
25.05.2012, 20:26  [ТС] 4
Спасибо, большая часть ошибок ушла) Но компилятор всё равно жалуется на
C++
1
    srand((unsigned)time(NULL));
\6666\main.cpp|43|error: 'srand' was not declared in this scope|

C++
1
    Matr[i][j]=(rand()%10+1)+0.2;
\6666\main.cpp|46|error: 'rand' was not declared in this scope|
0
MrGluck
Модератор
Эксперт CЭксперт С++
8105 / 4956 / 1436
Регистрация: 29.11.2010
Сообщений: 13,451
25.05.2012, 20:35 5
C++
1
2
3
#include <ctime>
 
srand( time(NULL) );
0
zss
Модератор
Эксперт С++
7470 / 6843 / 4320
Регистрация: 18.12.2011
Сообщений: 18,105
Завершенные тесты: 1
25.05.2012, 20:37 6
rand() и srand() определены в <stdlib.h>
0
25.05.2012, 20:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2012, 20:37

Ошибка при запуске программы
Добрый день, подскажите, пожалуйста, в чем причина того, что данная программа...

Ошибка при запуске программы
Сделал алгоритм слияния, нужно проверить время сортировки от 10000 элементов до...

Ошибка при запуске программы
Здравствуйте. Написал следующую программку #include &lt;cstdlib&gt; #include...


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

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

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