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

найти нулевые элементы на краях таблицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция создает объекты и указателями на них заполняет массив. При выходе из функции вызываются деструкторы объектов. Как сохранить объекты? http://www.cyberforum.ru/cpp-beginners/thread792483.html
Вопрос прост: как при выходе из функции сохранить объекты, которые были созданы в данной функции (указатели объектов положены в массив)?
C++ функция возвращающая аргументу его значение сама по себе Глупость, но не иначе не могу объяснить это явление. гуляя по сайтам наткнулся на пузырьковую сортировку и увидел данный код: void BubbleSort (int* a) { int top = 8; while (top != 0) { for (int i = 0; i < top; i++) { http://www.cyberforum.ru/cpp-beginners/thread792478.html
C++ Перемножение матриц
Перемножить матрицы m*n и m*p где заданы константы n=1000,m=1100,p=12000
C++ Как назвать файл переменной n?
Господа, помогите новичку, я пишу программу и я хочу, чтобы она создавала файл, названной по имени переменной n, которую я ввожу чуть-чуть раньше. Т.е. если я в качестве переменной пишу Hello world, то у меня файл, куда далее будут записаны некие данные назывался "Hello world"
C++ Функции.Зачем нужны void функции? http://www.cyberforum.ru/cpp-beginners/thread792425.html
Здравствуйте люди.Я учусь по книге C++ для чайников.Там объясняют многое про функции.Одного не могу понять.Зачем нужны void функции с аргументом void раз они ничего не возвращают и им нельзя ничего передать.Какая польза от них? Если кто нибудь покажет на примере буду благодарен.Спасибо всем.
C++ помогите написать программу для определения базиса и ранга матрицы помогите пожалуйста написать программу для определения базису и рангу матрици.... (вопрос жизни и смерти ) подробнее

Показать сообщение отдельно
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429

найти нулевые элементы на краях таблицы - C++

22.02.2013, 16:54. Просмотров 319. Ответов 5
Метки (Все метки)

есть двумерный массив
a.v[i][j]
из нулей и единиц
надо найти координаты двух точек
т.е. нулевые элементы на краях массива(первая, последняя строчка, первый, последний столбец)
а записать координаты в Coord
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
void Start(Matrix& a)
{
    Coord in;
    Coord out;
    do
    {
        for(int i=0; i<a.ocount; i++) //первая строка
            if(a.v[i][0]==0) {in.x=i; in.y=0; in.enabled=true;}
 
        for(int j=0; j<a.ocount; j++) // первый столбец
            if(a.v[0][j]==0) {in.x=0; in.y=j; in.enabled=true;}
 
        for(int i=0; i<a.ocount; i++) // последняя строка
            if(a.v[i][a.scount-1]==0) {in.x=i; in.y=a.scount-1; in.enabled=true;}
 
        for(int j=0; j<a.ocount; j++) //последний столбец
            if(a.v[j][a.ocount]==0) {in.x=j; in.y=a.ocount; in.enabled=true;}
    }
    while(in.enabled==false);
    a.v[in.x][in.y]=2;
    do
    {
        for(int i=0; i<a.ocount; i++) //первая строка
            if(a.v[i][0]==0) {out.x=i; out.y=0; out.enabled=true;}
 
        for(int j=0; j<a.ocount; j++) // первый столбец
            if(a.v[0][j]==0) {out.x=0; out.y=j; out.enabled=true;}
 
        for(int i=0; i<a.ocount; i++) // последняя строка
            if(a.v[i][a.scount-1]==0) {out.x=i; out.y=a.scount-1; out.enabled=true;}
 
        for(int j=0; j<a.ocount; j++) //последний столбец
            if(a.v[j][a.ocount]==0) {out.x=j; out.y=a.ocount; out.enabled=true;}
        
    }
    while(out.enabled==false);
    cout<<"in x="<<in.x<<"\ty="<<in.y<<endl;
    cout<<"out x="<<out.x<<"\ty="<<out.y<<endl;
 
}
но из 2ого цикла никогда не выходит. почему?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru