ধনাত্মক পূর্ণসংখ্যা x এবং y দেওয়া থাকলে এবং দশমিক স্থান সংখ্যা n দেওয়া থাকলে, 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 হবে
- যদি n > 1 হয়, তবে অবশিষ্টাংশ সংরক্ষণ করে ভাজ্য থেকে বিয়োগ করা এবং ফলাফলকে ১০ দিয়ে গুণ করা। এরপর পরবর্তী ইটারেশন শুরু করা
- ফলাফল প্রিন্ট করা
অ্যালগরিদম
START Step 1→ n দশমিক স্থান পর্যন্ত ভাগফল গণনা করার ফাংশন ঘোষণা void compute_division(int a, int b, int n) IF (b == 0) চেক "Infinite" প্রিন্ট End IF(a == 0) চেক 0 প্রিন্ট End IF(n <= 0) চেক a/b প্রিন্ট End IF(((a > 0) && (b < 0)) || ((a < 0) && (b > 0))) চেক "-" প্রিন্ট a = a > 0 ? a : -a সেট b = b > 0 ? b : -b সেট End int dec = a / b ঘোষণা ও সেট Loop For int i = 0; i <= n; i++ dec প্রিন্ট a = a - (b * dec) সেট IF(a == 0) break End a = a * 10 সেট dec = a / b সেট IF (i == 0) "." প্রিন্ট End End Step 2→ main() এ a = 36, b = 7, n = 5 ঘোষণা ও সেট 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