PDA

View Full Version : متد حداقل در سی شارپ



Sadreddin
سه شنبه 26 اردیبهشت 1391, 13:00 عصر
آیا سی شارپ متدی داره که توسط اون بشه این کار را انجتم داد ؟



اگر حداقل2 تا از متغیرهام true شد به من پیغام بده . ( یا حداقل 2 تا از چک باکس ها زده شده به من پیغام بده )

c1
c2
c3
c4
c5
c6
اگر بخوام با ایف بنویسم تعداد حالاتش خیلی زیاد میشه . توجه دااشته باشید حداقل .

فرید نجفلو
سه شنبه 26 اردیبهشت 1391, 13:47 عصر
سلام
این تابع شما اگر هم باشه فکر نکنم اسمش حداقل باشه چون Min یه معنی دیگه داره
ولی من یه کد پیشنهادی دارم شاید بدردتون خورد

//For Varables
Boolean var1 = true;
Boolean var2 = true;
Boolean var3 = false;
if (Convert.ToInt32(var1) +
Convert.ToInt32(var2) +
Convert.ToInt32(var3) >= 2)
MessageBox.Show("AtLast 2 Var was True");

//For ChekBoxes
int Values = 0;
foreach (Control aChk in this.Controls)
if (aChk is CheckBox)
Values += Convert.ToInt32(((CheckBox)aChk).Checked);


if (Values >= 2)
MessageBox.Show("AtLast 2 CheckBox Is Checked");

mmd2009
سه شنبه 26 اردیبهشت 1391, 14:44 عصر
با سلام

کد های بالا رو میتونید استفاده کنید ولی به نظر من استفاده از کد زیر کم هزینه تره :


this.Controls.OfType<CheckBox>().
Where(d => d.Checked).Sum(d => Convert.ToInt32(d.Checked))


موفق باشید

quantomquery
سه شنبه 26 اردیبهشت 1391, 15:16 عصر
سلام
یه متغیر اینت تعریف کن
6 تا if بنویس هر کدوم true بود یکی به اینت اظافه کن
سر اخر تعداد true ها تو متغیر اینت هست

Sadreddin
سه شنبه 26 اردیبهشت 1391, 17:09 عصر
سلام
ممنون از راهنمایی هاتون یک کد کشف کردم :


public static int Truth(params bool[] booleans)
{
return booleans.Count(b => b);
}
if (Truth(m, n, o, p, q) > 2)