وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

چگونه به 2 مکان اعشاری در Bash گرد کنیم

0 4
زمان لازم برای مطالعه: 3 دقیقه


Bash یک زبان پوسته و فرمان شناخته شده است که برای انجام کارها به طور کارآمد استفاده می شود. هنگام کار در برنامه نویسی Bash و بازی صریح با اعداد شناور، اغلب برای گرد کردن اعداد شناور مورد نیاز است. در این پست با چند دستور و تکنیک اسکریپت نویسی Bash برای گرد کردن عدد به 2 رقم اعشار آشنا می شویم.

هنگام نمایش اعداد یا متغیرهایی که شامل اعداد شناور در آنها هستند، دستورات مختلف می توانند print متن یا متغیرهایی مانند echo، print، و printf. اگرچه می‌توانیم متغیرها و اعداد را مستقیماً از این دستورات نشان دهیم، اما تنها دستوری که دارای ویژگی‌ها و قابلیت‌های اضافی است، دستور printf که به هدف ما مربوط می شود

دستور printf

را printf دستور مشابه تابع printf() در زبان C است. به ما امکان می دهد قالب بندی و print استدلال ها

نحو

سینتکس برای نوشتن دستور printf در bash است:

printf “رشته” استدلال ها

در دستور printf ابتدا باید رشته را در کاماهای معکوس ارائه کنیم و سپس می توانیم آرگومان ها را به آن بدهیم.

مثال

اول بیایید print یک متن ساده با استفاده از دستور printf:

printf “سلام از Linuxhint.”

چگونه به 2 مکان اعشاری در Bash گرد کنیم

می توانید ببینید که به تازگی رشته را چاپ کرده است، اما نام کاربری و نام میزبان درست بعد از رشته آمده است.

برای قرار دادن رشته در یک خط، می‌توانیم از کاراکتر خط جدید ‘\n’ برای داشتن خروجی تمیز و واضح استفاده کنیم:

printf “سلام از Linuxhint \n

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

حالا ما یک خروجی تمیز و واضح داریم.

پیشنهاد می‌کنیم بخوانید:  فرمان بشد

حال، بیایید ببینیم که چگونه می توان آرگومان هایی را برای دادن یک عدد شناور به دستور printf ارائه کرد و آن را گرد کرد.

برای ارائه آرگومان ها، باید از مشخص کننده (%s) در رشته استفاده کنیم که با آرگومان های ارائه شده جایگزین می شود. مثلا:

printf “شماره کاربر: %s \n 24

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

بسیار خوب، اکنون کاربرد اصلی و عملکرد دستور printf را درک کرده اید. بیایید یک عدد شناور برای آن ارائه کنیم و ببینیم چگونه به 2 رقم اعشار گرد کنیم.

دستورالعمل دقیق

اصلاح کننده دقیق برای گرد کردن یک عدد شناور استفاده می شود.

نحو نوشتن یک اصلاح‌کننده دقیق به این صورت است که تعداد اعشاری را که می‌خواهید به دنبال آن نقطه (.) گرد کنید، ارائه می‌کند.

“%.2f”

برای گرد کردن یک عدد شناور به 2 رقم اعشار، می‌توانید دستور printf را مطابق شکل زیر اجرا کنید:

printf “%.2f \n 4.4444

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

در اسکرین شات پیوست می بینید که عدد “4.4444” همانطور که ما می خواستیم به “4.44” گرد شده است.

به همین ترتیب، به جای اینکه مستقیماً یک عدد برای آن ارائه کنیم، می توانیم در اینجا نیز یک متغیر بدهیم.

تعداد=4.4444

printf “%.2f \n تعداد $

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

برای ارائه مقادیر متعدد:

num1=3.333

num2=4.4444

printf “%.2f %.3f \n $num1 $num2

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

اگر هنوز می خواهید از آن استفاده کنید echo دستور داده و عدد را گرد کنید، در این صورت باید از آن استفاده کنید echo دستور با دستور awk برای گرد کردن عدد مطابق شکل زیر:

echo “3.333” | بیخیال ‘{printf(“%.2f \n”,$1)}”

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

یا

تعداد=3.333

پیشنهاد می‌کنیم بخوانید:  روش استفاده از متغیرهای محیطی در دستور Sed

echo تعداد | بیخیال ‘{printf(“%.2f \n”,$1)}”

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

چگونه به 2 مکان اعشاری در Bash گرد کنیمچگونه به 2 مکان اعشاری در Bash گرد کنیم

نتیجه

این پست حاوی یک راهنمای دقیق و عمیق است روی دستور printf و ما یاد گرفتیم که با استفاده از دستور printf هر عددی را به 2 رقم اعشار گرد کنیم. علاوه بر این، چندین مثال را برای داشتن دانش صحیح امتحان کرده ایم روی روش استفاده از اصلاح کننده دقیق برای گرد کردن یک عدد با استفاده از دستور printf. علاوه بر این، ما یاد گرفتیم که هر عدد شناور را با استفاده از آن گرد کنیم echo و دستور awk

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 22:06:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید