سلام خدمت همگی . من میخوام کاراکترهای abc رو در تمام حالت های خود بدون تکرار یا با تکرار در Textbox یا RichTextbox نمایش دهم.
بوطر مثال abc رو در نظر بگیرید ، میخوام بصورت زیر بشه و داخل ویندوز فرم سی شارپ نمایش بدم :
abc
acb
bac
bca
..... و همینطور ادامه مراحلش . لطفا کمکم کنید .
مشکل کجاست ؟
باید با حلقه for یا While انجام دهید
باید با For انجام بشه ولی چطوری رو نمیدونم . یه تابع بازگشتی یا ترکیب باید باشه که تمام حالت هاشو برام چاپ کنه . این لینک رو بی زحمت یکی ببین
توی این لینک یه کدی آخر نوشته ها هست ولی متاسفانه نمیتونم یجوری درش بیارم که توی ویندوز فرم قابل نمایش باشه . کدش هم اینه :
IList<Char> chars = "abc".ToList(); List<string> allCombinations = new List<String>(); for (int i = 1; i <= chars.Count; i++) { var combis = new Facet.Combinatorics.Combinations<Char>( chars, i, Facet.Combinatorics.GenerateOption.WithRepetition); allCombinations.AddRange(combis.Select(c => string.Join("", c))); } foreach (var combi in allCombinations) Console.WriteLine(combi);
اینم خروجیشه
a
b
c
aa
ab
ac
bb
bc
cc
aaa
aab
aac
abb
abc
acc
bbb
bbc
bcc
ccc
لطفا کمکم کنید خواهشا
باید حروفی که میخواهید رو جدا کنید سپس با یک حلقه روی هر 3 حرف پیمایش کنید و رشته رو بسازید
یک لیست درست کنید و چک کنید این رشته از قبل در لیست نباشه اگر نبود اد کنید
نمونه ندارم دوست من
متاسفم
ممنونم
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)