Определить, является ли число палиндромом - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. #include<stdio.h>
  2. main()
  3. {
  4. int n,a,a1,b,b1,c,c1;
  5. printf("vvedite chislo n<=999\n");
  6. scanf ("%d",&n);
  7. a=n/100;
  8. a1=a%100;
  9. b=a1/10;
  10. b1=b%10;
  11. c=b/10;
  12. c1=b1%10;
  13. if (a=a1,c=c1)
  14. printf ("chislo yavlyaetsya polindromom");
  15. else printf ("chislo ne yavlyaetsya polindromom");
  16. getch();
  17. }

Решение задачи: «Определить, является ли число палиндромом»

textual
Листинг программы
  1. void is_palindrome(int n)
  2. {
  3.     char str[100];
  4.     sprintf(str, "%d", n);
  5.     int i = 0, z = strlen(str);
  6.     for(; i< z/2; ++i)
  7.         {
  8.         if (str[i] != str[z-i])
  9.         {
  10.             fputs("Not a palindrome!", stdout);
  11.             return;
  12.         }
  13.     }
  14.     fputs("Palindrome", stdout);
  15.     return;
  16. }

Объяснение кода листинга программы

  1. В функции is_palindrome(int n) определен тип функции и ее параметр n.
  2. Создана переменная типа char с именем str и размером 100 байт.
  3. С помощью функции sprintf(str, %d, n) в переменную str записывается строковое представление числа n.
  4. Создаются две переменные i и z, где i — счетчик для прохода по строке str, а z — длина строки str.
  5. В цикле for(; i< z/2; ++i) происходит сравнение символов под адресами str[i] и str[z-i].
  6. Если символы не равны, то выводится сообщение Not a palindrome! и функция возвращает управление.
  7. Если все символы равны, то выводится сообщение Palindrome и функция возвращает управление.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы