چرا تقسیم دو عدد در سی شارپ برابر با صفر می شود ؟
سلام دو عد int در یک پروژه سی شارپ دارم. گاهی پاسخ برابر با صفر میشه در حالی که هیچ کدام از اعداد برابر با صفر نیست. به عنوان مثال نمونه زیر رو نگاه کنید.
int a = 5;
int b = 25;
int sum = a / b;
انتظار دارم پاسخ معادله بالا 0.2 باشه نه صفر.
پاسخ هوش مصنوعی
در سی شارپ، وقتی شما دو عدد از نوع int را تقسیم می کنید، نتیجه نیز به صورت یک عدد صحیح (int) برگردانده می شود. در این حالت، قسمت اعشاری از نتیجه حذف می شود و فقط قسمت صحیح باقی می ماند.
برای اینکه به نتیجه ای با دقت اعشاری (مثل 0.2) دست پیدا کنید، یکی از اعداد باید به نوع double یا float تبدیل شود. شما می توانید این کار را با استفاده از تبدیل نوع (casting) انجام دهید.
به عنوان مثال، کد شما می تواند به شکل زیر تغییر یابد:
int a = 5;
int b = 25;
double sum = (double)a / b;
با این کار، نتیجه تقسیم به صورت 0.2 خواهد بود.
پاسخ سوال شما خیلی ساده هست. چون شما اعدادتون و نتیجه نهایی خودتون رو در متغیری از نوع int تعریف کردید. ضمنا عدد اول از عدد دوم کوچکتر هست. پاسخ تقسیم شما 0.2 هست که چون کمتر از 1 هست مقدار صفر نمایش داده میشه.
شما باید متغیرها رو از نوع float تعریف کنید.
float a = 5;
float b = 25;
float sum = a / b;
- دسترسی به پکیج های nuget در زمان قطع نت بین الملل
- نمایش آخرین ردیف دیتاگیرید موقع لود در wpf
- مشکل اینترنت جهانی و عدم دسترسی به cdnjs.cloudflare.com
- مشکل در نصب sql server 2022
- جلوگیری از اد شدن خودکار در گروه و کانال تلگرام
- کم کردن حجم فیلم توسط کد در Asp net core
- چه کسانی استوری تلگرام را می بینند ؟
- برای کسب و کار تلگرام پرمیوم بهتره یا واتس اپ بیزینس ؟
- جلوگیری از انتشار غیرمجاز مطالب در کانال های تلگرامی
- تفاوت های تلگرام و واتس اپ چیست ؟
- مشکل تاریخ شمسی در سی شارپ
- نمایش گزارش stimulsoft روی کلاینت
- تفاوت های سی شارپ 8 با نسخه های قبلی چیه؟
- انتخاب چند سطر دلخواه توسط چک باکس در DataGrid و محاسبه جمع سطرهای انتخاب شده
- نمایش نوتیفکیشن در سی شارپ
- ارسال پارامتر از سی شارپ به استیمول سافت
- عدم نمایش عکس در دیتاگرید ویو در wpf
- Library Animation برای کنترلهای WPF
- مشکل در تغییر مقدار Text کنترل RibbonBar در کامپوننت DevExpress
- قرار دادن مقادیر ارسالی یک ستون از جدول به صورت سطری در استیمول