PDA

View Full Version : سوال: نمایش ندادن ماکزیمم اعداد منفی در دیتا گرید



kama2222
پنج شنبه 06 آذر 1399, 16:40 عصر
با سلام با کد ذیل اعداد در یک ستوون دیتاگرید را ماکزیمم را به من نشان میدهد ولی اگر اعداد منفی باشد صفر نمایش میدهد.لطفا راهنمایی فرمایید.

double max = 0;
( if (dataGridView4.Rows.Count > 0
{
for (int i = 0; i <= 10; i++)
{

if (max < Convert.ToDouble(dataGridView4.Rows[i].Cells[15].Value))
{
max = (Convert.ToDouble(dataGridView4.Rows[i].Cells[15].Value));
}
}
; ( textBox13.Text = max.ToString("N6");
}

the king
جمعه 07 آذر 1399, 02:41 صبح
با سلام با کد ذیل اعداد در یک ستوون دیتاگرید را ماکزیمم را به من نشان میدهد ولی اگر اعداد منفی باشد صفر نمایش میدهد.لطفا راهنمایی فرمایید.

double max = 0;
( if (dataGridView4.Rows.Count > 0
{
for (int i = 0; i <= 10; i++)
{

if (max < Convert.ToDouble(dataGridView4.Rows[i].Cells[15].Value))
{
max = (Convert.ToDouble(dataGridView4.Rows[i].Cells[15].Value));
}
}
; ( textBox13.Text = max.ToString("N6");
}



شما مقدار اولیه max رو صفر گرفته اید، یعنی از همون اول فرض کرده اید که max نمیتونه کمتر از صفر باشه. طبعا هیچکدوم از مقادیر منفی از صفر بزرگتر نیست که مقدار max تغییر کنه.
اصولا باید مقدار اولیه max رو روی حداقل مقدار ممکن (double.MinValue) تنظیم کنید، یا روی یکی از اون مقادیر (مثلا اولین مقدار)

if (dataGridView4.Rows.Count > 0)
{
double max = Convert.ToDouble(dataGridView4.Rows[0].Cells[15].Value);
for (int i = 1; i <= 10; i++)
{
var value = Convert.ToDouble(dataGridView4.Rows[i].Cells[15].Value);
if (max < value)
{
max = value;
}
}
textBox13.Text = max.ToString("N6");
}

kama2222
سه شنبه 11 آذر 1399, 17:34 عصر
خیلی ممنون استاد عزیز