Найти все меньшие n простые числа, используя решето Эратосфена - C#
Формулировка задачи:
Дано натуральное число n (n≥2). Найти все меньшие n простые числа, используя решето Эратосфена. Решетом Эратосфена называют следующий способ. Выпишем подряд все целые числа от 2 до n. Первое простое число 2. Подчеркнем его, а все большие числа, кратные 2, зачеркнем. Первое из оставшихся чисел 3. Подчеркнем его как простое, а все большие числа, кратные, 3, зачеркнем. Первое число из оставшихся теперь 5, так как 4 уже зачеркнуто. Подчеркнем его как простое, а все большие числа, кратные 5 зачеркнем и т.д.:2, 3, 4,5, 6,7, 8, 9, 10, ... Исходную последовательность чисел организовать в виде однонаправленного списка. Удаление производить внутри этого списка, не используя дополнительные списки.
Help заранее спасибо
Решение задачи: «Найти все меньшие n простые числа, используя решето Эратосфена»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- class Program
- {
- public static void Main(string[] args)
- {
- int n = Int32.Parse(Console.ReadLine());
- List<int> list = Enumerable.Range(2, n - 2).ToList<int>();
- for (int i = 0; i < list.Count; i++)
- for (int j = list.Count - 1; j > i; j--)
- if (list[j] % list[i] == 0)
- list.RemoveAt(j);
- foreach (int i in list)
- Console.Write(i);
- Console.ReadKey();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д