Palindrome in C – প্যালিনড্রোম যাচাই

Palindrome in C: যে সংখ্যা, ওয়ার্ড গুলি কে রিভার্স করলে একই হয়। যেমন, Level = leveL , Madam = madaM, Repaper = repapeR ইত্যাদি।

একটি কোড লিখে যাচাই করতে পারি, এই কোড টি করার আগে আমি অন্য একটি কোড করব তা হল কোন সংখ্যাকে রিভার্স করার কোড।

রিভার্স বলতে কোন একটি ইন্টিজার এমন ৪২৬ থাকলে তাকে এমন ৬২৪ করে দিবে।

প্রব্লেমঃ একটি স্ট্রিং দেওয়া হবে, এটি প্যালিনড্রোম কিনা তা পরীক্ষা করার জন্য একটি সি ফাংশন লিখুন।

#include <stdio.h>
int main ()
{
    int n, rev = 0, remainder;
    printf("Enter an integer: ");
    scanf("%d", &n);
    //ধরি n = 143;

    while(n != 0)
    {   
        //এই লুপটি তিনবার চলবে 
        //১ম বার  n এতে ১৪৩
        //২য় বার n এতে ১৪
        //৩য় বার n এতে ১
        //১ম বার 143 % 10 = 3, remainder এতে ৩ আছে
        remainder = n % 10;
        //১ম বার rev এতে ০ আছে, ০ * ১০ = ০ + ৩ = ৩ rev এতে ৩ আছে
        rev = rev * 10 + remainder;
        n = n / 10;
    }
    printf("Reversed number = %d", rev);
    return 0;
}

আউটপুট

Enter an integer: 143
Reversed number = 341

Palindrome in C এই কোডটি বুঝলে প্যালিনড্রোম এর কোডটি বুঝতে সহজ হবে।

#include <stdio.h>
int main ()
{
    int n, rev = 0, remainder;
    int orginalNumber;

    printf("Enter an integer: ");
    scanf("%d", &n);
    orginalNumber = n;

    while(n != 0)
    {
        remainder = n % 10;
        rev = rev * 10 + remainder;
        n = n / 10;
    }
    if(orginalNumber == rev)
    {
        printf("%d is palindrome", orginalNumber);

    }
    else{
        printf("%d is not palindrome", orginalNumber);
    }
    return 0;

}

আউটপুট

Enter an integer: 101
101 is palindrome

কোন ওয়ার্ড প্যালিনড্রোম কিনা যাচাই করতে সিং এর কিছু ফাংশন ব্যবহার করা হয়েছে,

gets(a); স্টিং ইনপুট নিবে

strcpy(b, a); কপি করবে a এর সিং b তে ।

strrev(b); রিভার্স করবে, যেমন book থাকলে koob করে দিবে।

#include <stdio.h>
#include <string.h>
int main()
{
  char a[100], b[100];

  printf("Enter a string to check if it's a palindrome\n");
  gets(a);

  strcpy(b, a);  // Copying input string
  strrev(b);  // Reversing the string

  if (strcmp(a, b) == 0)  // Comparing input string with the reverse string
    printf("The string is a palindrome.\n");
  else
    printf("The string isn't a palindrome.\n");

  return 0;
}

আউটপুট

Enter a string to check if it's a palindrome
level
The string is a palindrome.

বিঃদ্রঃ ইন্টাভিউ এতে কমন প্রশ্ন প্যালিনড্রোম।


কাজ

  • অন্য কোন উপায়ে কোড গুলি কর।
  • দুইবার করে লিখে সময় নিয়ে বুঝার চেষ্ঠা কর।

নিচের লিংক গুলি প্রক্টিস কর

রেফারেন্স লিংক

Discussion

Leave a Reply