Пример #1
0
void	ft_move(t_stack **stack, t_stack *stack_two, int dir_ind[], char **sols)
{
	int	i;

	i = 0;
	if (dir_ind[0] % 10 == 1)
		while ((*stack)->index != dir_ind[1])
		{
			ft_r(stack);
			*sols = ft_strjoin_free(*sols, " ra");
			if (dir_ind[0] > 10)
			{
				write(1, "\nAction : ra", 12);
				ft_print_stack(*stack, stack_two);
			}
		}
	else
		while ((*stack)->index != dir_ind[1])
		{
			ft_rr(stack);
			*sols = ft_strjoin_free(*sols, " rra");
			if (dir_ind[0] > 10)
			{
				write(1, "\nAction : rra", 13);
				ft_print_stack(*stack, stack_two);
			}
		}
}
Пример #2
0
int				ft_f(int f, t_ps *ps)
{
	if (f == SA)
		return (ft_sa(ps));
	else if (f == SB)
		return (ft_sb(ps));
	else if (f == SS)
		return (ft_ss(ps));
	else if (f == PB)
		return (ft_pb(ps));
	else if (f == PA)
		return (ft_pa(ps));
	else if (f == RA)
		return (ft_ra(ps));
	else if (f == RB)
		return (ft_rb(ps));
	else if (f == RR)
		return (ft_rr(ps));
	else if (f == RRA)
		return (ft_rra(ps));
	else if (f == RRB)
		return (ft_rrb(ps));
	else if (f == RRR)
		return (ft_rrr(ps));
	return (0);
}