Мой опыт написания быстрого кода на C# для поиска суммы всех простых чисел в заданном диапазоне
Знаете ли вы, что написание эффективного кода на C# может быть чрезвычайно увлекательным? Недавно я столкнулся с задачей поиска суммы всех простых чисел в диапазоне двух чисел, и я хотел бы поделиться со всеми своим опытом и результатами.
Во-первых, самым простым способом для решения этой задачи является перебор всех чисел в заданном диапазоне и проверка, является ли каждое число простым. Однако, этот подход неэффективен, особенно при больших диапазонах чисел.После некоторого исследования, я обнаружил эффективный алгоритм ― Решето Эратосфена. Этот алгоритм позволяет быстро найти все простые числа до заданного числа N.Код на C# для решения данной задачи выглядит следующим образом⁚
csharp
using System;
class Program
{
static void Main
{
int start 2; // начальное число диапазона
int end 100; // конечное число диапазона
long sum 0; // переменная для хранения суммы простых чисел
bool[] isPrime new bool[end 1]; // массив для хранения информации о числах (простое/непростое)
// Инициализация массива
for (int i 2; i < end; i )
{
isPrime[i] true; // Предполагаем, что все числа простые
}
// Решето Эратосфена
for (int p 2; p * p < end; p )
{
if (isPrime[p] true)
{
// Если число простое, помечаем все его кратные числа как непростые
for (int i p * p; i < end; i p)
{
isPrime[i] false;
}
}
}
// Суммируем все простые числа в заданном диапазоне
for (int i start; i < end; i )
{
if (isPrime[i] true)
{
sum i;
}
}
Console.WriteLine(″Сумма всех простых чисел в заданном диапазоне⁚ ″ sum);
}
}
Теперь, когда у нас есть этот код, мы можем легко найти сумму всех простых чисел в заданном диапазоне. Просто измените значения переменных `start` и `end` в коде согласно вашим требованиям.
Я использовал этот код на практике и был поражен его быстродействием. Он справился с поиском суммы простых чисел в диапазоне от 2 до 1000 за доли секунды.
Теперь вы знаете, как написать эффективный код на C#, который быстро ищет сумму всех простых чисел в заданном диапазоне. Вам остается только попробовать его сами и убедиться в его эффективности.