কম্পিউটার টিউটোরিয়াল

বিপরীত স্ট্রিং প্যাটার্নের জন্য সি প্রোগ্রাম


একটি স্ট্রিং str দেওয়া, আমাদের কাজ হল এর বিপরীত প্যাটার্ন প্রিন্ট করা। প্যাটার্নটি বিপরীত ক্রমে ক্রমবর্ধমান হবে, এবং স্ট্রিংটি সম্পূর্ণ হলে অবশিষ্ট স্থানে '*' পূরণ করুন।

যেমন আমরা একটি স্ট্রিং "abcd" লিখি, এখন প্রথম লাইনে আমাদের "a" প্রিন্ট করতে হবে তারপরের লাইনে আমাদের "cb" প্রিন্ট করতে হবে এবং তারপরে তৃতীয় লাইনে আমরা "**d" প্রিন্ট করব।

উদাহরণ

Input: str[] = { “abcd” }
Output: a
c b
* * d

ব্যাখ্যা

  • প্রথম লাইনে ১টি অক্ষর প্রিন্ট করুন
  • দ্বিতীয় লাইনে 2টি অক্ষর বিপরীত ক্রমে প্রিন্ট করুন
  • তৃতীয় লাইনে বিপরীত ক্রমে 3টি অক্ষর প্রিন্ট করুন, যদি স্ট্রিংটি 3-এর কম হয় তাহলে অক্ষরগুলি প্রিন্ট করুন এবং * দিয়ে ফাঁকা স্থানগুলি পূরণ করুন।
Input: str[] = {“tutorialspoint”}
Output:

বিপরীত স্ট্রিং প্যাটার্নের জন্য সি প্রোগ্রাম

নিচে ব্যবহৃত পদ্ধতিটি নিম্নরূপ

  • আমরা i=0 থেকে স্ট্রিংটি অতিক্রম করব এবং i
  • তারপর আমরা একটি চলক k নেব এবং k কে ((i*(i+1))/2)-1 হিসাবে সেট করব
  • আমরা পরীক্ষা করব যদি k>=n-1 তাহলে, "* " প্রিন্ট করবে অন্যথায় স্ট্রিং এর মান বিপরীত ক্রমে প্রিন্ট করবে

অ্যালগরিদম

Start
In function int reverse_it(char str[], int n)
   Step 1-> Declare and Initialize i, j=0 , k=0
   Step 2-> Loop For i=0 and i<n && k<(n-i)*2 and i++
      Set k as ((i*(i+1))/2)-1
      Loop For j=0 and j<i && k<(n-i)*2 and j++
      If k >= n-1 then,
         Print "* "
      Else
         Print "%c ",str[k]
         Decrement k by 1
      End loop
      Print new line
   End loop
In Function int main(int argc, char const *argv[])
   Step 1-> Declare and initialize string str[]
   Step 2-> Declare and Initialize size as sizeof(str)/sizeof(str[0])
   Step 3-> Call function reverse_it(str, size);
Stop

উদাহরণ

#include <stdio.h>
int reverse_it(char str[], int n) {
   int i, j=0 , k=0;
   for(i=0; i<n && k<(n-i)*2; i++) {
      //Assigning k
      k = ((i*(i+1))/2)-1;
      for(j=0; j<i && k<(n-i)*2; j++) {
         //will check if k is greater than the total number of characters
         //then we will print * for filling the extra characters
         if(k >= n-1)
            printf("* ");
            //print the string in reverse order
         else
            printf("%c ",str[k]);
            k--;
      }
      //for line break after reverse sequence
      printf("\n");
   }
   return 0;
}
//Main Function
int main(int argc, char const *argv[]) {
   char str[] = {"tutorialspoint"};
   int size = sizeof(str)/sizeof(str[0]);
   reverse_it(str, size);
   return 0;
}

আউটপুট

উপরের কোডটি চালালে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে

বিপরীত স্ট্রিং প্যাটার্নের জন্য সি প্রোগ্রাম


  1. সি তে ডায়মন্ড প্যাটার্ন প্রিন্ট করার প্রোগ্রাম

  2. সি-তে নম্বর প্যাটার্ন প্রিন্ট করার প্রোগ্রাম

  3. হেক্সাগোনাল প্যাটার্নের জন্য সি প্রোগ্রাম

  4. সি প্রোগ্রামে ম্যাট্রিক্স তির্যক প্যাটার্নে সংখ্যা মুদ্রণ করুন।