Bash:
সংখ্যা নির্ণয়
কিভাবে:
এখানে ব্যাশে গোল করার পদ্ধতির সারাংশ দেয়া হোল:
# 'floor' ব্যবহার করে নীচের দিকে গোল করা bc এর সাহায্যে
echo "scale=0; 3.49/1" | bc
# 'ceiling' ব্যবহার করে উপরের দিকে গোল করা bc এর সাহায্যে
echo "scale=0; 3.01/1" | bc -l
# নিকটস্থ পূর্ণ সংখ্যায় গোল করার জন্য printf ব্যবহার
printf "%.0f\n" 3.49
# bc ব্যবহার করে নিকটস্থ পূর্ণ সংখ্যায় গোল করার একটি কৌশল
echo "(3.49+0.5)/1" | bcটার্মিনালের মুখ থেকে সরাসরি নমুনা ফলাফলসমূহ:
3 # নীচের দিকে গোল করা (floor)
4 # উপরের দিকে গোল করা (ceiling)
3 # নিকটস্থে গোল করা (printf দ্বারা)
3 # নিকটস্থে গোল করা (bc দ্বারা)গভীর ডুব
আগের দিনে, ব্যাশ স্ক্রিপ্টে গণিতের জাদু করার জন্য bc অথবা printf ছিল না। পুরনো স্কুলের লোকেরা বাহ্যিক টুলস বা চতুর উপায় অবলম্বনে নির্ভর করতে হত। এখন, bc আপনাকে নির্ভুল গণিত করতে দেয়। মনে রাখবেন, bc ডিফল্ট হিসেবে গোল করে না—এটি মেঝে করে। স্কেল অংশটি দশমিক বিন্দুর আচরণ নির্ধারণ করে।
বিকল্পগুলি? bc ব্যবহার না করে awk ব্যবহার করে গোল করা যেতে পারে অথবা আরও জটিল গণিতের প্রয়োজনগুলির জন্য perl নিয়ে খেলা যেতে পারে। ম্যাসোখিস্টিক জন্য, চলুন বলি, ঘূর্ণনশীল স্ট্রিং ম্যানিপুলেশন – কিন্তু কেন?
bc শুধু গোল করে না, এটি অনেক গণিত কাজ করে—স্কেল করুন, সাইন করুন, sqrt করুন, আপনি যা চান তা নামান। printf এর ক্ষেত্রে, এটি বেশি টেক্সট ফরম্যাটিং সম্পর্কে, কিন্তু হে, এটি সংখ্যা গোল করে, তাই আমরা অভিযোগ করছি না।
আরও দেখুন
আরও জানতে ইচ্ছুকদের জন্য:
- GNU
bcম্যানুয়াল: https://www.gnu.org/software/bc/manual/html_mono/bc.html - ব্যাশ
printfকমান্ড: https://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html#index-printf - AWK ব্যবহারকারীর গাইড (গোল করা এবং অন্যান্য টেক্সট প্রক্রিয়াকরণের জন্য): https://www.gnu.org/software/gawk/manual/gawk.html
- আরও ব্যাশ গণিত, স্ক্রিপ্টিং, এবং সংখ্যা ট্রিকস: https://mywiki.wooledge.org/BashFAQ/022