« Langage C Sharp/Les types » : différence entre les versions

Contenu supprimé Contenu ajouté
Nevor (discussion | contributions)
Nevor (discussion | contributions)
Ligne 73 :
 
== Premier programme interactif ==
Prenons notre programme "Bonjour le monde" précédemment effectué. Jusqu'a présent, entre le début et la fin du programme, on ne peut pas influencer son exécution. NousLa avons précédemment vu que l'instructionmethode "Console.ReadLine();" permet d'attendre que l'on appuie sur "Enter" pour continuer l'execution du programme, soit dans le cas présent le terminer. Mais elle permet bien plus! Elle prend en note tout ce que vous lui inscrivez au clavier sous forme de chaine de caractère, jusqu'aau cecharactere quede vousretour appuyeza surla "Enter"ligne. Pour prendre en note le résultat, il suffit de le déposer dans une variable de type <tt>string</tt>.
 
=== Une salutation plus personnelle ===
Ligne 79 :
<source lang="csharp" line>
using System;
 
public class HelloWorldBonjour
{
public static void Main()
{
string nomNom;
Console.Write("Inscrivez votre nom: ");
nomNom = Console.ReadLine();
Console.WriteLine("Bonjour " + nom + " !");
Console.ReadLine();
}
}
Ligne 94 :
Explorons pas a pas les nouveautés de se code source:
<source lang="csharp" line start=6>
string nomNom;
</source>
Ici, nous déclarons la variable afin de pouvoir l'utiliser plus tard. Prenez note qu'à ce moment, la variable est déclarée mais n'est pas initialisée. Elle possède donc la valeur <tt>null</tt>. Remarquez que ici la déclaration est détachée de son utilisation, mais il aurait été tout a fait possible de faire les deux sur la même ligne grâce a l'opérateur d'assignation <tt>=</tt>.
<source lang="csharp" line start=8>
nomNom = Console.ReadLine();
</source>
Ici nous initialisons enfin notre variable en prenant pour valeur le résultat de la fonction ReadLine() de la classe Console. La variable nom contiendra donc tout ce que l'usager aura écrit avant d'appuyer sur "Enter".
<source lang="csharp" line start=9>
Console.WriteLine("Bonjour " + nom + " !");
</source>
Finalement, nous affichons la salutation personnalisée à l'usager en utilisant le <tt>+</tt> comme opérateur de concaténation. Prenez note que l'utilisation d'une chaine formatée <tt>Console.WriteLine("Bonjour {0}!", nom);</tt> serait préférable mais je doute que ce soit un réel problème à se stade-ci!
 
=== Un additionneur rudimentaire ===
Ligne 110 :
<source lang="csharp" line>
using System;
 
public class HelloWorld
{
public static void Main()
{
string nomNom;
int nombre1Nombre1, nombre2Nombre2, resultatResultat;
 
Console.Write("Inscrivez votre nom: ");
nomNom = Console.ReadLine();
 
Console.Write("Inscrivez le premier nombre entier: ");
nombre1Nombre1 = int.Parse(Console.ReadLine());
 
Console.Write("Inscrivez le second nombre entier: ");
nombre2Nombre2 = int.Parse(Console.ReadLine());
 
resultat = nombre1 + nombre2;
Resultat = Nombre1 + Nombre2;

Console.WriteLine("Bonjour " + nomNom + " ! L'additionneur vous informe que le calcul est le suivant:");
Console.WriteLine(nombre1Nombre1 + "+" + nombre2Nombre2 + "=" + resultatResultat);
Console.ReadLine();
}
}
Ligne 132 ⟶ 137 :
Explorons pas a pas les nouveautés de se code source:
<source lang="csharp" line start=7>
int nombre1Nombre1, nombre2Nombre2, resultatResultat;
</source>
Comme vous pouvez le remarquer, il est possible de déclarer plusieurs variables de même types sur la même ligne, en utilisant la virgule comme séparateur. Un entier non initialisé contient normalement la valeur zéro, mais il est déconseiller de prendre cela comme une convention.
<source lang="csharp" line start=11>
nombre1Nombre1 = int.Parse(Console.ReadLine());
</source>
Comme dit précédemment, "Console.ReadLine()" retourne une chaine de caractère. Malheureusement, pour les calculs, c'est peu utile. Du coup, la fonction "Parse()" du type <tt>int</tt> (et autres types numeriques) permet de transformer une chaine de caractère en entier. Prenez note que cette fonction s'attend de recevoir une chaine valide et lèvera une exception si jamais la chaine ne contient pas que des chiffres.
 
<!-- ... -->