Ir para conteúdo
Fórum Script Brasil
  • 0

todas as combinações possíveis de 0 e 1


Gui Calari

Pergunta

Preciso de um código para obter todas as combinações possíveis de 0's e 1's em um vetor de tamanho n , n<=10.

só posso usar a biblioteca stdio.h e somente os seguintes recursos:

poderão ser utilizadas apenas variáveis simples, vetores, matrizes, operações de entrada e saída, operações aritméticas, desvios condicionais, laços, funções e apontadores

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

assim?

#include <stdio.h>

void Soma(char *vec)
{
	register int i;
	
	for(i = 1; vec[i]; i++)
		if(vec[i-1]-'0'	 > 1)
		{
			vec[i-1] = '0';
			vec[i]++;
		}
}

int main()
{
	register int i;
	int n;
	int qtdComb = 1;//quantia de combinacoes
	char *comb;
	
	while(1)
	{
		scanf("%d", &n);
		
		for(i = 0; i < n; i++)
			qtdComb <<= 1;
		
		//comb = calloc(sizeof *comb, n);//voce ate poder usar malloc ou calloc sem o stdlib, mas pode gerar erros que fogem do escopo do problema
		char comb[n];
		comb[n] = '\0';
		
		for(i = 0; i < n; i++)
			comb[i] = '0';
		
		printf("Combinações:\n");
		for(i = 0; i < qtdComb; i++)
		{
			printf("%d -> %s\t", i, comb);
			comb[0]++;
			Soma(comb);
			
			if(!((i+1)%2))
				printf("\n");
		}
		
		qtdComb = 1;
	}
	
	
	return (0);
}

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...