aboutsummaryrefslogtreecommitdiff
path: root/c11
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-07-21 15:26:32 +0200
committerCharles <sircharlesaze@gmail.com>2019-07-21 15:26:32 +0200
commit23ad79e8b41c25bb4992d103d29a17612a52e351 (patch)
tree9de3cde07cc38e59f08885171e9f99eeab8ab71b /c11
parent8b6e91bdb56bc01a588718472546f2a88e750b48 (diff)
downloadpiscine-23ad79e8b41c25bb4992d103d29a17612a52e351.tar.gz
piscine-23ad79e8b41c25bb4992d103d29a17612a52e351.tar.bz2
piscine-23ad79e8b41c25bb4992d103d29a17612a52e351.zip
c10 done, c11 on going, rush02 probably finished, bsq start
Diffstat (limited to 'c11')
-rw-r--r--c11/ex04/ft_is_sort.c8
-rw-r--r--c11/ex06/ft_sort_string_tab.c12
-rw-r--r--c11/ex07/ft_advanced_sort_string_tab.c2
-rw-r--r--c11/main.c33
4 files changed, 36 insertions, 19 deletions
diff --git a/c11/ex04/ft_is_sort.c b/c11/ex04/ft_is_sort.c
index 84d4fe0..7e95ba2 100644
--- a/c11/ex04/ft_is_sort.c
+++ b/c11/ex04/ft_is_sort.c
@@ -6,11 +6,11 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/16 21:39:43 by cacharle #+# #+# */
-/* Updated: 2019/07/18 21:19:29 by cacharle ### ########.fr */
+/* Updated: 2019/07/19 07:37:39 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-static is_sort_asc(int *tab, int length, int (*f)(int, int))
+static int is_sort_asc(int *tab, int length, int (*f)(int, int))
{
int i;
@@ -24,7 +24,7 @@ static is_sort_asc(int *tab, int length, int (*f)(int, int))
return (1);
}
-static is_sort_dsc(int *tab, int length, int (*f)(int, int))
+static int is_sort_dsc(int *tab, int length, int (*f)(int, int))
{
int i;
@@ -38,7 +38,7 @@ static is_sort_dsc(int *tab, int length, int (*f)(int, int))
return (1);
}
-int ft_is_sort(int *tab, int length, int (*f)(int, int))
+int ft_is_sort(int *tab, int length, int (*f)(int, int))
{
return (is_sort_dsc(tab, length, f) || is_sort_asc(tab, length, f));
}
diff --git a/c11/ex06/ft_sort_string_tab.c b/c11/ex06/ft_sort_string_tab.c
index c10feaa..4fadff4 100644
--- a/c11/ex06/ft_sort_string_tab.c
+++ b/c11/ex06/ft_sort_string_tab.c
@@ -6,7 +6,7 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/16 21:48:20 by cacharle #+# #+# */
-/* Updated: 2019/07/18 11:04:01 by cacharle ### ########.fr */
+/* Updated: 2019/07/19 07:27:31 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,14 +22,14 @@ int ft_strcmp(char *s1, char *s2)
return (*s1 - *s2);
}
-int is_sorted(char **argv)
+int is_sorted(char **tab)
{
int i;
- i = 1;
- while (argv[i + 1] != NULL)
+ i = 0;
+ while (tab[i + 1] != NULL)
{
- if (ft_strcmp(argv[i], argv[i + 1]) > 0)
+ if (ft_strcmp(tab[i], tab[i + 1]) > 0)
return (0);
i++;
}
@@ -43,7 +43,7 @@ void ft_sort_string_tab(char **tab)
while (!is_sorted(tab))
{
- i = 1;
+ i = 0;
while (tab[i + 1] != NULL)
{
if (ft_strcmp(tab[i], tab[i + 1]) > 0)
diff --git a/c11/ex07/ft_advanced_sort_string_tab.c b/c11/ex07/ft_advanced_sort_string_tab.c
index efcfb37..96c303d 100644
--- a/c11/ex07/ft_advanced_sort_string_tab.c
+++ b/c11/ex07/ft_advanced_sort_string_tab.c
@@ -6,7 +6,7 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/16 21:51:06 by cacharle #+# #+# */
-/* Updated: 2019/07/18 11:03:31 by cacharle ### ########.fr */
+/* Updated: 2019/07/19 07:27:53 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
diff --git a/c11/main.c b/c11/main.c
index ac7996b..3dd0c5a 100644
--- a/c11/main.c
+++ b/c11/main.c
@@ -13,6 +13,7 @@ void f_fe(int x);
int f_ma(int x);
int f_len(char *x);
int f_cou(char *x);
+int f_sor_dsc(int x, int y);
int f_sor(int x, int y);
int f_lensort(char *a, char *b);
@@ -43,21 +44,30 @@ int main()
printf("\n------------------------\n");
int sorted[10] = {1, 2, 3, 4, 5, 5, 6};
- printf("sorted %d", ft_is_sort(sorted, 6, &f_sor));
+ printf("sorted asc %d\n", ft_is_sort(sorted, 6, &f_sor));
+ int sorted_dsc[10] = {7, 6, 4, 1, 0, -10};
+ printf("sorted dsc %d", ft_is_sort(sorted_dsc, 6, &f_sor_dsc));
+
printf("\n------------------------\n");
- char **a = malloc(sizeof(char*) * 5);
+ char **a = malloc(sizeof(char*) * 8);
a[0] = malloc(sizeof(char) * 32);
a[1] = malloc(sizeof(char) * 32);
a[2] = malloc(sizeof(char) * 32);
a[3] = malloc(sizeof(char) * 32);
- strcpy(a[0], "bonjour");
- strcpy(a[1], "je");
- strcpy(a[2], "suis");
- strcpy(a[3], "charles");
- a[4] = NULL;
+ a[4] = malloc(sizeof(char) * 32);
+ a[5] = malloc(sizeof(char) * 32);
+ a[6] = malloc(sizeof(char) * 32);
+ strcpy(a[0], "dQ4ilBI6T$");
+ strcpy(a[1], "16Tz2R$");
+ strcpy(a[2], "4zQplLtBc$");
+ strcpy(a[3], "7$");
+ strcpy(a[4], "7hE84k$");
+ strcpy(a[5], "841SqkO$");
+ strcpy(a[6], "ItM$");
+ a[7] = NULL;
ft_sort_string_tab(a);
- for (int i = 0; i < 5; i++)
+ for (int i = 0; i < 7; i++)
printf("%s\n", a[i]);
printf("\n------------------------\n");
@@ -102,6 +112,13 @@ int f_cou(char *x)
return counter > 2;
}
+int f_sor_dsc(int x, int y)
+{
+ if (x == y)
+ return (0);
+ return x > y ? -1 : 1;
+}
+
int f_sor(int x, int y)
{
if (x == y)