কম্পিউটার টিউটোরিয়াল

ভগ্নাংশকে স্ট্রিং ফরম্যাটে রূপান্তরের C প্রোগ্রাম (রিপিটিং ডেসিমাল সহ)

দুটি ইন্টিজার (নিউমেরেটর এবং ডিনোমিনেটর) দিয়ে ভগ্নাংশ বানিয়ে সেটিকে স্ট্রিং ফরম্যাটে রূপান্তর করতে হবে। রিপিটিং ডেসিমালের জন্য প্রথম বন্ধনী ব্যবহার করা হয় (যেমন 0.(571428))।

উদাহরণ

  • 4/5 = 0.8
  • 5/9 = 0.(5)
  • 3/2 = 1.5
  • 4/7 = 0.(571428)

এলগরিদম (সংক্ষেপে)

  1. সাইন হ্যান্ডলিং (নেগেটিভ চেক)।
  2. পূর্ণসংখ্যা অংশ বের করুন (num/den)।
  3. রিমেইন্ডার থাকলে দশমিক পয়েন্ট যোগ করুন।
  4. রিমেইন্ডার × ১০ করুন, ভাগফল নিন, নতুন রিমেইন্ডার বের করুন।
  5. রিমেইন্ডার রিপিট হলে সাইকেল শুরু হওয়ার পজিশন নোট করুন।
  6. স্ট্রিং বানানোর সময় রিপিটিং অংশকে বন্ধনীর মধ্যে রাখুন।
  7. ডাইনামিক মেমরি (malloc/realloc) ব্যবহার করুন।

C কোড (প্রধান ফাংশন)

char* fractionToDecimal(int numerator, int denominator) {
    // ... ডাইনামিক বাফার, সাইন হ্যান্ডলিং, পূর্ণসংখ্যা অংশ
    // রিমেইন্ডার ট্র্যাকিং için int array (dec) ব্যবহার
    // রিপিট ডিটেকশন: পূর্বের রিমেইন্ডার মিললে সাইকেল শুরু
    // স্ট্রিং বিল্ড করতে malloc/realloc
    // রিপিট হলে '(' এবং ')' যোগ
    // free(dec); return p;
}

পুরো কোড оригиনাল আর্টিকেলে উপলব্ধ।

  1. ফর লুপ ব্যবহার করে সংখ্যাকে স্পায়রাল প্যাটার্নে দেখানোর সি প্রোগ্রাম

  2. স্ট্রিংয়ের পয়েন্টার অ্যারে এবং তাদের অ্যাড্রেস প্রিন্ট করার C প্রোগ্রাম

  3. C প্রোগ্রামে বিজোড় দৈর্ঘ্যের স্ট্রিংকে X ফরম্যাটে প্রিন্ট করা

  4. পাইথনে স্ট্রিং স্প্লিট ও জয়েন করার প্রোগ্রাম