Простые числа в двумерном массиве?

118
05 ноября 2021, 07:20

Дан двумерный массив. Возвести в квадрат все простые числа. Я написал так, но это не работает. Помогите !

for (int i = 1; i <= row; i++)
    {
        for (int j = 1; j <= col; j++)
        {
            if (a[i - 1][j - 1] % i*j == 0)
            {
                a[i-1][j-1] *= a[i-1][j-1];
            }
        }
    }
    for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            cout<<a[i][j]<<" " ;
        }
        cout << endl;
    }
Answer 1
bool isPrime(int n)
{
    n = abs(n);  // На всякий случай, если рассматриваются не только натуральные числа...
    if (n < 2 || n%2 == 0) return false;
    for(int i = 3; i*i <= n; i += 2)
        if (n%i == 0) return false;
    return true;
}
....
for (int i = 0; i < row; i++)
    for (int j = 0; j < col; j++)
        if (isPrime(a[i][j]))  a[i][j] *= a[i][j];
Answer 2

Объявляем функцию

bool isPrime(int n) {
   int i=2, flag = 1;
   while (i<=n/2 && flag==1){
      if(n%i==0) {
         flag=0;
      }
      else {
       i++;
   }
   }
  return flag;
}

Далее используем для вашего массива

for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            if (isPrime(a[i][j]) == 1)
            {
                a[i][j] = a[i][j]*a[i][j];
            }
        }
    }
    for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            cout<<a[i][j]<<" " ;
        }
        cout << endl;
    }
Answer 3

Неверная проверка на простое число. Корректная проверка на простоту:

for (int l = 1; l <= sqrt(num); l++)
 if (num % l == 0) num *= num;
READ ALSO
Как правильно работать с объектом класса в другом классе?C++

Как правильно работать с объектом класса в другом классе?C++

ИтакПередача объекта класса Pri в класс Event происходит успешно

165
Не могу понять как работает QPainterPath в Qt

Не могу понять как работает QPainterPath в Qt

Разбираюсь с рисовкой в Qt, пытаюсь нарисовать свою графическую фигуру, используя QPainterPathДля этого создаю класс class PuzzlePiece : public QGraphicsPathItem

140
Замена цикла на стандартный алгоритм

Замена цикла на стандартный алгоритм

Можно ли заменить следующий цикл на какой-то стандартный алгоритм библиотеки?

198
Input email неправильно проходит проверку JS Jquery

Input email неправильно проходит проверку JS Jquery

Написал проверку для input-ов на наличие хотя бы 1-ого символа для того чтобы удалить атрибут disabled с кнопки отправкиВ условии так же указал если...

205