خانه
گاما

تبدیل نوع عددی: استفاده از تابع‌هایی مانند int و float برای تبدیل ورودی به عدد صحیح یا اعشاری

دسته بندی:کپسول آموزشی
بروزرسانی شده در:1405/04/13
تعداد بازدید84
تبدیل نوع عددی: استفاده از تابع‌هایی مانند int و float برای تبدیل ورودی به عدد صحیح یا اعشاری

تبدیل نوع عددی: تبدیل ورودی به عدد صحیح یا اعشاری

آشنایی با تابع‌های int و float برای تبدیل داده‌ها به عدد
در برنامه‌نویسی، معمولاً ورودی‌هایی که از کاربر دریافت می‌کنیم، به صورت نوشته (متن) هستند. اما برای انجام محاسبات ریاضی، باید آن‌ها را به عدد تبدیل کنیم. برای این کار از تابع‌های int و float استفاده می‌کنیم. تابع int ورودی را به عدد صحیح و تابع float ورودی را به عدد اعشاری تبدیل می‌کند. در این مقاله با نحوه‌ی استفاده از این تابع‌ها و کاربردهای آن‌ها آشنا می‌شویم.

چرا به تبدیل نوع عددی نیاز داریم؟

فرض کنید از کاربر می‌خواهید سن خود را وارد کند و سپس برنامه‌ای بنویسید که سن او را 5 سال بعد محاسبه کند. کاربر عدد 12 را وارد می‌کند، اما برنامه این عدد را به صورت یک نوشته (مانند «12») دریافت می‌کند، نه یک عدد ریاضی. اگر بخواهید 5 را به آن اضافه کنید، برنامه به جای جمع کردن، دو نوشته را به هم می‌چسباند و نتیجه «125» می‌شود که اشتباه است.

برای حل این مشکل، باید ورودی را به عدد تبدیل کنیم. تابع int ورودی را به یک عدد صحیح تبدیل می‌کند (مانند 12) و تابع float آن را به عدد اعشاری تبدیل می‌کند (مانند 12.0). بعد از این تبدیل، می‌توانیم به راحتی روی آن‌ها عملیات ریاضی انجام دهیم.

مثال ساده: اگر کاربر قیمت یک کالا را به صورت «25000» وارد کند و شما بخواهید 9 درصد مالیات به آن اضافه کنید، ابتدا باید آن را با int به عدد تبدیل کنید و سپس محاسبه را انجام دهید. در غیر این صورت، برنامه به جای محاسبه‌ی ریاضی، رشته‌ها را به هم می‌چسباند.
تابع نوع خروجی مثال ورودی و خروجی
int عدد صحیح int("25") → 25
int عدد صحیح int(3.9) → 3
float عدد اعشاری float("14.5") → 14.5
float عدد اعشاری float("7") → 7.0

کاربردهای تبدیل نوع عددی در برنامه‌های روزمره

تبدیل نوع عددی در بسیاری از برنامه‌هایی که روزانه استفاده می‌کنیم، نقش حیاتی دارد. برای مثال، در یک برنامه‌ی فروشگاهی، وقتی کاربر تعداد کالا و قیمت هر کالا را وارد می‌کند، برنامه با استفاده از int و float این ورودی‌ها را به عدد تبدیل می‌کند و سپس قیمت کل را محاسبه می‌نماید. بدون این تبدیل، برنامه نمی‌تواند محاسبات ریاضی را به درستی انجام دهد.

یکی دیگر از کاربردهای مهم، در برنامه‌های مدیریت حساب بانکی است. وقتی کاربر مبلغی را برای انتقال یا برداشت وارد می‌کند، برنامه با float آن را به عدد اعشاری تبدیل می‌کند تا بتواند مبالغ ریالی و کسری‌های آن را به درستی محاسبه کند. در بازی‌های رایانه‌ای نیز وقتی امتیاز کاربر را محاسبه می‌کنیم، از تبدیل نوع عددی استفاده می‌شود تا اعداد ورودی به درستی پردازش شوند.

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

چالش‌ها و پرسش‌های رایج درباره‌ی تبدیل نوع عددی

پرسش

اگر ورودی عدد نباشد، چه اتفاقی می‌افتد؟

اگر ورودی شامل حروف یا کاراکترهای غیرعددی باشد، تابع int یا float با خطا مواجه می‌شود و برنامه متوقف می‌گردد. بنابراین همیشه باید مطمئن شوید که ورودی قابل تبدیل به عدد است. برای این کار می‌توانید از تابع‌های بررسی مانند isdigit استفاده کنید تا قبل از تبدیل، اعتبار ورودی را چک کنید.

پرسش

تفاوت int و float در عمل چیست؟

int اعداد را به صورت کامل (بدون اعشار) تبدیل می‌کند و بخش اعشاری را حذف می‌کند (مثلاً 7.9 را به 7 تبدیل می‌کند). اما float اعداد را با اعشار نگه می‌دارد و برای محاسبات دقیق‌تر مانند محاسبه‌ی قیمت، وزن، یا اندازه‌های دقیق مناسب‌تر است. انتخاب بین این دو به نوع محاسبه‌ای که می‌خواهید انجام دهید، بستگی دارد.

پرسش

آیا بعد از تبدیل، نوع داده‌ی اصلی تغییر می‌کند؟

