PDA

View Full Version : سوال: چگونه می توانم آیتم های چند لیست باکس را با هم ادغام کنم ؟



dele_ghamgin_2008
سه شنبه 26 اسفند 1393, 14:18 عصر
من برنامه ای زیر را ساختم و می خواهم با کلیک بر روی باتن شروع ، از 5 لیست باکس موجود عنوان بسازد . شرطش اینه که عنوان باید حتماً بیش از 4 کلمه باشد یعنی باید حتما از 4 لیست بهره ببرد و لیست سوم باید حتما در عنوان وجود داشته باشد . میخواهم عناوین ساخته شده به لیست خروجی انتقال پیدا کنند . چگونه می توانم این کار رو انجام دهم ؟ لطفاً راهنمایی کنید :
129525

dele_ghamgin_2008
سه شنبه 26 اسفند 1393, 14:27 عصر
من این دستور رو نوشتم ولی خب فقط یک عنوان باهاش میسازه :


private void btnStart_Click(object sender, EventArgs e)
{
try
{
LstOut1.Items.Add(LstIn1.Items[0].ToString() + " " + LstIn2.Items[0].ToString() + " " + LstIn3.Items[0].ToString() + " " + LstIn4.Items[0].ToString() + " " + LstIn5.Items[0].ToString());
}
catch { }
}


چه باید کرد که بتوان تمامی موارد ممکن را ازش عنوان سازی نمود ؟

MehdiElexal
سه شنبه 26 اسفند 1393, 16:28 عصر
Random rnd = new Random();
int card = rnd.Next(...);

شما باید بصورت رندوم اعداد رو تولید کنی. جای اون سه نقطه ماکزیمم عدد تصادفی رو بذار و بذار داخل کروشه هات ک میخوان آیتم رو بردارن

موفق باشید

Mofid.m
سه شنبه 26 اسفند 1393, 16:54 عصر
for (int c1 = 0; c1 < lstIn1.Items.Count; c1++)
{
titel[0] = lstIn1.Items[c1].ToString();
for (int c2 = 0; c2 < lstIn2.Items.Count; c2++)
{
titel[1] = lstIn2.Items[c2].ToString();
for (int c3 = 0; c3 < lstIn3.Items.Count; c3++)
{
titel[2] = lstIn3.Items[c3].ToString();
for (int c4 = 0; c4 < lstIn4.Items.Count; c4++)
{
titel[3] = lstIn4.Items[c4].ToString();
lstOut.Items.Add(titel[0] + " " + titel[1] + " " + titel[2] + " " + titel[3]);


}


}


}
}




for (int c1 = 0; c1 < lstIn1.Items.Count; c1++)
{
titel[0] = lstIn1.Items[c1].ToString();
for (int c2 = 0; c2 < lstIn2.Items.Count; c2++)
{
titel[1] = lstIn2.Items[c2].ToString();
for (int c3 = 0; c3 < lstIn3.Items.Count; c3++)
{
titel[2] = lstIn3.Items[c3].ToString();
for (int c4 = 0; c4 < lstIn4.Items.Count; c4++)
{
titel[3] = lstIn4.Items[c4].ToString();
for (int c5 = 0; c5 < lstIn5.Items.Count; c5++)
{
titel[4] = lstIn5.Items[c5].ToString();


lstOut.Items.Add(titel[0] + " " + titel[1] + " " + titel[2] + " " + titel[3]+" "+titel[4]);
}


}


}


}
}




for (int c1 = 0; c1 < lstIn2.Items.Count; c1++)
{
titel[0] = lstIn2.Items[c1].ToString();
for (int c2 = 0; c2 < lstIn3.Items.Count; c2++)
{
titel[1] = lstIn3.Items[c2].ToString();
for (int c3 = 0; c3 < lstIn4.Items.Count; c3++)
{
titel[2] = lstIn4.Items[c3].ToString();
for (int c4 = 0; c4 < lstIn5.Items.Count; c4++)
{
titel[3] = lstIn5.Items[c4].ToString();
lstOut.Items.Add(titel[0] + " " + titel[1] + " " + titel[2] + " " + titel[3]);


}


}


}
}

titel هم یه آرایه رشته ایی به طول 5

dele_ghamgin_2008
سه شنبه 26 اسفند 1393, 18:32 عصر
ممنونم ولی خودم این دستور رو بدست آوردم و به درستی هم جواب داده :

for (int a = 0; a < LstIn1.Items.Count ; a++)
{
for (int b = 0; b < LstIn2.Items.Count; b++)
{
for (int c = 0; c < LstIn3.Items.Count; c++)
{
for (int d = 0; d < LstIn4.Items.Count; d++)
{
for (int f = 0; f < LstIn5.Items.Count; f++)
{
LstOut1.Items.Add(LstIn1.Items[a].ToString() + " " + LstIn2.Items[b].ToString() + " " + LstIn3.Items[c].ToString() + " " + LstIn4.Items[d].ToString() + " " + LstIn5.Items[f].ToString());
}
}
}
}
}

MehdiElexal
چهارشنبه 27 اسفند 1393, 10:47 صبح
ممنونم ولی خودم این دستور رو بدست آوردم و به درستی هم جواب داده :

for (int a = 0; a < LstIn1.Items.Count ; a++)
{
for (int b = 0; b < LstIn2.Items.Count; b++)
{
for (int c = 0; c < LstIn3.Items.Count; C++‎)
{
for (int d = 0; d < LstIn4.Items.Count; d++)
{
for (int f = 0; f < LstIn5.Items.Count; f++)
{
LstOut1.Items.Add(LstIn1.Items[a].ToString() + " " + LstIn2.Items[b].ToString() + " " + LstIn3.Items[c].ToString() + " " + LstIn4.Items[d].ToString() + " " + LstIn5.Items[f].ToString());
}
}
}
}
}

این روش همیشه اعداد رو به یک روال میده و اصلا بصورت رندوم تولید نمیکنه.همونطور که اشاره شد باید از توابع رندوم برای تولید اعداد تصادفی استفاده کنید. موفق باشید

dele_ghamgin_2008
سه شنبه 04 فروردین 1394, 09:44 صبح
این روش همیشه اعداد رو به یک روال میده و اصلا بصورت رندوم تولید نمیکنه.همونطور که اشاره شد باید از توابع رندوم برای تولید اعداد تصادفی استفاده کنید. موفق باشید

من به دنبال رندم نبودم . و نمیخوام شانسی برام کاری رو انجام بده . میخواهم بر اساس لیستی که دارم برایم عنوان بسازه .