помогите з проблемой динамичиский масив (A[n][n]) c++

Дана целочисленная матрица А размерности nxn. Выделите для нее необходим объем динамической памяти. Заполнить матрицу случайными двухцифровыми числами. Найти сумму элементов в столбцах, которые не содержат числа с двумя одинаковыми цифрами. Проверку, входят ли в числа одинаковые цифры выполнить с помощью функции. Высвободите динамическую память

вот мой код:

#include <iostream>
#include <time.h>

bool dopfunc2(int *a, int n);

int main()
{
srand(time(NULL));    
int n;
std::cout << "vvedit rozmir matrizi: ";
std::cin >> n;
int **A=new int*[n];
for(int i=0;i<n;i++) A[i] = new int[n];
for(int i=0;i<n;i++)
{
    for(int j=0;j<n;j++)
    {
A[i][j]=rand()%89+10;
std::cout << A[i][j] << " ";
    }
    std::cout << std::endl;
}
int **pointer=&A[0]; 
 std::cout << std::endl;
for(int i=0;i<n;i++)
{
    for(int j=0;j<n;j++)
    {

std::cout << &A[i][j] << " ";
    }
    std::cout << std::endl;
}
 std::cout << std::endl;

int *sum=new int[n];
for(int i=0;i<n;i++)sum[i]=0;
int lich=0;
std::cout << std::endl;
for(int i=0;i<n;i++)std::cout << &A[0][i] << " ";
std::cout << std::endl;
for(int i=0;i<n;i++)
{
    if(dopfunc2(&A[0][i], n))
    {
for(int j=0;j<n;j++)
{
    sum[lich]+=A[j][i];
    //std::cout << sum[lich] << " (" << A[j][i] << " )  ";
}
 lich++;
    }
}
std::cout << std::endl;
for(int i=0;i<lich;i++)
{
    std::cout << sum[i] << " ";
}
}

bool dopfunc2(int *a, int n)
{
    std::cout << "||" << a << "\n";
    bool k=true;
    for(int i=0;i<n;i++)
   {
if(*(a+i*n)/11.0==(int)(*(a+i*n)/11.0))k=0;
std::cout << k << " || " << (a+i*n) << "\n";
//if(n%2==0)a=a+4;
//else a=a+3;
   }
   std::cout << "next k" << "\n";
   return k;
}```

проблема заключается в том что код работает только с костилем в виде строчек 

if(n%2==0)a=a+4; else a=a+3;

в ином случае вот такие адреса в елементов матрици:
  ![1]: https://i.stack.imgur.com/XALp1.png
но адреса по которим идет указатель [![адреса][1]][1]


  [1]: https://i.stack.imgur.com/yjnCS.png

я не понимаю, когда я работал с статической матрицей то всьо работало гуд а сейчас при переходе на новою строчку адреса изменяются не на sizeof(type) a на 16 бит.
Может кто-то обьяснить почему так, или статью с такой инфой кинуть. Буду очень благодарен

P.s. сори за свой ламаний русской

Ответы (0 шт):