Sentient 6 0 Denunciar post Postado Dezembro 3, 2007 Eu bolei um título maluco, mas não é nada muito incompreensível. Trata-se do seguinte: Preciso de duas matrizes, ambas com Z índices, atendendo às seguintes premissas: - Z é um valor variável. - Os valores atribuídos aos índices são randômicos. - Os Z valores das matrizes não podem repetir-se entre si. - Os índices coincidentes das duas matrizes devem ser diferentes. Ou seja, imaginesmos que Z = 5: NÃO pode acontecer isso: matriz A (1,5,3,2,4) matriz B (5,3,4,2,1) Nem isso: matriz A (1,5,2,2,4) matriz B (5,3,4,1,2) Muito menos isso: matriz A (1,5,2,2,4) matriz B (5,3,4,2,1) Ou seja, nenhum valor pode repetir em nenhum sentido. Assim: matriz A (1,5,3,2,4) matriz B (5,3,4,1,2) Tentei fazer isso em Action Script 2, JavaScript, Visual basic 6 e PHP, mas minha lógica de verificação não está funcionando. Para a primeira matriz, randomizei os valores com um contador de 0 a Z. Ele randomizava o índice da matriz que receberia o valor do contador. Assim randomizei Z números sem repetição na matriz A. Mas quero evitar ter que eliminar as matrizes no caso de existir uma repetição entre elas. ou seja, se algum número coincide com o correspondente de mesmo índice, basta ele ser deslocado para outro índice. Usei FOR e DO WHILE combinados. Funcionou no Flash 8 com AS2, mas quando houveram repetições, travava o computador! xD Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Dezembro 4, 2007 Tem n maneiras de fazer esse algoritmo. Voce pode guardar os números que forem sorteados num vetor e sempre que ler comparar o número sorteado com esse vetor. Voce pode optar por comparar com a própria matriz. Eu faria: - Inserir todos os elementos da matriz A. - Inserir todos os elementos da matriz B, comparando também com o índice correspondente em A. Se voce puder poste algum código aqui. De preferencia em: Java, C, C++ ou PHP. http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif Compartilhar este post Link para o post Compartilhar em outros sites