aboutsummaryrefslogtreecommitdiff
path: root/exam02/rendu/ft_rrange
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-07-24 18:57:19 +0200
committerCharles <sircharlesaze@gmail.com>2019-07-24 18:57:19 +0200
commit475449dd4b1f3308bac6f72c34d87812216a0738 (patch)
tree319a76f0e87b041818156f2d1dfbbc6a7dfacf06 /exam02/rendu/ft_rrange
parent83edb77d74bb339f3e1324a51039c78ac503db90 (diff)
downloadpiscine-475449dd4b1f3308bac6f72c34d87812216a0738.tar.gz
piscine-475449dd4b1f3308bac6f72c34d87812216a0738.tar.bz2
piscine-475449dd4b1f3308bac6f72c34d87812216a0738.zip
exam02
Diffstat (limited to 'exam02/rendu/ft_rrange')
-rwxr-xr-xexam02/rendu/ft_rrange/ft_rrange.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/exam02/rendu/ft_rrange/ft_rrange.c b/exam02/rendu/ft_rrange/ft_rrange.c
new file mode 100755
index 0000000..d97081a
--- /dev/null
+++ b/exam02/rendu/ft_rrange/ft_rrange.c
@@ -0,0 +1,47 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* ft_rrange.c :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: exam <marvin@42.fr> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2019/07/19 18:05:29 by exam #+# #+# */
+/* Updated: 2019/07/19 19:59:56 by exam ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include <stdlib.h>
+
+long unsigned int get_size(int start, int end)
+{
+ long unsigned int size;
+
+ if (start < end)
+ size = (long int)end - (long int)start;
+ else if (start > end)
+ size = (long int)start - (long int)end;
+ else
+ size = 0;
+ return (size);
+}
+
+int *ft_rrange(int start, int end)
+{
+ int *rrange;
+ long unsigned int i;
+
+ if ((rrange = (int*)malloc(sizeof(int) * (get_size(start, end) + 1))) == NULL)
+ return (NULL);
+ rrange[0] = end;
+ if (start == end)
+ return (rrange);
+ i = 0;
+ while (end != start)
+ {
+ rrange[i] = end;
+ end += (end < start ? 1 : -1);
+ i++;
+ }
+ rrange[i] = start;
+ return (rrange);
+}