কম্পিউটার

C++ এ একই প্রথম এবং শেষ সংখ্যা সহ সংখ্যা গণনা করুন


আমাদের একটি ব্যবধান দেওয়া হয়েছে [প্রথম, শেষ]। লক্ষ্য হল এই ব্যবধানের মধ্যে একই প্রথম এবং শেষ অঙ্ক আছে এমন সংখ্যার গণনা খুঁজে বের করা। উদাহরণস্বরূপ, 232-এর প্রথম এবং শেষ সংখ্যা 2-এর মতো একই।

আমরা এটি করব i=first থেকে i=st এর দিকে। প্রতিটি সংখ্যার জন্য আমি শেষ অঙ্কের সাথে তার প্রথম অঙ্কের তুলনা করি, যদি সেগুলি একই হয় তাহলে গণনা বৃদ্ধি পাবে৷

উদাহরণ দিয়ে বোঝা যাক।

ইনপুট − প্রথম=8 শেষ=40

আউটপুট − একই প্রথম এবং শেষ সংখ্যার সংখ্যার সংখ্যা − 5

ব্যাখ্যা − 8 এবং 40 এর মধ্যে সংখ্যা একই প্রথম এবং শেষ ডিজিট সহ −

8, 9, 11, 22, 33

ইনপুট − প্রথম=100 শেষ=200

আউটপুট − একই প্রথম এবং শেষ সংখ্যা সহ সংখ্যার গণনা:5

ব্যাখ্যা − 100 এবং 200 এর মধ্যে সংখ্যা একই প্রথম এবং শেষ সংখ্যা সহ −

101, 111, 121, 131, 141, 151, 161, 171, 181, 191.

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

  • ব্যাপ্তি [প্রথম, শেষ] সংজ্ঞায়িত করতে আমরা প্রথম এবং শেষ দুটি পূর্ণসংখ্যা নিই।

  • ফাংশন getFirstDigit(int num) একটি সংখ্যা নেয় এবং এর প্রথম সংখ্যা প্রদান করে।

  • num>=10 থাকার সময়, num কে 10 দিয়ে ভাগ করুন। শেষে num-এর প্রথম সংখ্যা থাকবে। এই মান ফেরত দিন।

  • ফাংশন getCount(int fst,int lst) রেঞ্জ ভেরিয়েবল নেয় এবং একই প্রথম এবং শেষ ডিজিট সহ সংখ্যার গণনা প্রদান করে।

  • 0 হিসাবে প্রাথমিক গণনা নিন।

  • i=fst থেকে i=lst পর্যন্ত লুপ স্টার্টের জন্য ব্যবহার করে, প্রতিটির জন্য আমি getFirstDigit(i) কল করে প্রথম অঙ্কটি গণনা করি এবং fdigit এ সংরক্ষণ করি। (fdigit=getFirstDigit(i))।

  • ldigit=i%10 হিসাবে শেষ সংখ্যা গণনা করুন।

  • যদি ldigit==fdigit হয়, মানে তারা একই। সংখ্যা বৃদ্ধি।

  • ফলাফল হিসাবে রিটার্ন গণনা।

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
//to find starting digit
int getFirstDigit(int num){
   while (num >= 10)
      { num = num/ 10; }
   return num;
}
int getCount(int fst,int lst){
   int count=0;
   for(int i=fst;i<=lst;i++){
      int fdigit=getFirstDigit(i);
      int ldigit=i%10; //to get last digit
      if(fdigit==ldigit) //if both are equal increment count
         { ++count; }
   }
   return count;
}
int main(){
   int first = 10, last = 23;
   cout<<"Numbers with same first and last digits:"<<getCount(first, last);
   return 0;
}

আউটপুট

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

উৎপন্ন করবে
Numbers with same first and last digits:2

  1. C++ এ K হিসাবে ক্ষুদ্রতম ফ্যাক্টর সহ একটি পরিসরে সমস্ত সংখ্যা গণনা করুন

  2. শুধুমাত্র C++ এ 3 এবং 8 সংখ্যা সহ সংখ্যায় রূপান্তর করুন

  3. C++ এ জোড় এবং বিজোড় সংখ্যার যোগফল 1 এর মধ্যে পরম পার্থক্য সহ সমস্ত n-সংখ্যা সংখ্যা মুদ্রণ করুন

  4. C++ এ একটি অ্যারে সংখ্যার গুণফলের শেষ k সংখ্যা খুঁজুন