From b900311560a2aaccd86c911d362838090ca1e2d9 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Thu, 6 Jan 2022 20:04:01 +0000 Subject: - Added Python/Java solutions to the task "10001st Prime Number" of week 146. --- .../java/theweeklychallenge/FindPrime.java | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 challenge-146/mohammad-anwar/java/theweeklychallenge/FindPrime.java (limited to 'challenge-146/mohammad-anwar/java') diff --git a/challenge-146/mohammad-anwar/java/theweeklychallenge/FindPrime.java b/challenge-146/mohammad-anwar/java/theweeklychallenge/FindPrime.java new file mode 100644 index 0000000000..1f2b6ed0d2 --- /dev/null +++ b/challenge-146/mohammad-anwar/java/theweeklychallenge/FindPrime.java @@ -0,0 +1,55 @@ +package theweeklychallenge; + +/* + +Week 146: + + https://theweeklychallenge.org/blog/perl-weekly-challenge-146 + +Task #1: 10001st Prime Number + + Write a script to generate the 10001st prime number. + +*/ + +import java.lang.Math; +import junit.framework.TestCase; +import static junit.framework.Assert.*; + +public class FindPrime extends TestCase { + + public static void main(String[] args) { + junit.textui.TestRunner.run(theweeklychallenge.FindPrime.class); + } + + public void testFindPrime() { + assertEquals(104743, findPrime(10001)); + } + + public static int findPrime(int count) { + + int c = 0; + int n = 2; + while (c <= count) { + if (isPrime(n)) { + if (++c == count) { + return n; + } + } + n++; + } + + return 0; + } + + public static boolean isPrime(int n) { + + for(int i=2; i <= Math.sqrt(n); i++) { + if ((n % i) == 0) { + return false; + } + } + + return true; + } +} -- cgit