কম্পিউটার

C-তে বৃহত্তম বিজোড় অঙ্ক সহ N-এর গুণফল


একটি সংখ্যা N দিয়ে দিলে আমাদের সংখ্যাটিকে তার বৃহত্তম বিজোড় সংখ্যা দিয়ে গুণতে হবে। যদি কোন বিজোড় সংখ্যা না থাকে তাহলে প্রিন্ট করুন -1।

যেমন আমরা "153" দিয়ে N শুরু করেছি এবং এই সংখ্যার বৃহত্তম বিজোড় সংখ্যাটি 5 তাই ফলাফলটি 5 সহ 153 এর গুণফল হবে অর্থাৎ 153 * 5 =765 এবং যদি সংখ্যাটির 246 এর মতো বিজোড় সংখ্যা না থাকে তবে আউটপুট অবশ্যই হবে হতে -1.

ইনপুট − N =198

আউটপুট − 1782

ব্যাখ্যা − 198 * 9 =1782

ইনপুট − N =15382

আউটপুট − 76910

ব্যাখ্যা − 15382 * 5 =76910

সমস্যা সমাধানের জন্য নিচের পদ্ধতিটি ব্যবহার করা হয়েছে −

  • ইনপুট N.

    নিন
  • প্রতিটি অঙ্ক অতিক্রম করুন এবং বিজোড় সংখ্যাগুলি সন্ধান করুন

  • সবচেয়ে বড় বিজোড় উপাদান খুঁজুন।

  • আসল সংখ্যা N.

    সহ সবচেয়ে বড় বন্ধ উপাদানটি পণ্য করুন
  • যদি -1 এর সাথে কোন বিজোড় উপাদান আপডেট ফলাফল না থাকে।

  • ফলাফল ফেরত দিন।

অ্যালগরিদম

Start
In function int largestodd(int n)
   Step 1→ Declare and Initialize large as -1
   Step 2→ Loop While n > 0
      Set digit as n % 10
      If digit % 2 == 1 && digit > large then,
         Set large as digit
      Set n as n / 10
   Step 3→ Return large
In function int findproduct(int n)
   Step 1→ Declare and Initialize large set largestodd(n)
   Step 2→ If large == -1 then,
      Return -1
   Step 3→ Return (n * large)
In function int main()
   Step 1→ Initialize n as 15637
   Print the results from calling findproduct(n)
Stop
কলিং থেকে ফলাফল প্রিন্ট করুন

উদাহরণ

#include <stdio.h>
int largestodd(int n){
   // If all digits are even then
   // we wil return -1
   int large = -1;
   while (n > 0) {
      // checking from the last digit
      int digit = n % 10;
      // If the current digit is odd and
      // is greater than the large
      if (digit % 2 == 1 && digit > large)
         large = digit;
      n = n / 10;
   }
   // To return the maximum
   // odd digit of n
   return large;
}
int findproduct(int n){
   int large = largestodd(n);
   // If there are no odd digits in n
   if (large == -1)
      return -1;
   // Product of n with its largest odd digit
   return (n * large);
}
int main(){
   int n = 15637;
   printf("%d\n", findproduct(n));
   return 0;
}

আউটপুট

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

উৎপন্ন করবে
109459

  1. কিভাবে CSS দিয়ে একটি পণ্য কার্ড তৈরি করবেন?

  2. C-তে একটি বিজোড় বর্গ ম্যাট্রিক্সে মাঝের সারি এবং কলামের গুণফল

  3. পাইথনে সংলগ্ন সংখ্যার বৃহত্তম পণ্য

  4. Google Pixel 2 এর সাথে তার প্রতিশ্রুতি প্রদান করে