From 391b948c2fe2540567166ac12ad556ffc8243ab8 Mon Sep 17 00:00:00 2001 From: Kiyoto Kai Date: Fri, 19 Oct 2018 21:26:45 +0530 Subject: [PATCH 1/5] Added a new Algorithm to check if a number is prime or not. Added a new Algorithm to check if a number is prime or not. It takes one + half the amount of iterations of the square root of the number. Returns Boolean value. --- Maths/PrimeCheck.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 Maths/PrimeCheck.py diff --git a/Maths/PrimeCheck.py b/Maths/PrimeCheck.py new file mode 100644 index 000000000000..b5c3f24789b7 --- /dev/null +++ b/Maths/PrimeCheck.py @@ -0,0 +1,14 @@ +def primeCheck(number): + prime = True + for i in range(2, int(number**(1/2)+1), 2): + if number % i == 0: + prime = False + break + return prime + +def main(): + print(primeCheck(37)) + print(primeCheck(100)) + +if __name__ == '__main__': + main() From 3577f97de113fca832f514b96b2b18d0acc2f39a Mon Sep 17 00:00:00 2001 From: Kiyoto Kai <35162413+Kaiyoto@users.noreply.github.com> Date: Fri, 19 Oct 2018 21:38:12 +0530 Subject: [PATCH 2/5] Fixed possibility of being truncated Changed the 1/2 with a 0.5 --- Maths/PrimeCheck.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Maths/PrimeCheck.py b/Maths/PrimeCheck.py index b5c3f24789b7..ce7ff268bf61 100644 --- a/Maths/PrimeCheck.py +++ b/Maths/PrimeCheck.py @@ -1,6 +1,6 @@ def primeCheck(number): prime = True - for i in range(2, int(number**(1/2)+1), 2): + for i in range(2, int(number**(0.5)+1), 2): if number % i == 0: prime = False break From a6fa09b3dc2ee77f7e4c72df7b900eb1f74b66e4 Mon Sep 17 00:00:00 2001 From: Kiyoto Kai Date: Fri, 19 Oct 2018 22:17:58 +0530 Subject: [PATCH 3/5] Fixed Major Error Instead of 3, 5, 7 The Loop as checking 2, 4, 6 which would cause all odd numbers to show prime. Fixed by subtracting one. --- Maths/PrimeCheck.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Maths/PrimeCheck.py b/Maths/PrimeCheck.py index b5c3f24789b7..d294c5e4fa42 100644 --- a/Maths/PrimeCheck.py +++ b/Maths/PrimeCheck.py @@ -1,6 +1,8 @@ def primeCheck(number): prime = True for i in range(2, int(number**(1/2)+1), 2): + if i != 2: + i = i - 1 if number % i == 0: prime = False break @@ -9,6 +11,7 @@ def primeCheck(number): def main(): print(primeCheck(37)) print(primeCheck(100)) + print(primeCheck(77)) if __name__ == '__main__': main() From c4ebbe017024397ac384cecb706c78967b3331d9 Mon Sep 17 00:00:00 2001 From: Kiyoto Kai Date: Fri, 19 Oct 2018 22:20:32 +0530 Subject: [PATCH 4/5] Fixed Minor Formatting issues Github Merged the 2 previous and current version to make a weird file. --- Maths/PrimeCheck.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Maths/PrimeCheck.py b/Maths/PrimeCheck.py index e1466f75d7f4..d294c5e4fa42 100644 --- a/Maths/PrimeCheck.py +++ b/Maths/PrimeCheck.py @@ -1,12 +1,8 @@ def primeCheck(number): prime = True -<<<<<<< HEAD for i in range(2, int(number**(1/2)+1), 2): if i != 2: i = i - 1 -======= - for i in range(2, int(number**(0.5)+1), 2): ->>>>>>> 3577f97de113fca832f514b96b2b18d0acc2f39a if number % i == 0: prime = False break From 47f9b4a49caaec31ad7dbd6c415ea1ac5221ee05 Mon Sep 17 00:00:00 2001 From: Kiyoto Kai <35162413+Kaiyoto@users.noreply.github.com> Date: Fri, 19 Oct 2018 22:33:04 +0530 Subject: [PATCH 5/5] Fixed possibility of being truncated Changed the 1/2 with a 0.5 --- Maths/PrimeCheck.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Maths/PrimeCheck.py b/Maths/PrimeCheck.py index d294c5e4fa42..79fd343db057 100644 --- a/Maths/PrimeCheck.py +++ b/Maths/PrimeCheck.py @@ -1,6 +1,6 @@ def primeCheck(number): prime = True - for i in range(2, int(number**(1/2)+1), 2): + for i in range(2, int(number**(0.5)+1), 2): if i != 2: i = i - 1 if number % i == 0: