Мне нужна помощь в одном из моих проектов для академии.
Мне нужно написать алгоритм, чтобы найти номер палиндрома из шести цифр, которые пользователь решит написать.
Для меня есть некоторые ограничения: число должно быть длиной 6 цифр, код должен содержать функцию, которая будет вычислять данное число, а число должно быть в массиве.
Я приложу свой алгоритм так далеко, если кто-то может помочь мне понять, почему он не работает.
Спасибо, ребята!
#include <stdio.h>
#define _CRT_SECURE_NO_WARNINGS
#define N 6
int palindrome(int rev_arr[N], int arr[N]);
int palindrome(int rev_arr[N], int arr[N])
{
int i = 0, j = 0;
int a = 0;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
arr[i] = rev_arr[j];
}
}
for (i = 0; i < N; i++)
{
for (j = N; j >= 0; j--)
{
if (arr[i] == rev_arr[j])
{
a = 1;
}
else
{
a = 0;
}
}
}
return a;
}
void main()
{
int i = 0, arr[N], rev_arr[N], j = 0, p1 = 0, a = 0;
printf("Please enter your six digit's number:\n");
for (i = 0; i < N; i++)
{
scanf("%d", &arr[i]);
}
p1 = palindrome(rev_arr[N],arr[N]);
if (p1 == 1)
{
printf("The number is palindrome! :)\n");
}
else if (p1 == 0)
{
printf("The numbe is not palindrome! :(\n");
}
}