سلام خدمت دوستان
یه چند روزی بود داشتم رو نحوه پیدا کردن n عدد اول فکر می کردم که بالاخره یه راه حل خوب پیدا کردم!
اونم استفاده از دو حلقه For و دو حلقه Foreach به شکل زیر بود:
توضیح : عددی که فقط بر خودش و یک بخش پیر باشد یک عدد اول است برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
}کد:int input ; int.TryParse(txtInput.Text, out input); int[] Numbers = new int[input]; int[] Divide = new int[500]; for (int x = 2 ; x < input; x++) { Numbers[x] = x; } for (int x = 0; x < 500; x++) { Divide[x] = x + 2 ; } foreach ( int x in Numbers ) { listBox1.Items.Add(x + " یک عدد اول است."); foreach (int m in Divide) { if (x % m == 0 && x != m) { listBox1.Items.Remove(x + " یک عدد اول است."); Application.DoEvents();
مثلا تا عدد 10000 محاسبه کردم تعداد اعداد اول 1229 تا بود! برنامه تا محاسبه عدد یک میلیون هم هنگ نمی کنه!
به زودی پروژه کار در تاپیک مربوطه گذاشته میشه.
هدف از ایجاد تاپیک جداگانه درخواست از دوستان است که اگر راه حل بهتری سراغ دارند اینجا اعلام کنند.
با تشکر علی برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید







پاسخ با نقل قول

Bookmarks