PDA

View Full Version : سوال: در سی شارپ چطوری می شه فهمید یک عدد چند تا صفر داره؟



sadaf_
شنبه 30 دی 1391, 21:55 عصر
چطوری می شه فهمید یک عدد چند تا صفر داره؟
ممنون

nilmil_nil
شنبه 30 دی 1391, 21:59 عصر
با تقسیم های متوالی و باقیمانده هر تقسیم بر 10 میشه فهمید

the king
شنبه 30 دی 1391, 22:03 عصر
چطوری می شه فهمید یک عدد چند تا صفر داره؟
ممنون

در مورد اعداد اعشاری ممیز شناور دقت رو کم می کنه.


int CountOfZero(double value)
{
string s = value.ToString("0.############");
return s.Length - s.Replace("0", "").Length;
}

int CountOfZero(int value)
{
string s = value.ToString();
return s.Length - s.Replace("0", "").Length;
}

sadaf_
شنبه 30 دی 1391, 22:12 عصر
فقط برای اعداد می خواستم
ممنون

Arash_janusV3
شنبه 30 دی 1391, 22:24 عصر
string str = "120000000000";
int CountZero = 0;
for (int i = 1; i <= str.Length; i++)
{
if (str.Substring(i - 1,1).ToString() == "0")
{
CountZero++;
}
}
MessageBox.Show(CountZero.ToString());

sadaf_
شنبه 30 دی 1391, 22:33 عصر
اگر یک عدد که 9 رقم داره و 4 رقم اون صفر هست
چطوری می شه فهمید چند درصد عدد 9 رقمی صفر داره
باز هم ممنونم

Arash_janusV3
شنبه 30 دی 1391, 22:41 عصر
string str = "1234560000";
int CountZero = 0, CountNotZero = 0;
int sum = 0;
for (int i = 1; i <= str.Length; i++)
{
if (str.Substring(i - 1, 1).ToString() == "0")
{
CountZero++;
}
else
{
CountNotZero++;
sum += Convert.ToInt32(str.Substring(i - 1, 1).ToString());
}
}
double dZero = (100 / str.Length) * CountZero;
double dNotZero = (100 / str.Length) * CountNotZero;
MessageBox.Show(" dZero =" + dZero.ToString());
MessageBox.Show(" dNotZero =" + dNotZero.ToString());

فرید نجفلو
شنبه 30 دی 1391, 23:22 عصر
این همه کد واسه یه کار ریزه میزه؟!!

long TheNum = 1002500300600;
int ZeroCount = TheNum.ToString().Count(dig => dig == '0');//تعداد صفر ها
double ZeroPercent = (ZeroCount *100) / TheNum.ToString().Length ;//درصد صفر ها

danialafshari
یک شنبه 01 بهمن 1391, 00:24 صبح
سلام


Count(dig => dig == '0')
میشه درباره این خط توضیح بدید؟ dig چیه؟