J'ai un problème incompréhensible avec le menu du jeu Monstre ou Boss : Que je tape 1 ou 2, c'est toujours la méthode jeu1() qui est appelée.
Lorsque que je debug en mode pas-à-pas, Visual Studio me donne la valeur correcte d'entre (2). Pourtant la condition est correcte, mais elle réagit comme si la ConsoleKey était "1".
Bonjour je participe au cour et lorsque je tape Console.WriteLine("Hello"); et que je build la soltion et que je start without debugging il ne saffiche rien dans la console que faire ?
Tout d'abord je tiens à informer que ma remarque est valable seulement d'un point de vue pédagogique. Pas pour le côté fonctionnel. En effet, je n'utilise pas Visual Studio pour tester les petits morceaux de code C#. Donc sur mon environnement, je n'ai en début de code que la ligne : using.System;
Voici donc ma remarque :
Dans le cours, au chapitre "Tableaux, listes et énumérations", dans la partie sur les listes, les exemples de code utilisent le type List.
Hors, je pense, qu'il serait bien de préciser afin que le code fonctionne quel que soit l'environnement de développement qu'il faut ajouter au début la ligne :
using System.Collections.Generic; et préciser pourquoi (même si le chapitre suivant va traiter du framework).
Ce sera j'imagine, dans mon cas, la même chose pour d'autres chapitres plus loin car je n'aurai pas les espaces de nom nécessaires qui sont chargés de base avec Visual Studio.
Merci pour ce cours sur le C# que je suis en train de suivre avec intérêt.
Une petite coquille s'est glissée dans le cours, à la fin du chapitre sur "les conversions entre les types".
Il est écrit :
Les méthodes que nous venons de voir Convert.ToString() ou int.TryParse() se déclinent en général pour tous les types de bases, par exemple double.TryParse() ou Convert.ToDecimal(), etc.
Alors qu'en fait dans ce chapitre, nous n'avons pas vu la méthode Convert.ToString()mais la méthode Convert.ToInt32().
Juste une petite question concernant l'activité de la partie 2 du C#. Faut-il afficher le tirage du loto dans l'ordre de tirage ou dans l'ordre de grandeur des nombres tirés (le plus petit en 1er, le plus grand en dernier) ?
- Edité par Friedrich von Schlickling 3 mars 2016 à 13:22:47
J'ai fait l'activité tirage du loto en c# et j'ai vu dans les paramètres de correction qu'il fallait utilisé un booléen or ce n'était pas demandé dans l'intitulé ainsi que certaines autres choses.Je trouve ça abusé que la correction ne correspondent pas à l'intitulé car cela va pénaliser les gens
Je ne sais pas si déterrer ce type de sujet est de bon ton ou pas (auquel cas, je m'excuse par avance).
J'avais "du temps à perdre" et je me suis donc lancé dans l'étude de ce cours, je tiens à préciser que j'ai (ou je pense tout du moins) avoir le niveau donc pas vraiment besoin de suivre ce ours per se
Cela étant dit, je me retrouve au niveau de l'activité "Tirage Loto" (dont je trouve que les instructions sont peu claires au vu de la correction donnée après mais ça c'est pas le sujet là) et cette correction a pour moi un souci MAJEUR (oui je le mets en grand)
Je ne pense pas spoiler en mettant juste la ligne de code dont je veux parler (enfin j'espère) :
int nbAleatoire = new Random().Next(1, 50);
Même si grâce à une autre partie du code, le résultat final donne bien ce qui est attendu (à savoir un tirage sans doublon) ; on passe tellement de temps sur le forum à expliquer aux gens pourquoi ils ont toujours les mêmes numéros avec un new Random() dans une boucle que je trouve ça très mal vu.
Sur un plan totalement différent (et qui doit concerner tous les cours j'imagine) le principe même de corriger l'exercice des autres alors qu'on est en train d'apprendre fait que niveau notation j'estime (à titre purement personnel) que ces notes ont pour ainsi dire aucune valeur. Certes il y a un barème précis avec subdivisions pour guider mais en partant du principe que les gens découvrent et en sont donc au point où ils sont du cours niveau connaissances, il y a peu de marge de manoeuvre et on peut aussi bien avoir un correcteur qui donne 5 en appliquant bêtement ce barème à la lettre et avoir 15 par un autre parce qu'il a compris que le code remplis le critère différemment.
Par exemple dans ce sujet quelqu'un mentionne à un moment Array.Find pour chercher dans le tableau sans doute parce qu'il lit la documentation (une très bonne chose) et un correcteur débutant ne lui mettra pas de point parce que ça ne répond pas au barème même si ça remplit le rôle demandé.
Je comprends bien qu'il ne peut pas y avoir de correcteurs pro dédiés à cela et que 3 corrections c'est pour mitiger la note tout en faisant en sorte que la correction ne prenne pas 2 semaines ; mais il faudrait mentionner en gros quelque part de pas s'attacher aux notes en elles-mêmes (voire de ne pas mettre de note du tout, une évaluation de ce qui va/ne va pas suffirait et serait peut-être moins frustrante pour certains) ; ou bien qu'en cas de notes vraiment divergentes (ex: 5 et 15 comme dit plus haut ça varie du simple au triple) déclenche la revue de code par quelqu'un de plus qualifié (mais là on retombe dans une moindre mesure sur la nécessité de quelqu'un dédié à la tâche).
Bref, j'étais pas parti pour tartiner autant à la base (surtout s'il fallait pas déterrer lol).
Cordialement.
Censément, quelqu'un de sensé est censé s'exprimer sensément.
La correction mutuelle entre "étudiants" est d'après moi un très mauvais système de cotation : une personne ayant de mauvais résultats mais ayant fait un TP tout à fait correctement peut être très frustrant, surtout qu'à la suite de certains cours, un certificat de réussite (reconnu par la loi) est rendu et noté en fonction de la moyenne de la personne, qui peut donc, en fonction des correction, être bon ou mauvais, et par conséquent être non acceptée.
Il faudrait modifier ce système.
Le meilleur moyen de prédire l'avenir, c'est de l'inventer | N'oubliez pas [résolu] et +1 | Excusez mon ôrtograffe, j'essaie de l'améliorer...
Je pense que tu te trompes de forum, ici c'est C# le cours que tu lies c'est C.
Sinon, pour créer tes propres extensions de fichier en C, tu écriras ceci par exemple :
fichier = fopen("test.MyExt", "w+");
Le .MyExt sera donc ta propre extension.
Si tu crées une application qui a besoin de manipuler des fichiers, les extensions permettent juste de les identifier. Par exemple .txt → Bloc note, .mp3 → Lecteur audio, .HTML → Internet, ...
- Edité par vanaur 13 janvier 2018 à 15:08:26
Le meilleur moyen de prédire l'avenir, c'est de l'inventer | N'oubliez pas [résolu] et +1 | Excusez mon ôrtograffe, j'essaie de l'améliorer...
Je ne sais pas si déterrer le sujet est une bonne chose ou pas auquel cas je m'excuse d'avance.
Je commence tout juste ce cours. Je suis arrivé au premier quiz.
A la dernière question on écrit un code qui est :
int i=0;
if(i>0)
{
string message="la variable est positive";
}
else
{
string message="la variable est nulle ou inférieure à 0";
}
Console.WriteLine(message);
Il est évidemment impossible à cause de la variable "message" défini dans un bloc autre que le Console.WriteLine().
Ce que je ne comprends par contre, c'est que quand j'essaye de le compiler sans les { et }, VS me dit que ce n'est pas possible.
Voilà le code :
int i = 0;
if i > 0
string message = "la variable est positive.";
else
string message = "la variable est soit negative soit egal a 0.";
Console.WriteLine(message);
Quand il n'y a pas d'accolades "{}", le block de code où s'applique le "if" est circonscrit à l(instruction qui suit.
Les accolades permettent à faire en sorte que le "if" s'applique sur un ensemble d'instructions entre accolade.
Donc, dans votre ligne 6, la variable message n'est pas définie.
int i = 0;
string message;
if i > 0
message = "la variable est positive.";
else
message = "la variable est soit negative soit egal a 0.";
Console.WriteLine(message);
Mais c'est clairement une manière très archaïque de faire une sortie console.
Essayez de trouver un tutoriel plus à jour.
- Edité par bacelar 3 juin 2022 à 9:58:21
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
pour revenir à ta question, mettre ou pas les accolades ici, ça ne change rien au fait qu'il s'agit de bloc (les accolades sont optionnelles quand il n'y a qu'une seule instruction dans le bloc)
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Le meilleur moyen de prédire l'avenir, c'est de l'inventer | N'oubliez pas [résolu] et +1 | Excusez mon ôrtograffe, j'essaie de l'améliorer...
Le meilleur moyen de prédire l'avenir, c'est de l'inventer | N'oubliez pas [résolu] et +1 | Excusez mon ôrtograffe, j'essaie de l'améliorer...
Le Tout est souvent plus grand que la somme de ses parties.