프로그래밍 | 2009. 12. 24. 06:09
using System; using System.Collections; namespace c_sharp_problem_prime_number { class PrimeNumber { static void Main(string[] args) { PrimeNumberSolve primeNumbers = new PrimeNumberSolve(); primeNumbers.SetNumber(1, 50); primeNumbers.CalculatePrimeNumbers(); primeNumbers.PrintPrimeNumbers(); } } class PrimeNumberSolve { public PrimeNumberSolve() { _startNumber = 0; _endNumber = 0; _resultPrimeNumberList = new ArrayList(); _primeNumberList = new ArrayList(); } public void SetNumber( int numA, int numB ) { _startNumber = Math.Min(numA, numB); _endNumber = Math.Max(numA, numB); } public bool IsPrimeNumber( int number ) { if (number < 2) { return false; } for (int i = 2; i < number; i++) { if (number % i == 0) { return false; } } return true; } public void CalculatePrimeNumbers() { PreCalculatePrimeNumbers(); for (int num = _startNumber; num <= _endNumber; num++) { bool isPrimeNum = true; if (_primeNumberList.Count > 0 ) { foreach (int i in _primeNumberList) { if (num % i == 0) { isPrimeNum = false; } } } else { isPrimeNum = IsPrimeNumber(num); } if (isPrimeNum == true) { _primeNumberList.Add(num); _resultPrimeNumberList.Add(num); } } } public void PreCalculatePrimeNumbers() { for( int i = 2; i < _startNumber; i++ ) { bool isPrimeNumber = IsPrimeNumber(i); if( isPrimeNumber == true ) { _primeNumberList.Add(i); } } } public void PrintPrimeNumbers() { foreach( int number in _resultPrimeNumberList ) { Console.WriteLine( number ); } } private ArrayList _resultPrimeNumberList; private ArrayList _primeNumberList; private int _startNumber; private int _endNumber; } }
C# - Property (0) | 2009.12.24 |
---|---|
Python - Beautiful Soup (2) | 2009.12.24 |
SCJP 5.0 관련 자료 모음 (0) | 2009.12.24 |
Compiler - Introduce (0) | 2009.12.24 |
코딩도장(CodingDojo) (0) | 2009.12.24 |
Recent Comments