Tableaux
Fermé
parisienne941
Messages postés
5
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
8 février 2016
-
7 févr. 2016 à 19:24
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 9 févr. 2016 à 17:48
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 9 févr. 2016 à 17:48
A voir également:
- À l’aide des tableaux ci-dessous, trouvez le mot dont le code ascii est le suivant : 61 64 6d 69 73 73 69 6f 6e
- À l'aide des tableaux ci-dessous, trouvez le mot dont le code ascii est le suivant : 61 64 6d 69 73 73 69 6f 6e - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
- Winrar 64 bits windows 10 - Télécharger - Compression & Décompression
- Le mode suivi des modifications - Guide
1 réponse
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
7 févr. 2016 à 20:39
7 févr. 2016 à 20:39
Bonjour,
Il suffit de faire une double boucle for.
1ère boucle for : tu parcours tous les éléments.
2ème boucle for : tu parcours tous les éléments à partir de la lettre courante. En cas d'égalité, tu remplaces par 0.
Je te laisse mettre ça en place.
Il suffit de faire une double boucle for.
1ère boucle for : tu parcours tous les éléments.
2ème boucle for : tu parcours tous les éléments à partir de la lettre courante. En cas d'égalité, tu remplaces par 0.
Je te laisse mettre ça en place.
7 févr. 2016 à 21:47
7 févr. 2016 à 22:08
Dans la boucle for, lettre est la variable "courante". C'est sur elle qu'on effectue l'itération.
8 févr. 2016 à 00:30
Je vous explique clairement ce que je voudrais pouvoir faire:
dans un tableau de 3*3 où sont initialisé des chiffres de 1 à 9 et s'il sont repeter plusieurs fois dans le meme tableu, mettre les case à 0 ;
alors j'ai essayer de faire la double boucle for mais je ne pense pas bien avoir compris
8 févr. 2016 à 12:06
int main()
Le bon prototype est : int main(void).
Et il ne faut pas oublier le return 0; final.
verifcarre(tab)
Il manque un ';'
De plus, tu te sers dans la fonction du tableau erreur. Il faut donc également le passer en argument.
for(j=0;j<3;j++) { printf("%d |",erreur[i][j]); }
Tu as oublié une boucle for sur i.
Dans la fonction verifcarre :
Pour simplifier, tu pouvez faire une seule boucle for de 0 à 9 (non inclu).
Cela aurait donné quelque chose comme :
Note : lorsque tu postes ton code, utilise plutôt la balise <code c> que <code>. Ca mettra de la belle couleur.
Modifié par [Dal] le 8/02/2016 à 15:26
@fiddy: heu... tu es sûr de ton test : ? Tu veux dire ? Si oui, attention, si tu travailles sur un tableau à une dimension, la condition de la première itération de la boucle j sera toujours vraie, car tu pars du même indice. A mon sens j doit alors partir de i + 1.
@parisienne941: c'est plus simple de travailler sur une seule dimension, ton traitement étant linéaire. Comme le C alloue la mémoire d'un tableau multidimensionnel de façon contiguë, tu peux "aplatir" ton tableau. Et faire, comme le dit fiddy, une boucle de 0 à 9 non inclus.
Enfin, c'est comme cela que je ferai :-)
Sinon, je n'ai pas compris à quoi sert le tableau "erreur"
Dal