Массив заполняется не полностью c++

124
18 мая 2019, 06:10

Нужно нарисовать пирамиду, содержащую n строк. Если n будет, например, 4, то пирамида должна выглядеть следующим образом:

но у меня получается так:

Вот мой код:

#include <iostream>
#define n 4
using namespace std;
int main(){
    int row, col, left, right, top, bottom, num, fixright, arr[n][2*n-1];
    left=0;
    right=2*n-2;
    top=0;
    bottom=n-1;
    num=1;
    for(row=0; row<n; row++){
        for(col=0; col<=2*n-2; col++){
            arr[row][col]=0;
        }
    }
    do{
        fixright=right;
        for(col=left; col<=right; col++){
            arr[bottom][col]=num;
            num++;
        }
        for(row=bottom-1; row>=top; row--){
            right--;
            arr[row][right]=num;
            num++;
        }
        for(row=top+1; row<=bottom-1; row++){
            right--;
            arr[row][right]=num;
            num++;
        }
        top++; bottom--; left+=2; right=fixright-2; 
    } while(left>right); 
    for(row=0; row<n; row++){
        for(col=0; col<=2*n-2; col++){
            if (arr[row][col]!=0)
                cout<<arr[row][col]<<"\t";
            else
                cout<<"\t";
        }
        cout<<endl;
    }
    return 0;
}
Answer 1

надо было вместо while(left>right); написать while(bottom>top)

READ ALSO
Список ip, подключенных к localhost SFML C++

Список ip, подключенных к localhost SFML C++

Хочу спросить, как получить список игроков их ip, на localhost и как отслеживать их подключение

114
Реализация template в .cpp-файле [дубликат]

Реализация template в .cpp-файле [дубликат]

На данный вопрос уже ответили:

142
Не копируются char-ы

Не копируются char-ы

Суть вопроса: почему, если закоментировать dest = new char [lSrc];, то функция работает (с оговорками), а без коммента - dest никак не меняется?

129
Поиск событий в QTableWidget

Поиск событий в QTableWidget

У меня следующий вопрос по QtЯ создал журнал событий, вывод свойств этих событий

100