خیر، تابع‌های int و float یک کپی جدید از داده را به صورت عدد برمی‌گردانند و داده‌ی اصلی را تغییر نمی‌دهند. بنابراین اگر می‌خواهید از عدد تبدیل‌شده استفاده کنید، باید آن را در یک متغیر جدید ذخیره کنید یا همان متغیر قبلی را بازنویسی کنید.

نکته نهایی: تبدیل نوع عددی یکی از مهارت‌های پایه‌ای برنامه‌نویسی است که به شما امکان می‌دهد ورودی‌های کاربر را به داده‌های قابل محاسبه تبدیل کنید. با استفاده از int و float، می‌توانید برنامه‌هایی بنویسید که محاسبات دقیق و درستی انجام دهند. همیشه به یاد داشته باشید که قبل از هر محاسبه‌ای، ورودی را به عدد تبدیل کنید و از صحیح بودن آن اطمینان حاصل نمایید تا از خطاهای غیرمنتظره جلوگیری کنید.
شهروند الکترونیک: فردی که با استفاده درست از ابزارهای دیجیتال و اینترنت، کارها و ارتباطات خود را ساده‌تر، سریع‌تر و کم‌هزینه‌تر انجام می‌دهد.
کپسول آموزشی

شهروند الکترونیک: فردی که با استفاده درست از ابزارهای دیجیتال و اینترنت، کارها و ارتباطات خود را ساده‌تر، سریع‌تر و کم‌هزینه‌تر انجام می‌دهد.

اینترنت و شبکه رایانه‌ای: بستر ارتباطی رایانه‌ها و شبکه‌های به‌هم‌پیوسته برای تبادل داده و استفاده مشترک از منابع
کپسول آموزشی

اینترنت و شبکه رایانه‌ای: بستر ارتباطی رایانه‌ها و شبکه‌های به‌هم‌پیوسته برای تبادل داده و استفاده مشترک از منابع

روش‌های اتصال به اینترنت: خط تلفن ثابت، ADSL، شبکه تلفن همراه و فیبر نوری
کپسول آموزشی

روش‌های اتصال به اینترنت: خط تلفن ثابت، ADSL، شبکه تلفن همراه و فیبر نوری

مودم: وسیله‌ای برای اتصال رایانه یا شبکه خانگی و اداری به اینترنت از طریق تجهیزات مخابراتی.
کپسول آموزشی

مودم: وسیله‌ای برای اتصال رایانه یا شبکه خانگی و اداری به اینترنت از طریق تجهیزات مخابراتی.

پست الکترونیکی: خدمت اینترنتی برای ایجاد، ارسال، دریافت، ذخیره و مدیریت پیام‌ها و اسناد دیجیتال.
کپسول آموزشی

پست الکترونیکی: خدمت اینترنتی برای ایجاد، ارسال، دریافت، ذخیره و مدیریت پیام‌ها و اسناد دیجیتال.

حساب و نشانی پست الکترونیکی: شناسه و فضای اختصاصی کاربر در سامانه ایمیل برای ارسال و دریافت پیام
کپسول آموزشی

حساب و نشانی پست الکترونیکی: شناسه و فضای اختصاصی کاربر در سامانه ایمیل برای ارسال و دریافت پیام

ایمیل (رایانامه): پیام الکترونیکی قابل ارسال و دریافت از طریق پست الکترونیکی
کپسول آموزشی

ایمیل (رایانامه): پیام الکترونیکی قابل ارسال و دریافت از طریق پست الکترونیکی

ارسال و مدیریت ایمیل: کارهایی مانند ارسال گروهی، ذخیره پیش‌نویس، نگه‌داری نامه‌های فرستاده‌شده، حذف و دسته‌بندی پیام‌ها
کپسول آموزشی

ارسال و مدیریت ایمیل: کارهایی مانند ارسال گروهی، ذخیره پیش‌نویس، نگه‌داری نامه‌های فرستاده‌شده، حذف و دسته‌بندی پیام‌ها

پیوست و رونوشت ایمیل: امکانات افزودن فایل، ارسال نسخه آشکار یا ارسال نسخه مخفی پیام به گیرندگان دیگر
کپسول آموزشی

پیوست و رونوشت ایمیل: امکانات افزودن فایل، ارسال نسخه آشکار یا ارسال نسخه مخفی پیام به گیرندگان دیگر

صندوق دریافت و پوشه‌های پست الکترونیکی: بخش‌های نگه‌داری، مشاهده و مرتب‌سازی رایانامه‌ها بر اساس موضوع یا وضعیت.
کپسول آموزشی

صندوق دریافت و پوشه‌های پست الکترونیکی: بخش‌های نگه‌داری، مشاهده و مرتب‌سازی رایانامه‌ها بر اساس موضوع یا وضعیت.

هرزنامه و بدافزار: پیام‌ها و نرم‌افزارهای ناخواسته یا زیان‌آور که می‌توانند به اطلاعات یا رایانه کاربر آسیب بزنند.
کپسول آموزشی

هرزنامه و بدافزار: پیام‌ها و نرم‌افزارهای ناخواسته یا زیان‌آور که می‌توانند به اطلاعات یا رایانه کاربر آسیب بزنند.

ویروس رایانه‌ای: نوعی بدافزار که با آلوده کردن فایل‌ها یا سامانه‌ها، عملکرد رایانه را مختل می‌کند.
کپسول آموزشی

ویروس رایانه‌ای: نوعی بدافزار که با آلوده کردن فایل‌ها یا سامانه‌ها، عملکرد رایانه را مختل می‌کند.