На нашем сайте Вы сможете найти готовые курсовые и дипломные работы по программированию
Сейчас работаем

Решето Эратосфена С#

  • В данной работе представлены ТОЛЬКО ИСХОДНИКИ проекта C# Visual Studio 2010 WinForms
  • Исходное задание на курсовую работу: Дано натуральное число n (n>=2). Найти все меньшие n простые числа, используя решето Эратосфена.

Анимация алгоритма.

Целое число, большее 1, называется простым, если оно не делится нацело ни на какое другое, кроме себя и 1.

Древний алгоритм «Решето Эратосфена» для поиска всех простых чисел до n выглядит так:

  • Создать список последовательных чисел от 2 до n2, 3, 4, ..., n.
  • Пусть p=2, это первое простое число.
  • Зачеркнуть все последующие числа в списке с разницей в p, т.е. 2*p, 3*p, 4*p и т.д. В случае p=2 это будут4,6,8....
  • Поменять значение p на первое не зачеркнутое число после p.
  • Повторить шаги 3-4 пока p2 < n.
  • Все оставшиеся не зачеркнутыми числа — простые.
Фрагмент программного кода
            //составляем список из чисел от 2 до n
            List<int> numbers = new List<int>();
            for (i = 2;i<=n;i++)
                numbers.Add(i);

            //для каждого числа
            for (i = 0; i<numbers.Count; i++)
            {
                //идем по остальным числам
                for (j=i; j<numbers.Count;j++)
                {
                    //вычеркиваем большие кратные числа
                    if ((numbers[i] != numbers[j]) && (numbers[j] % numbers[i] == 0))
                    {
                        numbers.RemoveAt(j);
                        j--;	
                    }
                }
            }

            richTextBox.AppendText("Простые числа:\n");
            String s = "";
            for (i=0; i<numbers.Count;i++)
                s += numbers[i].ToString() + " ";
            richTextBox.AppendText(s);

            //список хранения четерок
            List<int> four = new List<int>();
            //текущее число найденых чисел одного интервала и сам интервал
            int interval = 0;
            richTextBox.AppendText("\nЧетверки простых чисел:\n");

            for (i = 0; i<numbers.Count; i++)
            {
                //если первый или новый интервал сбрасываем значения
                if ((i == 0) || (numbers[i] / 10 != interval))
                {
                    interval = numbers[i] / 10;
                    four.Clear();
                }
                //если интервал не изменился записывем число
                if (numbers[i] / 10 == interval)
                {
                    four.Add(numbers[i]);

                    //если записано 4 числа выводим на экран
                    if (four.Count == 4)
                    {
                        s = "";
                        for (j = 0; j < 4; j++)
                            s += four[j].ToString() + " ";
                        richTextBox.AppendText(s+"\n");
                        
                    }
                }
            }

Содержание архива

  • исходный код  на C# WinForms для Visual Studio 
Купить 399,00 
Сразу после оплаты Вы получите работу на электронную почту. Файлы отправляются автоматически. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (4)

klausms

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегистрированые пользователи имеют возможность комментировать работы
Другие работы автора
Тип Название Рейтинг Категория Стоимость
Исходник Нахождение эйлеровых циклов в графе С++ 0 C/C++ 800,00
Курсовая Автоматическое реферирование текста C# 5 .NET (C#) 3 700,00
Курсовая Автоматическое составление кроссвордов С++ 0 .NET (C#) 2 700,00
Исходник Алгоритм Рабина-Карпа C# 0 .NET (C#) 1 500,00
Исходник Алгоритм Хаффмана C# 22 .NET (C#) 3 500,00
Новые работы
Тип Название Рейтинг Категория Стоимость
Диплом Разработка Telegram-бота для колледжа АГУ (Python) new 0 Python 10 000,00
Исходник Учёт товаров (Python, Tkinter, Sqlite) new 0 Python 3 000,00
Курсовая АИС "Авиакасса" (C#, WPF, WinForms, SQLite, SQL Server, Access) new 0 .NET (C#) 5 500,00
Курсовая Курсовая работа разработка мобильных приложений "FTP клиент для Android" new 0 Сетевые протоколы 6 500,00
Исходник Транспонирование матрицы new 0 .NET (C#) 150,00
Купить

399,00 

Сразу после оплаты Вы получите работу на электронную почту. Файлы отправляются автоматически. Исходник программ Вы сможете отредактировать, как Вам нужно.
2. Решето Эратосфена.rar
441723
Оцени работу

рейтинг

Поделись работой с друзьями

Категории
Решето Эратосфена С#
Дано натуральное число n (n>=2). Найти все меньшие n простые числа, используя решето Эратосфена.
Категория: Образование
Стоимость: 399,00