begin process at 2012 05 25 12:14:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Général

 > 

Problème fonction pour générer un tableau 2D aléatoire en C


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème fonction pour générer un tableau 2D aléatoire en C

mardi 22 décembre 2009 à 15:27:42 | Problème fonction pour générer un tableau 2D aléatoire en C

enroe

Salut à tous :)j'espère que quelqu'un pourra m'aider :(. parce que la je suis sur un projet de C (pour demain lol...)et j'ai une fonction qui me donne quelque chose que je comprend pas trop :(. donc alors la fonction prend en entrée un tableau 2D(int**) (avec de la mémoire alloué au préalable avant) et un nombre de joueur n. A la base le tableau est remplit de 0. Le but de la fonction est de remplir le tableau avec un minimum de 1 égal à(n*4).. (il faut au moin n*4 case contenant un 1).
Le reste des cases dois être remplit avec soit un 0 soit un 1 (c'est aléatoire).
donc ma fonction fonctionne normalement quand je l'utilise une fois. sauf que le problème c'est que je dois l'utiliser pour 2 tableau différent à l'affilé. et cela me donne 2 fois le même tableau :(. Je voudrais savoir si quelqu'un a une idée sur la raison de ce problème....^^.

Voila la fonction :
Code C/C++ :
void ConfigAleatoire (int **plateau,int n) //créer aleatoirement des trous (1)
{
        int i,ligne,colonne,j;
		
	srand(time(NULL));
	for (i=0; i<(n*4); i++)
	{
		ligne= (rand() % TAILLE) ;
		colonne=(rand() % TAILLE) ;
		if (plateau[ligne][colonne]==1)
		{
			i--;
		}
		else 
                {
		        plateau [ligne][colonne] =1;
		}
	}
	for(i=0; i<TAILLE; i++)
	{
		for(j=0; j<TAILLE; j++)
		{
		       if (plateau[i][j]==0)plateau[i][j]= (rand() % 2) ; 
		}
	}
}



Merci d'avance à tous !
mardi 22 décembre 2009 à 17:04:50 | Re : Problème fonction pour générer un tableau 2D aléatoire en C

tpoinsot

Bonjour,

Met l'appel à srand() en dehors de ta fonction, par exemple au début du main().

2 appels consécutifs à srand() avec la même valeur produisent les mêmes séries de valeurs aléatoires.
S'il y a moins d'une seconde entre les 2 appels à ta fonction ....


thip
mardi 22 décembre 2009 à 17:13:36 | Re : Problème fonction pour générer un tableau 2D aléatoire en C

enroe

salut thip, merci pour ta réponse. Je met le srand(time(NULL)); dans le main ca d'accord. mais ca changera en aucun cas la série de chiffre non ? sachant que entre les 2 tirages il y a moin de 2 secondes. Il faudrais que je fasse un wait/sleep ou quelque chose du genre ?


mercredi 23 décembre 2009 à 07:58:26 | Re : Problème fonction pour générer un tableau 2D aléatoire en C

tpoinsot


Non, c'est à chaque appel à srand() que tu réinitialise la série. Donc, tu mets srand() dans main(), la série est initialisée, tu appelles ta fonction une première fois, et, à la deuxième, rand() continue la série sans la reprendre au début. Si srand() est dans la fonction, la série est réinitialisée avec time(), qui n'a certainement pas changé depuis l'appel précédent; Donc la même série.


thip
mercredi 23 décembre 2009 à 11:28:42 | Re : Problème fonction pour générer un tableau 2D aléatoire en C

enroe

ahh :) merci thip tu gère :P.

bye
vendredi 25 décembre 2009 à 11:03:41 | Re : Problème fonction pour générer un tableau 2D aléatoire en C

biriatou

Membre Club
Salut Enroe
Est ce que tu es vraiment oblige de cree un tableau en 2 dimensions.Tu peux faire la même chose avec un tableau a une dimension.C'est plus simple et pour les passages de parametres de fonction ca ne pose pas de probleme.


Cette discussion est classée dans : problème, fonction, int, tableau, plateau


Répondre à ce message

Sujets en rapport avec ce message

Tableau de structure [ par tomsawyerbelgique ] Bonjour suriez-vous me dire comment fait-on pour passer un tableau de structure dans une fonction:struct student { char nom[10]; int nbcot tableau a double entrée alloué dynamiquement [ par amortlintelligence ] Voila j'aurais voulu utiliser un tableau (tableau de tableau) dans une fonction. Je pense qu'il faut donc que je le crée dynamiquement avec un code du creer une fonction retournant un tableau [ par billcala ] j'essaie de créer une fonction qui doit initialiser un tableau d'entiers : le code que je fais est :int mafonction()[8];using namespace std;int mafonc REcuperer des donnée d'un fichier binaire vers une tableau de hachage [ par whiteknight ] Slt j'ai des problemes avec ma fonction load qui me permet de recuperer les données d'un fichier binaire et de les transférer vers un tableau de hacha Une fonction multi-type ? [ par TeLeTUbIz ] Ouah !!!J'ai cherché, scruté dans tout les coins, soulevé les montagnes,... mais je ne trouve pas solution à mon problème.En fait, je voudrais faire u Problème d'entrée (cin >>) dans un tableau de float [ par Oeil_de_taupe ] Hello tout le monde,désolé de vous importuné. Mais j'ai fait une toute petite source pour apprendre à allouer de la mémoire pour une variable puis de Allocation dynamique dans une fonction [ par Veovis ] Salut,Toujours dans mon projet de TP, j'ai un petit soucis avec l'allocation dynamique dans une fonction. Ce que je voudrais faire c'est quand le tabl Fonction qui retourne un tableau [ par Kurul1 ] Bonjour à tous   J'ai une classe contenant un tableau a deux dimensions comme variable private  Ce que je voudrais c'est une fonction ayant pour param Tableau en C [ par Mickylord ] Bonsoir a tous !Voici ma question :J'ai une fonction principale, main(), et une autre fonction tab(). Je voudrais déclarer un tableau dans la fonction problème de cout [ par akwell1 ] bonjour,je voudrais savoir comment ce que je dois mettre dans le cout en bas pour que la valeur retour de la fonction s'affiche a l'ecran merci [code]


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales