예제 #1
0
int main()
{
	int n;
	std::vector<int> digit,result;

	scanf("%d",&n);
	while( n != 0 )
	{
		for( int i = 2; i <= 16; i++ )
		{
			to_digit_on_base(n,i,digit);
			if( test_digit(digit) == true )
				result.push_back(i);
			digit.clear();
		}
		if( result.size() == 0 )
			printf("Number %d is not a palindrom\n",n);
		else
		{
			printf("Number %d is palindrom in basis",n);
			for( int i = 0; i < result.size(); i++ )
				printf(" %d",result[i]);
			printf("\n");
			result.clear();
		}
		scanf("%d",&n);
	}
	return 0;
}
예제 #2
0
int			get_map(t_glob *g)
{
	t_temp_list	*node;

	node = g->data;
	while (node->next != NULL)
	{
		ft_putstr(node->str);
		ft_putchar('\n');
		test_alpha(node->str);
		((g->lines == 0) && (test_digit(node->str) == 0)) ? g->ant_flag = 1 : 0;
		((ft_strcmp("##start", node->str)) == 0) ? g->start_flag = 1 : 0;
		((ft_strcmp("##end", node->str)) == 0) ? g->end_flag = 1 : 0;
		if ((ft_strncmp("#", node->str, 1)) == 0)
		{
			node = node->next;
			continue;
		}
		if (node->str == NULL)
			error();
		check_data(g, node->str);
		node = node->next;
	}
	if (validate(g))
		return (1);
	free(node);
	return (0);
}