Programming Fundamentals -> Exercises: Arrays -> 04. Sieve of Eratosthenes
Здравейте,
Опитах се да реша задачата по свой начин, но стигам до 80 и не мога да разбера къде греша.
Моля за помощ :)
Код:http://pastebin.com/AdV6eYJZ
Здравейте,
Опитах се да реша задачата по свой начин, но стигам до 80 и не мога да разбера къде греша.
Моля за помощ :)
Код:http://pastebin.com/AdV6eYJZ
Ако му подадеш 130 за input се вижда, че за просто число вади и 121, което е 11*11. Това е така, защото допускаш проверка за просто число, делейки го на 2 3 5 7, което не е достатъчно като условие.
Понеже и аз първия път помъчих да избягам от идеята на Ератостен, че ми беше трудно да я направя, прекарах доста време в четене. И накрая се убедих, че ще ми е по-лесно да се помъча дословно да направя неговия алгоритъм, отколкото да комбинирам възможните варианти, налични в нета, за намиране на прости числа. Ако искаш, ето моето решение: http://pastebin.com/M3MjEYzD
макар че и твоето е много идейно, само трябва да го доразвиеш при var factor = new int[] { 2, 3, 5, 7 };
Пробвай с по- малко или равно в условието на цикъла.
Ако имаш предвид големия цикъл от метода: пробвах - не става.
Имам 3 листа с проби в judge :(
Ами аз всъщност не четох много - само в уикипедия и набързо реших, че това е логитата на ситото :D :D :D
Но, да - права си - 2, 3, 5, 7 не са достатъчни за проверка :)
Благодаря ти!
Ако на някой му е интересно - оправих решението си :)
http://pastebin.com/AdV6eYJZ