PDA

View Full Version : مبتدی: چگونه می توان درصد عدد را به صورت صفر نمایش داد



bitcob589
جمعه 11 بهمن 1392, 16:33 عصر
با سلام
با استفاده از کد زیر در صد عدد را بدست می آورم یعنی اگر بخواهم هشتاد درصد عدد صد بدست آورم از کد زیر استفاده می کنم

double d = Convert.ToInt32(TextBox1.Text) * 100 / 100;
اما نتیجه هشتاد درصد عدد صد به صورت 80 در خروجی بدست می آید

چگونه می توان در خروجی قبل از عدد صفر وجود داشته باشد یعنی خروجی بدست آمده به صورت زیر باشد


0.70
0.80

sagggad
جمعه 11 بهمن 1392, 16:34 عصر
سلام
الان این دستور که 80 درصد به دست نمیاره؟:متعجب:

Mansoor92
جمعه 11 بهمن 1392, 16:37 عصر
سلام
میشه از این روش استفاده کرد...


double d = Convert.ToInt32(TextBox1.Text) / 100;


یا اینکه از همون قبلی استفاده کنید..

string a = "0." + d.Tostring();

bitcob589
جمعه 11 بهمن 1392, 16:40 عصر
سلام
الان این دستور که 80 درصد به دست نمیاره؟:متعجب:

داخل تکس اگر عدد 80 تایپ کنید عدد 80 بر می گرداند

اگر اشتباه می کنم روش صحیح را بفرمایید


سلام
میشه از این روش استفاده کرد...


double d = Convert.ToInt32(TextBox1.Text) / 100;


یا اینکه از همون قبلی استفاده کنید..

string a = "0." + d.Tostring();


در نظر دارم در خود خروجی در صد .0 وجود داشته باشد

sagggad
جمعه 11 بهمن 1392, 16:52 عصر
خب مثلا شما اگر نتیجه رو در یک لیبل نمایش میدید به این صورت میشه:

double d = Convert.ToInt32(TextBox1.Text) * 100 / 100;
Label1.Text = "0." + d;

باز هم بیشتر توضیح بدید و همه کدها رو بذارید

bitcob589
جمعه 11 بهمن 1392, 17:02 عصر
خب مثلا شما اگر نتیجه رو در یک لیبل نمایش میدید به این صورت میشه:

double d = Convert.ToInt32(TextBox1.Text) * 100 / 100;
Label1.Text = "0." + d;

باز هم بیشتر توضیح بدید و همه کدها رو بذارید

مقدار باید قبل از عدد به جای درصد به 0.80 باشد چون این مقدار را در مقدار عددی دیگری ضرب می شود تا نتیجه بدست آمده را به صورت صحیح بدست آید

sagggad
جمعه 11 بهمن 1392, 17:05 عصر
مقدار باید قبل از عدد به جای درصد به 0.80 باشد چون این مقدار را در مقدار عددی دیگری ضرب می شود تا نتیجه بدست آمده را به صورت صحیح بدست آید
من متوجه منظورتون نشدم اصلا . . . :عصبانی++:

sagggad
جمعه 11 بهمن 1392, 17:08 عصر
اصلا چرا اینطوری ننوشتید؟:

double d = Convert.ToDouble(TextBox1.Text) / 100;
Label1.Text = d;

اینجوری دقیقا همونطور که میخواید نشون میده

headshoter
جمعه 11 بهمن 1392, 17:44 عصر
شما اومدید اول ضربدر صد کردین بعد تقسیم بر صد ... :) خب از همون اول ضربدر یک میکردید دیگه :لبخند:
شما اگه اون قسمت ضرب رو بردارید جوابی که میخواین رو میگیرید .
نیازی هم به استفاده از نوع متغیر double نیست چون دارین یه متغیر int رو تقسیم بر صد میکنید :
int d = Convert.ToInt32(TextBox1.Text) / 100;
در ضمن کد اقای sagggad هم درست نیست به دو دلیل :
1.فقط زمانی جواب درست میده که عددی که وارد شده دو رقمی باشه !
2.نمیشه d رو که double هست رو بریزیم توی Label1.Text !

