From 89cda74a217f70d5ce87b1fe9dc39c0910e59c3d Mon Sep 17 00:00:00 2001 From: BILL_SARAN Date: Sat, 11 Jan 2025 18:34:55 +0200 Subject: [PATCH 1/2] Added a few tests for the FibonacciSeries recursive algorithm --- .../com/thealgorithms/recursion/FibonacciSeriesTest.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/test/java/com/thealgorithms/recursion/FibonacciSeriesTest.java b/src/test/java/com/thealgorithms/recursion/FibonacciSeriesTest.java index f8b59f7e9ac6..c12034fece10 100644 --- a/src/test/java/com/thealgorithms/recursion/FibonacciSeriesTest.java +++ b/src/test/java/com/thealgorithms/recursion/FibonacciSeriesTest.java @@ -2,6 +2,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; +import com.thealgorithms.bitmanipulation.FindNthBit; import org.junit.jupiter.api.Test; public class FibonacciSeriesTest { @@ -23,5 +24,9 @@ public void testFibonacci() { assertEquals(144, FibonacciSeries.fibonacci(12)); assertEquals(233, FibonacciSeries.fibonacci(13)); assertEquals(377, FibonacciSeries.fibonacci(14)); + assertEquals(610, FibonacciSeries.fibonacci(15)); + assertEquals(6765, FibonacciSeries.fibonacci(20)); + assertEquals(75025, FibonacciSeries.fibonacci(25)); + assertEquals(832040, FibonacciSeries.fibonacci(30)); } } From 2ba7773f1df99bc6e48f5cb415e85a4dc06b0488 Mon Sep 17 00:00:00 2001 From: BILL_SARAN Date: Sat, 11 Jan 2025 19:49:23 +0200 Subject: [PATCH 2/2] Added the Goldbach's Conjecture algorithm --- .../maths/GoldbachConjecture.java | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 src/main/java/com/thealgorithms/maths/GoldbachConjecture.java diff --git a/src/main/java/com/thealgorithms/maths/GoldbachConjecture.java b/src/main/java/com/thealgorithms/maths/GoldbachConjecture.java new file mode 100644 index 000000000000..646630b3dd86 --- /dev/null +++ b/src/main/java/com/thealgorithms/maths/GoldbachConjecture.java @@ -0,0 +1,57 @@ +package com.thealgorithms.maths; + +import java.util.Scanner; + +import static java.lang.String.format; + +/** + * This is a representation of the unsolved problem of Goldbach's Projection, according to which every + * even natural number greater than 2 can be written as the sum of 2 prime numbers + * More info: https://en.wikipedia.org/wiki/Goldbach%27s_conjecture + * @author Vasilis Sarantidis (https://github.com/BILLSARAN) + */ + +public final class GoldbachConjecture { + private GoldbachConjecture(){ + } + + /** + * Checks whether a number is prime or not + * @param n the input number + * @return true if n is prime, else return false + */ + private static boolean isPrime(int n){ + int i; + if(n <= 1 || (n%2 == 0 && n!=2)){ + return false; + } + else { + for(i = 3; i2) { + for(int i=0;i<=n/2 && flag==0;i++) + if(isPrime(i)) + if(isPrime(n-i)) + { + System.out.println(format("%d+%d=%d", i, n-i, n)); + flag=1; + } + } + else + System.out.println("Wrong Input"); + } + +}