From 8b6e91bdb56bc01a588718472546f2a88e750b48 Mon Sep 17 00:00:00 2001 From: Charles Date: Fri, 19 Jul 2019 07:04:04 +0200 Subject: c10 done?, c11 moulinetted (ex04, ex06 need correction) --- c11/ex07/ft_advanced_sort_string_tab.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) (limited to 'c11/ex07/ft_advanced_sort_string_tab.c') diff --git a/c11/ex07/ft_advanced_sort_string_tab.c b/c11/ex07/ft_advanced_sort_string_tab.c index f640664..efcfb37 100644 --- a/c11/ex07/ft_advanced_sort_string_tab.c +++ b/c11/ex07/ft_advanced_sort_string_tab.c @@ -6,39 +6,41 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/07/16 21:51:06 by cacharle #+# #+# */ -/* Updated: 2019/07/16 21:54:24 by cacharle ### ########.fr */ +/* Updated: 2019/07/18 11:03:31 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ -int is_sorted(char **tab, int(*cmp)(char *, char *)) +#include + +int sorted(char **tab, int (*cmp)(char *, char *)) { int i; - i = 1; - while (tab[i] != NULL) + i = 0; + while (tab[i + 1] != NULL) { - if ((*cmp)(tab[i], tab[i +1]) > 0) + if ((*cmp)(tab[i], tab[i + 1]) > 0) return (0); i++; } return (1); } -void ft_advanced_sort_string_tab(char **tab, int(*cmp)(char *, char *)) +void ft_advanced_sort_string_tab(char **tab, int (*cmp)(char *, char *)) { int i; char *tmp; - while (!is_sorted(tab)) + while (!sorted(tab, cmp)) { - i = 1; - while (tab[i] != NULL) + i = 0; + while (tab[i + 1] != NULL) { - if ((*cmp)(tab[i], tab[i +1]) > 0) + if ((*cmp)(tab[i], tab[i + 1]) > 0) { - tmp = argv[i]; - argv[i] = argv[i + 1]; - argv[i + 1] = tmp; + tmp = tab[i]; + tab[i] = tab[i + 1]; + tab[i + 1] = tmp; } i++; } -- cgit