bitcob589
جمعه 11 بهمن 1392, 17:59 عصر
شما اومدید اول ضربدر صد کردین بعد تقسیم بر صد ... :) خب از همون اول ضربدر یک میکردید دیگه :لبخند:
شما اگه اون قسمت ضرب رو بردارید جوابی که میخواین رو میگیرید .
نیازی هم به استفاده از نوع متغیر double نیست چون دارین یه متغیر int رو تقسیم بر صد میکنید :
int d = Convert.ToInt32(TextBox1.Text) / 100;
در ضمن روش اقای sagggad هم درست نیست چون فقط زمانی جواب میده که عددی که وارد شده دو رقمی باشه !

شما 80 تقسیم بر 100 بکنید نتیجه را مشاهده نمایید
و بعد 800 تقسیم بر 100 بکنید و نتیجه را مشاهده نمایید
اگر ضرب در 100 نشود خروجی را به صورت صحیح نمایش داده نمی شود

sagggad
جمعه 11 بهمن 1392, 18:10 عصر
شما اومدید اول ضربدر صد کردین بعد تقسیم بر صد ... :) خب از همون اول ضربدر یک میکردید دیگه :لبخند:
شما اگه اون قسمت ضرب رو بردارید جوابی که میخواین رو میگیرید .
نیازی هم به استفاده از نوع متغیر double نیست چون دارین یه متغیر int رو تقسیم بر صد میکنید :
int d = Convert.ToInt32(TextBox1.Text) / 100;
در ضمن کد اقای sagggad هم درست نیست به دو دلیل :
1.فقط زمانی جواب درست میده که عددی که وارد شده دو رقمی باشه !
2.نمیشه d رو که double هست رو بریزیم توی Label1.Text !
پست بالای پست خودت رو دیدی؟
من هم دقیقا همینو گفتم
حرف زدن از روی بی اطلاعی بیداد میکنه متاسفانه

headshoter
شنبه 12 بهمن 1392, 00:08 صبح
شما 80 تقسیم بر 100 بکنید نتیجه را مشاهده نمایید
و بعد 800 تقسیم بر 100 بکنید و نتیجه را مشاهده نمایید
اگر ضرب در 100 نشود خروجی را به صورت صحیح نمایش داده نمی شود
من درست متوجه نشدم ، اگه 80 قراره بشه 0.8 پس 800 هم باید بشه 8 دیگه ؟ درسته یا من متوجه نمیشم ؟
به هر حال من این کد رو که مینویسم هیچ تغییری توی تکست باکسم ایجاد نمیشه ، دوباره همون عدد قبلی رو نشون میده !
int d = Convert.ToInt32(textBox1.Text) * 100 / 100;
textBox1.Text = d.ToString();

Mahmoud.Afrad
شنبه 12 بهمن 1392, 00:19 صبح
من درست متوجه نشدم ، اگه 80 قراره بشه 0.8 پس 800 هم باید بشه 8 دیگه ؟ درسته یا من متوجه نمیشم ؟
به هر حال من این کد رو که مینویسم هیچ تغییری توی تکست باکسم ایجاد نمیشه ، دوباره همون عدد قبلی رو نشون میده !
int d = Convert.ToInt32(textBox1.Text) * 100 / 100;
textBox1.Text = d.ToString();
از این کد انتظار دیگه ای نباید داشت. شما داری عدد رو ضرب در یک میکنی پس تغییری نمیکنه.

منطق کاری که انتظار داری رو مشخص نکردی.

کافیه ضرب در صد رو حذف کنی.

headshoter
شنبه 12 بهمن 1392, 00:43 صبح
از این کد انتظار دیگه ای نباید داشت. شما داری عدد رو ضرب در یک میکنی پس تغییری نمیکنه.

منطق کاری که انتظار داری رو مشخص نکردی.

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

headshoter
شنبه 12 بهمن 1392, 00:48 صبح
پست بالای پست خودت رو دیدی؟
من هم دقیقا همینو گفتم
حرف زدن از روی بی اطلاعی بیداد میکنه متاسفانه

عزیزم توی پست بالای من دو خط کد هست که توی یکیشون متغیر d که از نوع double هست داره ریخته میشه توی Label1.Text ، بعد من میگم کد درست نیست ناراحت میشن ... !
Label1.Text = d;
پ ن : جمله اخرتون یه مقدار تند هست !