mirror of
https://github.com/DavidGailleton/42-Push_Swap.git
synced 2026-01-27 08:41:58 +00:00
finnish the parsing
This commit is contained in:
@@ -16,9 +16,23 @@
|
||||
|
||||
static int wich_mod(int mod)
|
||||
{
|
||||
if (mod == 0 || mod == 3)
|
||||
if (mod == 0)
|
||||
return (1);
|
||||
return (2);
|
||||
else if (mod == 1)
|
||||
return (2);
|
||||
else if (mod == 2)
|
||||
return (3);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static int len_split(char **tab)
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 0;
|
||||
while (tab[i])
|
||||
i++;
|
||||
return (i);
|
||||
}
|
||||
|
||||
static t_stack *parsing(int argc, char **argv, int mod)
|
||||
@@ -47,19 +61,21 @@ static t_stack *parsing(int argc, char **argv, int mod)
|
||||
return (first);
|
||||
}
|
||||
|
||||
static t_stack *special_parsing(int argc, char **argv, int mod)
|
||||
static t_stack *special_parsing(char **argv, int mod)
|
||||
{
|
||||
t_stacks *piles;
|
||||
t_stack *first;
|
||||
t_stack *new;
|
||||
t_stack *a;
|
||||
char **split_tab;
|
||||
int len;
|
||||
int i;
|
||||
|
||||
i = 0;
|
||||
split_tab = ft_split(arv[wich_mod(mod)]);
|
||||
i = mod % 3 + 1;
|
||||
split_tab = ft_split(argv[i], ' ');
|
||||
if (!split_tab)
|
||||
return (NULL);
|
||||
while ()
|
||||
len = len_split(split_tab);
|
||||
a = parsing(len, split_tab, mod);
|
||||
free_tab(split_tab);
|
||||
return (a);
|
||||
}
|
||||
|
||||
t_stacks *init_piles(int argc, char **argv, int mod)
|
||||
@@ -72,7 +88,10 @@ t_stacks *init_piles(int argc, char **argv, int mod)
|
||||
stacks->b = NULL;
|
||||
if (!stacks)
|
||||
return (NULL);
|
||||
a = parsing(argc, argv, mod);
|
||||
if (mod == 0 || mod == 1 || mod == 2)
|
||||
a = parsing(argc, argv, mod);
|
||||
else
|
||||
a = special_parsing(argv, mod);
|
||||
stacks->a = a;
|
||||
return (stacks);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user