দশমিক স্থানের সংখ্যার জন্য n এর মান সহ একটি ধনাত্মক পূর্ণসংখ্যা হিসাবে x এবং y এর মান দেওয়া হয়েছে এবং কাজটি হল n দশমিক স্থান পর্যন্ত বিভাজন তৈরি করা।
উদাহরণ
Input-: x = 36, y = 7, n = 5 Output-: 5.14285 Input-: x = 22, y = 7, n = 10 Output-: 3.1428571428
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি −
- a, b এবং n এর মান ইনপুট করুন
- বিভাগের চেয়ে b 0 হলে তা অসীম পর্যন্ত যাবে এবং a 0 থাকলে ফলাফল 0 হবে কারণ 0-কে ভাগ করলে 0 হয়
- যদি n 1 এর চেয়ে বেশি হয় তাহলে অবশিষ্টের মান সংরক্ষণ করুন এবং লভ্যাংশ থেকে বিয়োগ করুন তারপর ফলাফলটিকে দশ দ্বারা গুণ করুন। পরবর্তী পুনরাবৃত্তি শুরু করুন
- ফলাফল প্রিন্ট করুন
অ্যালগোরিদম
START Step 1-> declare function to compute division upto n decimal places void compute_division(int a, int b, int n) check IF (b == 0) print Infinite End check IF(a == 0) print 0 End check IF(n <= 0) print a/b End check IF(((a > 0) && (b < 0)) || ((a < 0) && (b > 0))) print “-” set a = a > 0 ? a : -a set b = b > 0 ? b : -b End Declare and set int dec = a / b Loop For int i = 0 and i <= n and i++ print dec Set a = a - (b * dec) IF(a == 0) break End Set a = a * 10 set dec = a / b IF (i == 0) print “.” End End Step 2-> In main() Declare and set int a = 36, b = 7, n = 5 Call compute_division(a, b, n) STOP
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
void compute_division(int a, int b, int n) {
if (b == 0) {
cout << "Infinite" << endl;
return;
}
if (a == 0) {
cout << 0 << endl;
return;
}
if (n <= 0) {
cout << a / b << endl;
return;
}
if (((a > 0) && (b < 0)) || ((a < 0) && (b > 0))) {
cout << "-";
a = a > 0 ? a : -a;
b = b > 0 ? b : -b;
}
int dec = a / b;
for (int i = 0; i <= n; i++) {
cout <<dec;
a = a - (b * dec);
if (a == 0)
break;
a = a * 10;
dec = a / b;
if (i == 0)
cout << ".";
}
}
int main() {
int a = 36, b = 7, n = 5;
compute_division(a, b, n);
return 0;
} আউটপুট
5.14285