Advertisement
BorjanCrvenkov

Palindrom tekstualna niza

Jan 7th, 2020
266
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. /*
  2. Да се напише функција која ќе проверува дали дадена реченица е палиндром.
  3. При проверката да се игнорираат празните места, интерпункциските знаци, а
  4. соодветните мали и големи букви да се сметаат за еднакви (A == a, B == b, итн.).
  5.  
  6. Jadejne i pienje daj!
  7. A man, a plan, a canal, Panama.
  8. Never odd or even.
  9. Rise to vote sir!
  10.  
  11. */
  12.  
  13. #include <stdio.h>
  14. int palindrom(int *a){
  15. int i=0,j=0;
  16. int flag=0;
  17. while(a[i]!='\0'){
  18. if(isalpha(a[i])){
  19. if(islower(a[i])){
  20. *(a+i)=toupper(*(a+i));
  21. }
  22. if(*(a+i)==*(a+strlen(a)/2-i)){
  23. flag=1;
  24. }
  25. else{
  26. flag=0;
  27. break;
  28. }
  29. i++;
  30. }else{
  31. j=i+1;
  32. if(isalpha(a[j])){
  33. if(islower(a[j])){
  34. *(a+j)=toupper(*(a+j));
  35. }
  36. if(*(a+j)==*(a+strlen(a)/2-j)){
  37. flag=1;
  38. }
  39. else{
  40. flag=0;
  41. break;
  42. }
  43. }
  44. else{
  45. i++;
  46. }
  47. }
  48. }
  49. return flag;
  50. }
  51. int main(){
  52. char niza[100];
  53. gets(niza);
  54. if(palindrom(niza)){
  55. printf("PALINDROM E");
  56. }
  57. else{
  58. printf("NE E PALINDROM");
  59. }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement