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

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

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

Дана строка символов до точки. Определить, является ли она палиндромом. (Палиндром слева направо и справа налево читается одинаково, например "Леша на полке клопа нашел") Пробелы и знаки препинания, а также регистр букв не учитываются.
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h> 
int main() 
{ 
int i,j; 
char str[20],str1[20]; 
puts("Введите строку:\n"); 
gets(str); 
j=0; 
for(i=strlen(str)-1; i>=0; i--) 
{ 
str1[j]=str[i]; 
j++; 
} 
str1[j]=0; 
if(strcmp(str,str1)==0) 
puts("да\n"); 
else 
puts("нет\n"); 
system("pause"); 
return 0; 
}

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

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int i,j;
char str[50]="a roza upala   na lapu azora",str1[50];
puts("Введите строку:\n");
//gets(str);
j=0;
for(i=strlen(str)-1; i>=0; i--)
{
if(str[i]!=' ')
str1[i]=str[i];
}
bool fl=true;
int n=strlen(str1);
for(i=0;i<n/2;i++)
if (str1[i]!=str1[n-1-i])
{
    puts("no\n");
    return 0;
}
puts("yes\n");
return 0;
}

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

В этом коде:

  1. Подключаются необходимые библиотеки.
  2. Определяются переменные:
    • i и j - для работы с циклами.
    • str - строка, которую необходимо проверить на палиндром.
    • str1 - дополнительная строка для обработки в цикле.
  3. Пользователю предлагается ввести строку.
  4. В цикле заполняется строка str1 символами из str, при этом игнорируются пробелы.
  5. Переменная fl устанавливается в true, а переменная n получает длину строки str1.
  6. В цикле проверяется, являются ли символы str1 на позиции i и n-1-i одинаковыми.
  7. Если символы не совпадают, то выводится сообщение no и программа завершается.
  8. Если все символы совпадают, то выводится сообщение yes.

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


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

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

8   голосов , оценка 4 из 5
Похожие ответы