Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int number_of_digits(int n)
- {
- if(n == 0)
- return 0;
- else
- return 1 + number_of_digits(n/10);
- }
- int power(int x, int y)
- {
- if(y == 0)
- return 1;
- else
- return x * power(x, y-1);
- }
- int reverse_number(int n)
- {
- int nr, rez, rest;
- if(n == 0 )
- {
- return 0;
- }
- else
- {
- rest = n % 10;
- nr = number_of_digits(n/10);
- rez = rest * power(10, nr);
- return reverse_number(n / 10) + rez;
- }
- }
- /*
- Afiseaza 1 daca este palindrom si 0 in rest!
- */
- int palindrome(int nr)
- {
- if(nr == reverse_number(nr))
- return 1;
- else
- return 0;
- }
- int next_palindrome(int nr)
- {
- while(!palindrome(nr))
- {
- nr++;
- }
- return nr;
- }
- int main()
- {
- int x, nr;
- scanf("%d ", &x);
- nr = reverse_number(x);
- printf("%d\n", nr);
- nr = next_palindrome(120);
- printf("%d\n", nr);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment