আমাদের একটি ব্যবধান দেওয়া হয়েছে [প্রথম, শেষ]। লক্ষ্য হল এই ব্যবধানের মধ্যে একই প্রথম এবং শেষ অঙ্ক আছে এমন সংখ্যার গণনা খুঁজে বের করা। উদাহরণস্বরূপ, 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