/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* special_tens.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: ttrave +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/07/29 12:29:42 by ttrave #+# #+# */ /* Updated: 2023/07/30 21:52:07 by ttrave ### ########.fr */ /* */ /* ************************************************************************** */ #include "header.h" char **ft_malloc_spec_tens(char **dict) { char **spec_tens; t_ulli i; t_ulli size; size = 0; i = 0; while (dict[i]) { if (dict[i][0] == '1' && dict[i][1] >= '0' && dict[i][1] <= '9' && ft_strlen(dict[i]) == 2) size++; i++; } spec_tens = malloc((size + 1) * sizeof(char *)); if (spec_tens != NULL) spec_tens[size] = NULL; return (spec_tens); } char **ft_fill_spec_tens(char **dict) { char **spec_tens; t_ulli i; t_ulli j; i = -1; j = 0; spec_tens = ft_malloc_spec_tens(dict); if (spec_tens == NULL) return (spec_tens); while (dict[++i]) { if (dict[i][0] == '1' && dict[i][1] >= '0' && dict[i][1] <= '9' && ft_strlen(dict[i]) == 2) { spec_tens[j] = malloc(2 * sizeof(char)); if (spec_tens[j] == NULL) { ft_free_n_arr_arr(spec_tens, j + 1); return (NULL); } spec_tens[j] = dict[i]; j++; } } return (spec_tens); } int ft_is_spec_ten(char **spec_tens, char *nb) { t_ulli i; i = 0; while (spec_tens[i]) { if (ft_strcmp(spec_tens[i], nb) == 0) return (0); i++; } return (1); }