From a2ef228b981df5ad417a0e8377e1e832002a7644 Mon Sep 17 00:00:00 2001 From: Charles Date: Sun, 7 Jul 2019 15:29:30 +0200 Subject: c04/c05 testing + c06 --- c05/ex07/ft_find_next_prime.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 c05/ex07/ft_find_next_prime.c (limited to 'c05/ex07') diff --git a/c05/ex07/ft_find_next_prime.c b/c05/ex07/ft_find_next_prime.c new file mode 100644 index 0000000..a83f308 --- /dev/null +++ b/c05/ex07/ft_find_next_prime.c @@ -0,0 +1,40 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_find_next_prime.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2019/07/07 07:50:11 by cacharle #+# #+# */ +/* Updated: 2019/07/07 08:29:02 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + + +int is_prime(int nb) +{ + int i; + + if (nb <= 1) + return (0); + if (nb <= 3) + return (1); + if (nb % 2 == 0 || nb % 3 == 0) + return (0); + i = 5; + while (i * i <= nb) + { + if (nb % i == 0 || nb % (i + 2) == 0) + return (0); + i += 6; + } + return (1); +} + +int ft_find_next_prime(int nb) +{ + while (!is_prime(nb)) + nb++; + return (nb); +} + -- cgit