একটি নন-নেগেটিভ ইন্টিজার দেওয়া আছে। এর ডিজিটগুলোর মধ্যে সবচো ছোটটি বের করতে হবে। রিমেইন্ডার থিওরেম (mod 10) ব্যবহার করে ডিজিট এক্সট্র্যাক্ট করা যায়।
অ্যালগরিদম
- min = n % 10 (শেষ ডিজিট ধরে রাখুন)
- n /= 10 করে পরবর্তী ডিজিটে যান
- যতক্ষণ n != 0, min = min(min, n%10), n /= 10
- min রিটার্ন করুন
উদাহরণ কোড
#include <iostream>
using namespace std;
int smallestDigit(int n) {
int mn = n % 10;
n /= 10;
while (n != 0) {
mn = min(mn, n % 10);
n /= 10;
}
return mn;
}
int main() {
cout << smallestDigit(154870) << endl; // 0
return 0;
}
আউটপুট
0