PDA

View Full Version : چرا حاصل تقسیم برای هر عددی صفر بدست میاد؟



ali181818
چهارشنبه 17 تیر 1394, 02:22 صبح
سلام
داشتم C#‎‎‎ یاد می گرفتم که با یک مشکل مواجه شدم . از دوستان خواهشمندم کمکم کنند .
توضیحات مشکل :
من یک ماشین حساب درست کردم که تمامی عملگر ها به خوبی کار میکنند به جز عملگر تقسیم . کدش هم درست نوشتم اما پس از تقسیم دو تا عدد به همین دیگه به جای جواب عدد 0 را به من نمایش میدهد .
این مشکل در حلقه ی فور هم برای من به وجود امده بود . میخواستم برنامه درست کنم که فاکتوریل یک عدد را نشان بدهد اما بجای نماش فاکتوریل عدد صفر را به من نمایش میداد .
سورسش هم گزاشتم .
از VS 2010 استفاده می کنم .
ممنون میشم راهنماییم کنید .

jeson_park
چهارشنبه 17 تیر 1394, 03:10 صبح
سلام
مقدار i رو از 1 شروع کنید نه 0

for (int i = 1; i < Convert.ToInt32(textBox1.Text); i++)



راهی که شما برای محاسبه فاکتوریل انتخاب کردین چندان متداول نیست
بیشتر از طریق راه حل بازگشتی (صدا زدن خود تابع با یه مقدار کمتر) این مساله حل می شه


int Factorial(int i)
{
if (i <= 1)
return 1;
return i * Factorial(i - 1);
}

ali181818
چهارشنبه 17 تیر 1394, 13:42 عصر
سلام
درست شد .
ولی تقسیم چی ؟ شما میدونید مشکل تقسیم از کجا بوده ؟ چون تقسیم هم فقط عدد 0 را نمایش می داد .
ممنون

jeson_park
چهارشنبه 17 تیر 1394, 14:21 عصر
سلام
درست شد .
ولی تقسیم چی ؟ شما میدونید مشکل تقسیم از کجا بوده ؟ چون تقسیم هم فقط عدد 0 را نمایش می داد .
ممنون
جای Tag و Text رو عوض کنید
textBox1.Text = (Convert.ToInt32(textBox1.Tag) / Convert.ToInt32(textBox1.Text)).ToString();