From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- .../hjp5/examples/PrimeNumberTools.java | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Master/Reference Architectures and Patterns/hjp5/examples/PrimeNumberTools.java (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/PrimeNumberTools.java') diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/PrimeNumberTools.java b/Master/Reference Architectures and Patterns/hjp5/examples/PrimeNumberTools.java new file mode 100644 index 0000000..02ddbfb --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/examples/PrimeNumberTools.java @@ -0,0 +1,48 @@ +/* PrimeNumberTools.java */ + +public class PrimeNumberTools +{ + public void printPrimeFactors(int num) + { + int whichprime = 1; + int prime; + String prefix; + + prefix = "primeFactors("+num+")= "; + while (num > 1) { + prime = getPrime(whichprime); + if (num % prime == 0) { + System.out.print(prefix+prime); + prefix = " "; + num /= prime; + } else { + ++whichprime; + } + } + System.out.println(); + } + + public int getPrime(int cnt) + { + int i = 1; + int ret = 2; + + while (i < cnt) { + ++ret; + if (isPrime(ret)) { + ++i; + } + } + return ret; + } + + private boolean isPrime(int num) + { + for (int i = 2; i < num; ++i) { + if (num % i == 0) { + return false; + } + } + return true; + } +} \ No newline at end of file -- cgit v1.2.3