Forum Pplware
Projeto em C - Versão de Impressão

+- Forum Pplware (http://forum.pplware.com)
+-- Fórum: Mais Tech (/forumdisplay.php?fid=11)
+--- Fórum: Programação e Web (/forumdisplay.php?fid=16)
+--- Tópico: Projeto em C (/showthread.php?tid=12070)



Projeto em C - Terminator - 16-07-2012 13:15

[font=Arial]

boas!!!
eu tenho um projeto em c para realizar e estou com algumas duvidas e gostava que alguem me ajuda-se!!!

Problema:
Faz um programa que imprima no ecrã todos os subconjuntos de um conjunto. O input do programa deve ser um número n que indica o número de elementos do conjunto. Para simplificar, assume que os elementos do conjunto são os números: {1, 2, ..., n}.
DICA: O número de subconjuntos de um conjunto com n elementos é 2 elevado a n. Por exemplo, o conjunto {1,2,3} tem 8 subconjuntos. (nota: a regra é válida para o conjunto vazio (n=0)).
Exemplo do programa ao ser executado:
Introduz um número: 3
Os subconjuntos de {1,2,3} são:
{ }
{1}
{2}
{3}
{1,2}
{1,3}
{2,3}
{1,2,3}
numero minimo:1, max:9
-----------------------------------------------------------------------

boas!! de forma a simplificar a minha duvida é o seguinte o conteúdo apresentar será por exemplo
inserido :4
output:
{},
{1},
{2},
{3},
{4},
{1,2},
{1,3},
{1,4},
{2,3},
{2,4},
{3,4},
{1,2,3},
{2,3,4},
{1,2,4},
{4,3,1},
{1,2,3,4}



a minha única duvida será a repetição dos conjuntos por outra ordem
por exemplo se apresento o conjunto {1,2,3} tendo de arranjar uma forma de bloquear os conjuntos que são equivalentes mas que apresentam por outra ordem como por exemplo:
{3,2,1}, {2,3,1}, {1,3,2} ou {2,1,3}.

ou seja estou a ter muitos mais casos do que eu pretendo apresentar
pois diz-se que são equivalentes logo basta mostrar um dos casos.

eu sei que é um projeto meu mas apenas peço ajuda no raciocínio !!!

obrigado por lerem o post!!


RE: Projeto em C - Ana - 16-07-2012 21:06

Sugestão, coloca o teu código com a tag [code] para percebermos. Melhor, usa o site http://pastebin.com/ para fazer paste do código INDENTADO e escolhe a linguagem C. Não consigo ler de outra forma.