محاسبه فراوانی داده ها در جلوی هر داده
سلام
من میخوام یه برنامه بنویسم که اعدادی رو که از RichTextBox دریافت میکنیم رو فراوانی هر کدومشون رو حساب کنیم و مقابل اون عدد نوشته بشه. مثلا اگر اعداد 1و1و2و3و3و4و4و4 رو وارد کنیم نتیجه مشابه زیر بشه:
1 2
2 1
3 2
4 3
که ستون اول اعداد ورودی و روبروش فراوانی هر کدوم رو نوشته.
خط اول کد رو هم نوشتم!!!!!!!
string[] ar = richTextBox1.Text.Split(new char[] { '\n' });
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
(from data in ar where ar[i]==data select data(.count()
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
نقل قول:
نوشته شده توسط
winner1
(from data in ar where ar[i]==data select data(.count()
فکر کنم منظور منو متوجه نشدین! منظور من اینه که اعداد ورودی به ترتیب مرتب بشه بعد تکراری هاش حذف بشه بعدش میزان تکرار هر عدد(فراوانی) روبروی اون عدد نوشته بشه.
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
نقل قول:
نوشته شده توسط
10jafar
سلام
من میخوام یه برنامه بنویسم که اعدادی رو که از RichTextBox دریافت میکنیم رو فراوانی هر کدومشون رو حساب کنیم و مقابل اون عدد نوشته بشه. مثلا اگر اعداد 1و1و2و3و3و4و4و4 رو وارد کنیم نتیجه مشابه زیر بشه:
1 2
2 1
3 2
4 3
که ستون اول اعداد ورودی و روبروش فراوانی هر کدوم رو نوشته.
خط اول کد رو هم نوشتم!!!!!!!
string[] ar = richTextBox1.Text.Split(new char[] { '\n' });
حالا چرا string ?????????????:متفکر:
var numbers = new int[] { 1, 1, 1, 2, 2, 2, 2, 3, 3, 9, 9, 16, 16 };
var counts = numbers
.GroupBy(item => item)
.Select(grp => new { Number = grp.Key, Count = grp.Count() });
ویاینکه اینطوری باشه ::متفکر:
var array = new int[] {1,1,1,2,2,2,2,3,3,9,9,16,16};
var query = from x in array
group x by x into g
orderby count descending
let count = g.Count()
select new {Value = g.Key, Count = count};
foreach (var i in query)
{
Console.WriteLine("Value: " + i.Value + " Count: " + i.Count);
}
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
نقل قول:
نوشته شده توسط
khokhan
حالا چرا string ?????????????:متفکر:
var numbers = new int[] { 1, 1, 1, 2, 2, 2, 2, 3, 3, 9, 9, 16, 16 };
var counts = numbers
.GroupBy(item => item)
.Select(grp => new { Number = grp.Key, Count = grp.Count() });
ویاینکه اینطوری باشه ::متفکر:
var array = new int[] {1,1,1,2,2,2,2,3,3,9,9,16,16};
var query = from x in array
group x by x into g
orderby count descending
let count = g.Count()
select new {Value = g.Key, Count = count};
foreach (var i in query)
{
Console.WriteLine("Value: " + i.Value + " Count: " + i.Count);
}
درسته که string تعریف کردم چون richtextbox این طوری دریافت میکنه ولی بعدش به متغیر مناسب تبدیلش کردم!از این بابت خیالت راحت.ولی نکته ای که این جاست اینه که من قبلا مشابه این سوررس رو از اینترنت گرفته بودم ولی موفق نشدم. میشه برنامش که تو حالت کلی هر عددی که کاربر میده رو دریافت کنه رو فایلش رو قرار بدی؟ممنون میشم:تشویق:
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
خب شما یه دیکشنری بگیر از نوع <int,int> بعد هر عددی که میبین dict[mynum]++ w رو انجام بده.
1 ضمیمه
نقل قول: محاسبه فراوانی داده ها در جلوی هر داده
نقل قول:
نوشته شده توسط
10jafar
درسته که string تعریف کردم چون richtextbox این طوری دریافت میکنه ولی بعدش به متغیر مناسب تبدیلش کردم!از این بابت خیالت راحت.ولی نکته ای که این جاست اینه که من قبلا مشابه این سوررس رو از اینترنت گرفته بودم ولی موفق نشدم. میشه برنامش که تو حالت کلی هر عددی که کاربر میده رو دریافت کنه رو فایلش رو قرار بدی؟ممنون میشم:تشویق:
نمونه از کدهایی که براتون دادم :لبخند:
ضمیمه 117403
البته مدتی است که امکان آپلود فایل در این سایت رو نداریم اما از این لینک می تونی دریافت کنی