begin process at 2008 07 06 13:01:28
1 205 544 membres
121 nouveaux aujourd'hui
14 119 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

GÉNÉRATION D'UNE PERMUTATION ALÉATOIRE, SANS RETIRAGE


Information sur la source

Catégorie :Maths & Algorithmes Classé sous : permutation, aléatoire Niveau : Débutant Date de création : 27/05/2006 Vu : 2 802

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note


Description

C'est un petit algorithme qui permet de distribuer aléatoirement les nombres de 1 à 10 dans un tableau.
Si vous voulez plus grand, il suffit de changer la valeur de DIM.
La case 0 du tableau ne semble servir à rien, mais c'est une case sentinelle. Elle sert à d'autres algorithmes comme des tris.

Source

  • #include "stdafx.h"
  • #include "stdlib.h"
  • #include "time.h"
  • #define DIM 10
  • int main(int argc, char* argv[])
  • {
  • int i,j, t[DIM+1];
  • t[1] = 1;
  • srand(unsigned(time(NULL)));
  • // Tirage
  • for ( i = 2; i <= DIM; i++ ) {
  • j = rand()%i+1;
  • t[i] = t[j];
  • t[j] = i;
  • }
  • // Affichage
  • for ( i = 1; i <= DIM; i++ )
  • printf("t[%d] = %d\n", i, t[i]);
  • return 0;
  • }
#include "stdafx.h"
#include "stdlib.h"
#include "time.h"

#define DIM 10

int main(int argc, char* argv[])
{

    int i,j, t[DIM+1];

    t[1] = 1;
    srand(unsigned(time(NULL)));

    // Tirage
    for ( i = 2; i <= DIM; i++ ) {
        j = rand()%i+1;
        t[i] = t[j];
        t[j] = i;
    }

    // Affichage
    for ( i = 1; i <= DIM; i++ )
        printf("t[%d] = %d\n", i, t[i]);
    return 0;
}
    Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source

Pub



Appels d'offres

Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€
creation de marque et ...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS