Le mode Debug n’existe pas sur Codingame, alors comment on fait ?
Sur votre IDE préféré, vous avez l’habitude de mettre des points d’arrêt, de lancer le mode Debug et hop, vous voyez tout de suite ce qui cloche dans votre code. Ben, dans Codingame, on ne peut pas faire ça ! Du coup comment on fait pour savoir où le code à péter ?
Lancer un test : pour voir les SystemException
Quand vous lancez le programme, c’est-à-dire appuyer sur “LANCER LE TEST”. On peut voir dans la fenêtre en bas à gauche la console de l’IDE. Et si une exception pète, on aura une ligne rouge qui donne la SystemException avec le numéro de la ligne de code correspondant.

Lire les variable : écrire dans la console les valeurs des variables.
Comme quand on apprend le JavaScript, on peut écrire dans la console les variables à des moments clé pour suivre le déroulement du code. En C#, on écrit “Console.WriteLine(maVariable);” et on peut lire la valeur dans la console. Mais le souci n’est que le “Console.WriteLine” est aussi utilisé pour donner la solution du puzzle. Donc même un code qui fonctionne bien ne donnera pas la solution.

Vous avez sûrement remarqué, ces lignes de commentaires quand vous découvrez un puzzle :

La première ligne nous indique que “Console.WriteLine” est utilisé pour donner une action et la deuxième ligne nous dit “To debug:”, Mais que ça veut dire ?
En fait, c’est très simple, ça permet d’écrire ce que l’on veut dans la console sans qu’il ne soit pris en compte. Donc en écrivant “Console.Error.Writeline(maVariable);” on peut vérifier nos variables quand on le veut.

Afficher un tableau : Foreach -VS- String.Join
Si l’on veut afficher les valeurs d’un tableau, en général, on utilise un “for” ou un “foreach” :

Ce n’est pas le mieux. C’est long à écrire, ça prend 2 ou 4 lignes de code et autant de lignes dans la console que d’éléments du tableau.
Plutôt, utiliser la méthode “String.Join”, simple et efficace.
“Console.Error.WriteLine(String.Join(“, “, inputs));” :

