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

Пишет ошибку - C++

Восстановить пароль Регистрация
 
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
14.04.2013, 23:05     Пишет ошибку #1
Задача: Написать функцию, проверяющую есть ли отрицательные элементы в указанной строке двумерного массива. Удалить из массива все строки с отрицательными элементами, удаленная строка заполняется 0 и переносится в конец массива.
Вот сам код:
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 int main {
    bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
}
 
 
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memse (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
}
Desktop.rar
Компилятор пишет в 11 строке.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
14.04.2013, 23:09     Пишет ошибку #2
Цитата Сообщение от vanyakilkil Посмотреть сообщение
Задача: Написать функцию, проверяющую есть ли отрицательные элементы в указанной строке двумерного массива. Удалить из массива все строки с отрицательными элементами, удаленная строка заполняется 0 и переносится в конец массива.
Вот сам код:
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 int main {
    bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
}
 
 
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memse (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
}
Вложение 256280
Компилятор пишет в 11 строке.
Я что-то неочень понимаю. Что это у Вас за main в main-е?
Саня gamer
96 / 70 / 1
Регистрация: 18.05.2011
Сообщений: 343
Записей в блоге: 1
14.04.2013, 23:11     Пишет ошибку #3
"Пишет ошибку"
а я б матом вкрыл
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
14.04.2013, 23:13  [ТС]     Пишет ошибку #4
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
Я что-то неочень понимаю. Что это у Вас за main в main-е?
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 int main {}
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
 
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memse (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
}
Мда.. Исправил. Но все рано в 11 строчке

Добавлено через 59 секунд
Цитата Сообщение от Саня gamer Посмотреть сообщение
"Пишет ошибку"
а я б матом вкрыл
понимаю...
Саня gamer
96 / 70 / 1
Регистрация: 18.05.2011
Сообщений: 343
Записей в блоге: 1
14.04.2013, 23:14     Пишет ошибку #5
C++
1
int main {}
не надо писАть.
А
C++
1
2
3
4
5
6
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
нада исправить
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
14.04.2013, 23:16     Пишет ошибку #6
Зачем Вам main вначале? Мб его просто удалить? Он же пустой.
Ошибки у меня пишет во многих местах кроме 11 строки

Добавлено через 51 секунду

Не по теме:

Цитата Сообщение от Саня gamer Посмотреть сообщение
"Пишет ошибку"
а я б матом вкрыл
А я бы тоже)

vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
14.04.2013, 23:17  [ТС]     Пишет ошибку #7
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
Зачем Вам main вначале? Мб его просто удалить? Он же пустой.
Ошибки у меня пишет во многих местах кроме 11 строки
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
 
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memse (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
}
И все равно
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
14.04.2013, 23:20     Пишет ошибку #8
В 17 строке поставьте фигурную скобку.
Определите какой-то memse (mat[size], 0, COLUMNS * sizeof(int));
Саня gamer
96 / 70 / 1
Регистрация: 18.05.2011
Сообщений: 343
Записей в блоге: 1
14.04.2013, 23:21     Пишет ошибку #9
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
В 17 строке поставьте фигурную скобку.
Определите какой-то memse (mat[size], 0, COLUMNS * sizeof(int));
или добавьте букву "t"
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
14.04.2013, 23:45  [ТС]     Пишет ошибку #10
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
В 17 строке поставьте фигурную скобку.
Определите какой-то memse (mat[size], 0, COLUMNS * sizeof(int));
Не пойму. Все равно пишет ошибки? Можете код бросить. Возможно не так понял
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.04.2013, 15:42     Пишет ошибку #11
Цитата Сообщение от vanyakilkil Посмотреть сообщение
Не пойму. Все равно пишет ошибки? Можете код бросить. Возможно не так понял
В 18 строке после return false; поставьте фигруную скобку. Вот так
C++
1
2
3
4
5
6
7
8
9
 bool    is_signed(int mat[ROWS][COLUMNS], int row) 
{
    for(int i = 0; i < COLUMNS; i++) 
    {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
}
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
15.04.2013, 16:08  [ТС]     Пишет ошибку #12
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
В 18 строке после return false; поставьте фигруную скобку. Вот так
C++
1
2
3
4
5
6
7
8
9
 bool    is_signed(int mat[ROWS][COLUMNS], int row) 
{
    for(int i = 0; i < COLUMNS; i++) 
    {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false;
}
Теперь в 29...
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false ;
}
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memse (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // ïðîâåðêГ* ГҐГ±ГІГј ëè ГўГ® âòîðîé ñòðîêå îòðèöГ*òåëüГ*îå ÷èñëî
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // ГіГ¤Г*ëÿåì ñòðîêè Г± îòðèöГ*òåëüГ*ûìè ýëåìåГ*ГІГ*ìè   
    zero_del(mat);
 
           // âûâîä Гў ГЄГ®Г*ñîëü
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
}
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.04.2013, 16:17     Пишет ошибку #13
Вообщем вот вам полный код без ошибок:
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false ;
}
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memset (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
Найдите 2 отличия
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
15.04.2013, 16:19  [ТС]     Пишет ошибку #14
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
Вообщем вот вам полный код без ошибок:
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false ;
}
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memset (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
Найдите 2 отличия
Ну все равно находит ошибку в 29 строке
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 
 
 bool    is_signed(int mat[ROWS][COLUMNS], int row) {
    for(int i = 0; i < COLUMNS; i++) {
        if( mat[row][i] < 0.0f )
            return true;
    }
    return false ;
}
void  zero_del(int mat[ROWS][COLUMNS]) {
    int size = ROWS;
    for(int r = 0; r < size; r++) {
        for(int c= 0; c < COLUMNS; c++) {
            if(mat[r][c] < 0 ) {
                for(int a = r; a < size - 1; a++) {
                    for(int b = 0; b < COLUMNS; b++) 
                        mat[a][b] = mat[a + 1][b];  
                }
                size--;
                memset (mat[size], 0, COLUMNS * sizeof(int));
            }
        }
    }
}
 
 
void main(void) {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
          cin.get();
}
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.04.2013, 16:25     Пишет ошибку #15
У меня никаких ошибок нет:
Миниатюры
Пишет ошибку  
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
15.04.2013, 16:26  [ТС]     Пишет ошибку #16
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
У меня никаких ошибок нет:
Какой у вас компилятор? Мой DEV C++
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.04.2013, 16:27     Пишет ошибку #17
майкрософт вижуал студия.
Ну скопируйте текст ошибки хоть
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
15.04.2013, 16:28  [ТС]     Пишет ошибку #18
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
майкрософт вижуал студия.
Ну скопируйте текст ошибки хоть
[Error] '::main' must return 'int'
Ласковая Киса
 Аватар для Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.04.2013, 16:31     Пишет ошибку #19
Цитата Сообщение от vanyakilkil Посмотреть сообщение
[Error] '::main' must return 'int'
Замените свой main на этот:
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
int main() {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
     cin.get();
     return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 16:36     Пишет ошибку
Еще ссылки по теме:

Пишет ошибку Declaration terminated Incorrectly C++
C++ Найдите ошибку!Пишет Решение «зависло» на тесте 1
C++ Если в c++ пишет ошибку необъявленный идентификатор cout

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

Или воспользуйтесь поиском по форуму:
vanyakilkil
34 / 34 / 2
Регистрация: 13.06.2012
Сообщений: 650
15.04.2013, 16:36  [ТС]     Пишет ошибку #20
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
Замените свой main на этот:
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
int main() {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
     cin.get();
     return 0;
}
Возможно я что-то не правильно понял, но у меня тогда в 11 строке ошибка
код получился так:
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
#include <iostream>
using namespace std;
#include <math.h>
#include <stdio.h>
 
#define  ROWS  4
#define  COLUMNS  4
 
 
 int main() {
 
 
    int   mat[ROWS][COLUMNS] = {
            {  10,   5,    3,    33  },         // row-0
            {  -2,   -7,   -8,  99  },      // row-1
            {  3,     8,    4,   34  },          // row-2
            { -12,  -2,  1,   -15   }   // row-3
    };
 
    // проверка есть ли во второй строке отрицательное число
    if( is_signed(mat, 1))
        cout << "yes signed." << endl;
    else
        cout << "no signed !" << endl;
 
 
    // удаляем строки с отрицательными элементами   
    zero_del(mat);
 
           // вывод в консоль
    for(int r =0 ; r < ROWS; r++) {
        for(int c= 0 ; c < COLUMNS; c++) 
            cout << mat[r][c] << '\t';
        cout.put('\n');
    }
 
     cin.get();
     return 0;
}
Yandex
Объявления
15.04.2013, 16:36     Пишет ошибку
Ответ Создать тему
Опции темы

Текущее время: 09:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru