Daniel Andrade Postado Fevereiro 5, 2005 Denunciar Share Postado Fevereiro 5, 2005 Estou fazendo um programa para gerar e testar combinaçoes...Tipos e possui os conjuntos: ABA, BAB, ACA, ACB, BCA ... são 12 arranjosDestes conjunto pode fazer agrupamentos de DUAS unidades ABA+BCAou TRES ABA+BAC+ACA ou QUATRO, CINCO... etcPara fazer estas combinações, são encessários laços. Mas a pergunta é como faço uma funcao para N agrupamentos? Pois se necessito TRES agrupamentos certamente, utilizarei tres laços encadeados.. e assim por diante então, seria um codigo que possibilita-se emular laços encadeados de X camadasCompliquei?! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Daniel Andrade Postado Fevereiro 7, 2005 Autor Denunciar Share Postado Fevereiro 7, 2005 No momento deixei de produzir o codigo e estou procurando algo pronto..alguém sabe sobre arvores binarias? Sei que pdoem ser usadas para gerador de permutraçoesEncontrei aqui website algo relacionado. Acho que uma funcao já pronta... ou operadores que não conhecia alguém entende... pode dizer, que se trata de uma fucao (cade o codigo dela) ou versao moderna com bnovos operadores Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Daniel Andrade Postado Fevereiro 8, 2005 Autor Denunciar Share Postado Fevereiro 8, 2005 algoritmo encontradoO codigo esta abaixo. Porém tem um erro, que não encontrei para fornecer os resultados corretos para a função permuta()O operador logico do IF, está correto para obter a logica? (consulte o help) #include <conio.h> #include <stdlib.h> #include <stdio.h> #include <string.h> void combina(void); void permuta(void); void main(void){ clrscr(); combina(); printf("\n\n\n"); permuta(); } void combina(void){ int i,j,k; printf("Combina"); for(i=1;i<=5;i++) for(j=i+1;j<=5;j++) for(k=j+1;k<=5;k++) printf(" %d %d %d \n",i,j,k); } void permuta(void){ int i,j,m,k,m1; k=0; printf("Permuta\n"); for(i=1;i<=3;i++){ for(j=1;j<=3;j++){ if(i!=j) for(m=1;m<=3;m++){ i=i; j=j; m1=m; /*Erro certamente no if*/ if((m1|=j) && (m1|=i)) printf(" %d %d %d %d\n",i,j,m,k++); m=m; }}} } Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Daniel Andrade
Estou fazendo um programa para gerar e testar combinaçoes...
Tipos e possui os conjuntos: ABA, BAB, ACA, ACB, BCA ... são 12 arranjos
Destes conjunto pode fazer agrupamentos de DUAS unidades ABA+BCA
ou TRES ABA+BAC+ACA ou QUATRO, CINCO... etc
Para fazer estas combinações, são encessários laços. Mas a pergunta é como faço uma funcao para N agrupamentos?
Pois se necessito TRES agrupamentos certamente, utilizarei tres laços encadeados.. e assim por diante
então, seria um codigo que possibilita-se emular laços encadeados de X camadas
Compliquei?!
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
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.