Programme en langage C
Résolu/Fermé
A voir également:
- Programme en langage C
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- D langage c ✓ - Forum C
- Frequence programme national ✓ - Forum Messagerie
- Programme demarrage windows 10 - Guide
- Et en langage c - Astuces et Solutions
1 réponse
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
23 janv. 2011 à 14:22
23 janv. 2011 à 14:22
bonjour,
La prochaine fois, n'oublie pas de mettre ton code entre tes balises "code" (à droite du bouton souligné) sinon c'est illisible.
Sinon remarque sur ton code :
Ok, tu comptes le nombre de 0. Par contre pour la position, la méthode est fausse. Imagine que la ligne i de tab ne contienne que des 0. Tu récrirais sur t1[i] et t2[i] puisque i serait le même.
Il faut que tu revois ce point.
Cdlt,
La prochaine fois, n'oublie pas de mettre ton code entre tes balises "code" (à droite du bouton souligné) sinon c'est illisible.
Sinon remarque sur ton code :
if(tab[i][j]==0)
{
c=c+1;
t1[i]=i;
t2[i]=j;
}
Ok, tu comptes le nombre de 0. Par contre pour la position, la méthode est fausse. Imagine que la ligne i de tab ne contienne que des 0. Tu récrirais sur t1[i] et t2[i] puisque i serait le même.
Il faut que tu revois ce point.
Cdlt,
23 janv. 2011 à 14:57
*********
Merci pr ta réponse
23 janv. 2011 à 15:03
Soit tu fais un tableau de structure. Ce qui donnera : t[c].ligne=i; et t[c].colonne=j;
avec c le c-ème zéro analysé.
Soit tu peux faire t[c]=i*4+j; Avec i*4+j tu pourras retrouver i et j avec t[c]/4 et t[c]%4
Cdlt,
23 janv. 2011 à 15:18
J'ai pas compris ce que tu dis ,est ce que tu peux m'expliquer avec un autre méthode??
23 janv. 2011 à 15:55
Exemple :
if(tab[i][j]==0) { tab[c]=4*i+j; c++; }Pourquoi 4*i+j ? Car tab est un tableau qui contient 4 colonnes. Chacune vont de 0 à 3. Donc tous les multiples de 4, on va à la ligne suivante.
Autrement, ton tableau tab[i][j]=... pourrait très bien s'écrire tab[0][4*i+j];
Et pour retrouver ligne et colonne à partir de l'expression 4*i+j, tu utilises le modulo (%) et la division entière (/) comme expliqué dans le précédent post.
Modifié par Hanan le 23/01/2011 à 16:40