Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
5 / 5 / 1
Регистрация: 27.11.2009
Сообщений: 232

Разложение на простые множители, ошибка неявного преобразования

23.05.2012, 01:25. Показов 2159. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброй ночи!
Необходимо реализовать алгоритм разложения на множители, вот, что имеется:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
        public BigInteger Razlogenie_na_mnogiteli(BigInteger p)
        {
            BigInteger[] prime = { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251 };
            BigInteger[] mnog;
            int j = 0;
            for (int i = 0; i < 54; i++)
            {
                while (p % prime[i] == 0)
                {
                    mnog[j] = prime[i];
                    j++;
                    p = p / prime[i];
                    if ((Test_Prime1(p) == true) && (Test_Prime2(p) == true))
                    {
                        mnog[j] = p;
                        return mnog;
                    }
                }
            }
        }
Test_Prime1 и Test_Prime2 - эти две функции проверяют простое ли число

Высвечивается такая ошибка: Неявное преобразование типа "System.Numerics.BigInteger[]" в "System.Numerics.BigInteger" невозможно, что я тут неправильно определила??

И еще можно ли допустим список простых чисел не закидивать в массив так BigInteger[] prime = { 2, 3, 5, 7, 11, 13....., а допустим есть ли функция или оператор какой-нибудь который генерирует n первых простых чисел?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.05.2012, 01:25
Ответы с готовыми решениями:

Напечатать разложение числа на простые множители
подскажите пожалуйста ? Заранее благодарен!! Дано натуральное число п. Напечатать разложение этого числа на простые множители....

Разложение натурального числа на простые множители
Добрый день, люди подскажите пожалуйста программный код по теме курсовой: Разложение натурального числа на простые множители. Заранее...

Ошибка при описании процедуры Factors(A,N,F), находящей разложение натурального числа A на простые множители
Описать процедуру Factors(A,N,F), находящую разложение натурального числа A на простые множители. количество множителей возвращается в...

3
 Аватар для Lasur
267 / 257 / 43
Регистрация: 18.03.2012
Сообщений: 506
23.05.2012, 02:46
1)
C#
1
return mnog;
mnog - массив BigInteger.
В объявлении функции
C#
1
public BigInteger Razlogenie_na_mnogiteli(BigInteger p)
возвращается просто BigInteger.
2)Следует инициализировать массив mnog.
3)Факторизация целых чисел
0
5 / 5 / 1
Регистрация: 27.11.2009
Сообщений: 232
23.05.2012, 03:18  [ТС]
А вообще для больших простых чисел какой алгоритм лучше использовать?
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
23.05.2012, 07:40
Цитата Сообщение от Koketka Посмотреть сообщение
А вообще для больших простых чисел какой алгоритм лучше использовать?
Лучше - http://en.wikipedia.org/wiki/G... ield_sieve
Только чтобы его запрограммировать, надо довольно хорошо разбираться в математике.

Например, можно попробовать http://ru.wikipedia.org/wiki/Ρ-алгоритм_Полларда. Довольно прост в реализации, и сложность меньше чем у простого перебора.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.05.2012, 07:40
Помогаю со студенческими работами здесь

Разложение в простые множители
Дано натуральное число n. Требуется найти его разложение на простые множители. Формат выходных данных Требуется вывести строго...

Разложение на простые множители*
Всем привет. Поможете с задачой только использвав &lt;iostream&gt; Задано натуральное число &gt;= 2 . Разложить его на простые множители ...

Разложение на простые множители
Требуется разложить целое число N на простые множители и вывести результат в порядке возрастания множителей с указанием степени. ...

Разложение на простые множители
Разложение на простые множители

Разложение на простые множители
Требуется вывести представление целого числа N в виде произведения простых чисел. Входные данные Входной файл INPUT.TXT содержит...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru