À l'issue de ce chapitre, l'étudiant sera capable de :
C# (prononcé "C sharp") est un langage de programmation moderne, orienté objet, développé par Microsoft en 2000.
Le C# utilise une compilation en deux étapes :
Code source (.cs)
↓ Compilation (csc.exe)
Code MSIL (.exe/.dll)
↓ Compilation JIT (à l'exécution)
Code machine natif
Les commentaires sont ignorés par le compilateur et servent à documenter le code.
| Type | Taille | Plage de valeurs |
|---|---|---|
byte |
1 octet | 0 à 255 |
sbyte |
1 octet | -128 à 127 |
short |
2 octets | -32 768 à 32 767 |
ushort |
2 octets | 0 à 65 535 |
int |
4 octets | -2,1 milliards à 2,1 milliards |
uint |
4 octets | 0 à 4,3 milliards |
long |
8 octets | ±9,2 × 1018 |
| Type | Taille | Précision | Suffixe |
|---|---|---|---|
float |
4 octets | ~6-9 chiffres | f ou F |
double |
8 octets | ~15-17 chiffres | d ou D (optionnel) |
decimal |
16 octets | 28-29 chiffres | m ou M |
Remarque : var est fortement typé, le type est déterminé à la compilation.
| Opérateur | Description | Exemple | Résultat |
|---|---|---|---|
| + | Addition | 5 + 3 | 8 |
| - | Soustraction | 5 - 3 | 2 |
| * | Multiplication | 5 * 3 | 15 |
| / | Division | 7 / 2 | 3 (entière) |
| % | Modulo (reste) | 7 % 2 | 1 |
| ++ | Incrémentation | x++ | x = x + 1 |
| -- | Décrémentation | x-- | x = x - 1 |
| Op. | Description |
|---|---|
| == | Égal à |
| != | Différent de |
| < | Inférieur à |
| > | Supérieur à |
| <= | Inférieur ou égal |
| >= | Supérieur ou égal |
| Op. | Description |
|---|---|
| && | ET logique |
| || | OU logique |
| ! | NON logique |
| Opérateur | Exemple | Équivalent |
|---|---|---|
| = | x = 5 | x = 5 |
| += | x += 3 | x = x + 3 |
| -= | x -= 3 | x = x - 3 |
| *= | x *= 3 | x = x * 3 |
| /= | x /= 3 | x = x / 3 |
| %= | x %= 3 | x = x % 3 |
Important : Le break est obligatoire à la fin de chaque case.
Attention : Risque de boucle infinie si la condition ne devient jamais fausse !
La boucle do-while garantit au moins une exécution du bloc, contrairement à while.
Remarque : On ne peut pas modifier les éléments avec foreach.
| Boucle | Utilisation recommandée |
|---|---|
for |
Nombre d'itérations connu, besoin d'un compteur |
while |
Nombre d'itérations inconnu, condition testée au début |
do-while |
Au moins une exécution garantie, validation de saisie |
foreach |
Parcours de collection, pas besoin de l'indice |
Conseil : Choisissez la boucle la plus adaptée au problème. Utilisez foreach pour parcourir des collections, for quand vous avez besoin de l'indice, et while/do-while pour les conditions complexes.
Important : Les indices commencent à 0.
Rappel : GetLength(0) = nombre de lignes, GetLength(1) = nombre de colonnes
Déterminez la sortie de chaque programme :
Identifiez et corrigez les erreurs dans ce code :
Indice : Il y a 8 erreurs à trouver.
Écrivez un code qui détermine si un nombre est positif, négatif ou nul.
Écrivez un code qui affiche le nom du mois correspondant à un numéro (1-12) en utilisant switch.
Déterminez la valeur finale de resultat :
Déterminez la sortie :
Écrivez une boucle while qui calcule la somme des entiers de 1 à N.
Écrivez une boucle for qui affiche tous les nombres pairs de 2 à 20.
Écrivez une boucle do-while qui demande un mot de passe jusqu'à ce que l'utilisateur entre "secret".
Déterminez la sortie :
Écrivez un code qui trouve et affiche le maximum d'un tableau d'entiers.
Écrivez un code qui inverse l'ordre des éléments d'un tableau.
Déterminez la sortie :
Écrivez un code qui calcule la somme de chaque ligne d'une matrice 3×3.
Écrivez un code qui calcule la somme des éléments de la diagonale principale d'une matrice carrée N×N.
if / else if / elseswitch / casefor, while, do-while, foreachbreak, continue