9
9a9z9a
Задача состоит в нахождении количества чисел-палиндромов
Вот мой код, он запускается, но нечего не показывает
В любом случае должно выводить хотябы 0, но не выводит нечего.
Вот мой код, он запускается, но нечего не показывает
C++:
#include <iostream>
using namespace std;
bool for_pal(int arr[], int sz) // функция для проверки является ли число палиндромом
{
int f;
for(f = 0; f < (sz / 2); f++)
{
if(arr[f] == arr[sz - 1 - f])continue;
return false;
}
return true;
}
void main()
{
setlocale(LC_ALL, "Rus");
int *arr, kol_vo = 0, sz, g = 0;
int i,j;
int matrix[2][2] = {{777, 404}, {1991, -2091}};
for(i = 0; i < 2; i++)
for(j = 0; j < 2; j++)
{
sz = 0; //начальный размер динамического массива(а так вообще можно? :ya_lamo: )
//пробывал с 1 , та же лажа
arr = new int[sz]; // создаем динамический массив, в который заносим цифры элемента matrix[i][j]
if(!arr) {cout<<"LOL!\n"; return;}
while(matrix[i][j]) //заносит цифры в динамический массив
{
sz++;
arr[g++] = (matrix[i][j] % 10);
matrix[i][j] /= 10;
}
if(for_pal(arr, sz) == true) kol_vo++; //проверка числа на палиндром
delete[]arr; //удаление динамического массива для создание нового(пустого) для следующего эл-та matrix[i][j]
}
cout<<"Количество чисел-палиндромов : "<<kol_vo<<endl;
}
В любом случае должно выводить хотябы 0, но не выводит нечего.