Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
utilisateurs:hypathie:tutos:brouillon-algo-c [03/01/2015 11:14] Hypathie [Réflexions sur une autre méthode d'approche] |
utilisateurs:hypathie:tutos:brouillon-algo-c [03/01/2015 18:49] (Version actuelle) Hypathie [Réflexions sur une autre méthode d'approche] |
||
---|---|---|---|
Ligne 166: | Ligne 166: | ||
</note> | </note> | ||
====Programme de la fonction SaisirPièce ==== | ====Programme de la fonction SaisirPièce ==== | ||
+ | ===Plusieurs erreurs à analyser=== | ||
+ | //L'analyse et une correction possible en note plus bas.// | ||
<code c> | <code c> | ||
internal static EnregPièce SaisirPièce(ref EnregPièce unepiece) | internal static EnregPièce SaisirPièce(ref EnregPièce unepiece) | ||
Ligne 216: | Ligne 217: | ||
</note> | </note> | ||
+ | |||
+ | ===Explication sur l'origine de l'erreur=== | ||
<note important> | <note important> | ||
- | Il y a une erreur dans le code ci-dessus !\\ | + | Il y a plusieurs erreurs dans le code ci-dessus !\\ |
J'ai mis : | J'ai mis : | ||
Ligne 224: | Ligne 227: | ||
* etc.. | * etc.. | ||
- | Il faut corriger en((merci Thibault)) : | + | Il faut corriger en((merci Thibault, c'est la "partie" de la correction que "j'ai gardée")) : |
* ''unepiece.Id= Lire.Chaine("Entrez l'identifiant");'' | * ''unepiece.Id= Lire.Chaine("Entrez l'identifiant");'' | ||
* ''unepiece.couleurPièce = SaisirCouleur("Choisissez la couleur pièce (Jaune, Vert, Bleu, Rouge, Orange, Mauve)");'' | * ''unepiece.couleurPièce = SaisirCouleur("Choisissez la couleur pièce (Jaune, Vert, Bleu, Rouge, Orange, Mauve)");'' | ||
- | => Et pour affecter chaque variable effective unepiece.Id ; unepiece.couleurPièce etc, il est inutile d'initialiser une variable effective de type ''EnregPièce ''((''EnregPièce pièceSaisie = new EnregPièce();'')). | + | => Et pour affecter chaque variable effective unepiece.Id ; unepiece.couleurPièce etc, il est inutile d'initialiser une variable effective de type ''EnregPièce ''((''EnregPièce pièceSaisie = new EnregPièce();'' : La aussi merci, je suis tout à fait d'accord)). |
- | **__J'ai voulu écrire :__** | + | **__J'avais donc faux de charger un emplacement mémoire en cherchant à faire ((car j'en avais déjà un)) :__** |
<code c> | <code c> | ||
Ligne 244: | Ligne 247: | ||
</code> | </code> | ||
- | **__tandis que ceci fonctionne :__** | + | **__mais il me semble qu'il est nécessaire de conserver au moins emplacement mémoire :((piece_tableau = new EnregPièce[MAX_TAB_PIECE];))__** |
<code c> | <code c> | ||
Ligne 1150: | Ligne 1153: | ||
====Correction d'un ami==== | ====Correction d'un ami==== | ||
- | En trois points : | + | En quatre points : |
* la fonction RemplirTableauPiece :\\ on commente ''//piece_tableau[indi] = SaisirPièce(ref piece_tableau[indi]);'' | * la fonction RemplirTableauPiece :\\ on commente ''//piece_tableau[indi] = SaisirPièce(ref piece_tableau[indi]);'' | ||
- | * la fonction SaisirPièce :\\ on commente ''RemplirTableauPiece''\\ on commente ''//return unepiece;'' | ||
- | * la fonction : on remplace par unepiece.Id ; unepiece.couleurPièce; etc. | ||
- | ===Ce qui donne === | + | * la fonction SaisirPièce : qu'on met en ''void'' pour qu'elle ne renvoie rien au de lui faire renvoyé une variable de type ''EnregPièce'' |
+ | |||
+ | * fonction SaisirPièce dont on commente ''RemplirTableauPiece''\\ on commente ''//return unepiece;'' | ||
+ | |||
+ | * fonction SaisirPièce dont on remplace par unepiece.Id ; unepiece.couleurPièce; etc. | ||
+ | |||
+ | ===Ce qui donne les fichiers suivants après correction=== | ||
<code text ProgramCorr.cs> | <code text ProgramCorr.cs> | ||
Ligne 1268: | Ligne 1275: | ||
{ | { | ||
//piece_tableau[indi] = SaisirPièce(ref piece_tableau[indi]); | //piece_tableau[indi] = SaisirPièce(ref piece_tableau[indi]); | ||
+ | SaisirPièce(ref piece_tableau[indi]); | ||
indi++; | indi++; | ||
- | |||
} while (veutContinuer()); | } while (veutContinuer()); | ||
} | } | ||
Ligne 1474: | Ligne 1481: | ||
</code> | </code> | ||
- | ===Cela donne le résultat suivant à l'exécution=== | ||
- | Plus de saisie par l'utilisateur :\\ | ||
- | {{http://pix.toile-libre.org/upload/original/1420280056.png}} |