bash
অ-পূর্ণসংখ্যার গাণিতিক পরিচালনা করতে পারে না। যতক্ষণ না সমস্ত অভিব্যক্তি পূর্ণসংখ্যা হয় এটি আপনাকে সঠিক ফলাফল দেয়। সুতরাং আপনার গণনার কোথাও কোনও অ-পূর্ণসংখ্যার মান পাওয়া এড়াতে হবে।
আপনার ক্ষেত্রে, যখন আপনি মূল্যায়ন করছেন 1 / 5
, 2 / 5
ইত্যাদি it এটি কিছু অ-পূর্ণসংখ্যার মানগুলির সাথে বশ চিঠিপত্রের সাথে পূর্ণসংখ্যার শূন্য মান তৈরি করে এবং ফলাফল সেই অনুযায়ী শূন্য হতে প্রকাশিত হয়। বিভাগ এবং গুনের অগ্রাধিকার একই এবং একই নজির অপারেটরগুলি সর্বদা বাম থেকে ডানদিকে চালিত হয় কারণ সেগুলি এক্সপ্রেশনতে স্থাপন করা হয়।
চারপাশের একটি কাজ হ'ল প্রথমে গুণ করা এবং তারপরে বিভাজনটি কখনই অ-পূর্ণসংখ্যার মানটি পরিচালনা করতে হয় না। সংশোধন করা এক্সপ্রেশন হবে,
$ max=5; for e in $(seq 1 1 $max); do percent=$(( $e*100/$max )); echo "echo $e / $max : = $percent"; done
echo 1 / 5 : = 20
echo 2 / 5 : = 40
echo 3 / 5 : = 60
echo 4 / 5 : = 80
echo 5 / 5 : = 100