Carrefour des élèves-ingénieurs de l'ENSA de Fès
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
Bon plan achat en duo : 2ème robot cuiseur ...
Voir le deal
600 €

Tutoriel C#... Les Bases

4 participants

Aller en bas

Tutoriel C#... Les Bases Empty Tutoriel C#... Les Bases

Message par le_positiveur Lun 3 Nov 2008 - 12:00

Les Bases du Langage C# : les Variables et les Types
___________________________________________________________________
--------------------------------------------------------------------------

Salam à tous les ENSAFien(ne)s !!
-----------------------------------

Dans cette partie on va étudier les bases de la programmation C#.
Nous traiterons C# d’abord comme un langage de programmation classique, puis on passera à son aspect Orienté Objet.

Dans un programme on trouve deux choses :

- Des données
- et Les instructions qui les manipulent.

Commençons par les données. Qui dit donnée dit variable. Alors c'est quoi une variable? c'est une association d’un nom/symbole à une valeur donnée qui peut varier au cours du programme.

C# étant fortement typé, on doit obligatoirement préciser le type de chaque variable existant dans le programme. D’où la syntaxe de déclaration des variables :

Type nom ;

Vous pouvez en créer autant que vous le voulez en une seule déclaration tant qu'elles sont de même type, et les initialiser (leur donner une valeur) directement à l'aide de l'opérateur d'affectation, le "=" :

Type nom, nom2 = valeur, nom3, nom4 = valeur2;


Pour prévoir toute erreur due à l'initialisation, les variables sont automatiquement initialisées par le constructeur à leur valeur par défaut lors de l'instanciation :

- Les variables numériques initialisées par la valeur zéro,
- Les chaînes de caractères sont vides,
- Les variables booléennes sont à false.


Voici maintenant une liste complète des types de variables :

Ø byte entier non-signé codé sur 8bits

Ø sbyte entier signé codé sur 8bits

Ø char entier non-signé codé sur 16bits (ils sont mis entre apostrophes ('x'))

Ø short entier signé codé sur 16bits

Ø ushort entier non-signé codé sur 16bits

Ø int entier signé codé sur 32bits

Ø uint entier non-signé codé sur 32bits

Ø long entier signé codé sur 64bits

Ø ulong entier non-signé codé sur 64bits

Ø float flottant signé codé sur 32bits

Ø double flottant signé codé sur 64bits

Ø decimal flottant signé codé sur 128bits

Ø bool booléen codé sur 8bits

Ø string chaîne de caractères unicodes codé sur 16bits (mise entre guillemets ("xyz"))

Ø object classe mère de toutes les autres

Lors de la déclaration des variables, on peut également ne pas préciser son type exact en utilisant le mot clé var au lieu de Type. Le mot clé var ne veut pas dire que les variables n'ont pas un type précis. La variable aura le type de la donnée qui lui est affectée. L'initialisation est ici obligatoire afin que le compilateur puisse en déduire le type de la variable.

Voici un exemple :
Tutoriel C#... Les Bases Prog10

A l'exécution, on obtient le résultat suivant :

Tutoriel C#... Les Bases Res10



Conversion entre les types :

Dans vos futurs programmes, vous serez dans l'obligation de convertir des variables d'un type vers un autre explicitement. Imaginez que vous venez de stocker dans une variable de type int (entier) l'âge de Toto et que vous souhaitez maintenant utiliser cette variable en tant que paramètre d'une fonction qui attend un string (chaîne de caractères), qu'est ce que vous faîtes ? Il existe plusieurs moyens pour convertir une variable vers un autre type (notamment la classe System.Convert), mais convertir vers un string est nettement plus aisé car tous les types héritent de la classe Object qui contient une méthode ToString() qui renvoie la conversion d'un type X vers un string.

Par exemple :

int AgeToto = 55;
string sAgeToto = AgeToto.ToString();
Console.WriteLine(sAgeToto); // Va afficher 55 dans une fenêtre de commande


(NB : dans cet exemple on n’a pas besoin de convertir, car la fonction Console.WriteLine() est surchargée pour accepter différents types en arguments).

Pour le sens inverse, il y a des méthodes qui permettent de convertir à partir d’une chaine de caractères vers les autres types, par exemples :

chaine à double : double.Parse(chaine) ou System.Double.Parse(chaine)

Pour les conversions vers d'autres types, vous allez devoir utiliser une classe bien spécifique : System.Convert. Cette classe permet de convertir n'importe quel type vers un autre (on verra quelques exemples d’utilisation de cette classe ultérieurement).



...
Je m'arrête ici Wink !

See You Next Time Cool !!
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par rajae_ensaf Mar 4 Nov 2008 - 12:18

merci!

a 7erfo a les informatiens!! study
rajae_ensaf
rajae_ensaf

Nombre de messages : 155
Age : 36
Localisation : fes
Date d'inscription : 02/09/2008

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Un tout petit premier exercice...

Message par le_positiveur Mar 4 Nov 2008 - 17:21

. voici un petit exercice pour faire travailler votre matière grise. aller, ne restez pas comme des spectateurs jocolor .


. On veut construire une petite carte d'identité en utilisant des informations que l'utilisateur rentrera sur la console. Dans un premier temps, vous demanderez le nom, le prénom, le sexe et l'âge de la personne; ensuite, vous afficherez ces informations dans une phrase qui aura cette forme : "Bonjour , vous êtes un de <âge> ans !".


scratch... je sais qu'il y a des éléments dans la réponse que nous n'avons pas encore vus. Alors, si ça vous paraît un peu difficile, attendez quelques indications... study

.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par Salhi.mouna Mer 5 Nov 2008 - 12:20

Merci bien pour les tutoriels qd je vais finir JAVA et j'entame le c# Laughing
Salhi.mouna
Salhi.mouna

Nombre de messages : 775
Age : 37
Localisation : meknes-->fés
Date d'inscription : 12/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par le_positiveur Jeu 6 Nov 2008 - 4:47

de rien Miss Mouna ! je te souhaite bon courage study






.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par le_positiveur Jeu 6 Nov 2008 - 5:37

Indications pour l'exercice "carte d'identité"

Nous avons déjà appris comment afficher du texte dans la console. Maintenant on veut aficher la valeur d'une variable, alors comment?
la syntaxe est la suivante :

Console.WriteLine("Var1 = {0} Var2 = {1}",nom_Var1,nom_Var2);

(si vous l'avez remarqué, on l'a déjà utilisé dans l'exemple qui montre les différents types de variables Wink )

Mais le problème c'est qu'on veut d'abord Lire des informations à partir du clavier, alors comment faire scratch ?! et bien, il suffit d'avoir qlq connaissances élémentaires en anglais pour le deviner... Twisted Evil ..alors, ... oui c'est ça, au lieu de WriteLine on met ReadLine !!

voilà la syntaxe :

nom_Variable = Console.ReadLine();



Allez, Bye!... Cool
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Solution de l'exercice "Carte d'identité"

Message par le_positiveur Jeu 13 Nov 2008 - 18:32

Bon, Voici une solution de l'exercice, bien sûr, ce n'est qu'une proposition Wink :


Tutoriel C#... Les Bases Code12

l'Exécution :


Tutoriel C#... Les Bases Exec10



La prochaine fois inchaallah, on va voir les tableaux, donc See You Next Time Cool !!..

.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Les Tableaux en C#

Message par le_positiveur Lun 17 Nov 2008 - 9:49

Les Tableaux en C#
--------------------------------------------------------------------------Réf : MSDN------------

Un tableau est une structure de données qui contient un certain nombre de variables du même type. Les tableaux sont déclarés avec un type :
type[] arrayName;

Les exemples suivants créent des tableaux unidimensionnels, multidimensionnels et en escalier :

Tutoriel C#... Les Bases Exempl10


Vue d'ensemble des tableaux


Un tableau possède les propriétés suivantes :

  • Un tableau peut être Unidimensionnel, Multidimensionnel ou En escalier.
  • La valeur par défaut des éléments de tableau numériques est égale à zéro, et les éléments de référence ont la valeur null.
  • Un tableau en escalier est un tableau de tableaux, et par conséquent ses éléments sont des types référence et sont initialisés à null.
  • Les tableaux sont indexés à partir de zéro : un tableau avec n éléments est indexé de 0 à n-1.
  • Les éléments du tableau peuvent être de n'importe quel autre type, y compris un type tableau.

Dans la suite on va détailler chaque type à part ...
.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Tableaux unidimensionnels

Message par le_positiveur Lun 17 Nov 2008 - 9:53

Tableaux unidimensionnels

Vous pouvez déclarer un tableau de cinq entiers comme dans l'exemple suivant :
int[] array = new int[5];

Ce tableau contient les éléments de array[0] à array[4]. L'opérateur new est utilisé pour créer le tableau et initialiser ses éléments à leurs valeurs par défaut. Dans cet exemple, tous les éléments du tableau sont initialisés à zéro.
Un tableau qui stocke des éléments de type chaîne peut être déclaré de la même façon. Par exemple :

string[] stringArray = new string[6];


Initialisation des tableaux

Il est possible d'initialiser un tableau lors de sa déclaration, auquel cas le spécificateur de rang n'est pas nécessaire, car il est déjà fourni par le nombre d'éléments dans la liste d'initialisation. Par exemple :

int[] array1 = new int[5] { 1, 3, 5, 7, 9 };

Un tableau de chaînes peut être initialisé de la même manière. Ce qui suit est la déclaration d'un tableau de chaînes où chaque élément du tableau est initialisé par un nom du jour de la semaine :

string[] weekDays = new string[] { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };


Lorsque vous initialisez un tableau lors de sa déclaration, vous pouvez utiliser les raccourcis suivants :

int[] array2 = { 1, 3, 5, 7, 9 };
string[] weekDays2 = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

Il est possible de déclarer une variable de tableau sans initialisation, mais vous devez alors utiliser l'opérateur new quand vous assignez un tableau à cette variable. Par exemple :

int[] array3;
array3 = new int[] { 1, 3, 5, 7, 9 }; // OK
//array3 = {1, 3, 5, 7, 9}; // Error

.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Tableaux multidimensionnels

Message par le_positiveur Lun 17 Nov 2008 - 9:55

Tableaux multidimensionnels

Les tableaux peuvent avoir plusieurs dimensions. Par exemple, la déclaration suivante crée un tableau à deux dimensions de quatre lignes et deux colonnes :
int[,] array = new int[4, 2];

La déclaration suivante crée également un tableau à trois dimensions, 4, 2 et 3 :

int[, ,] array1 = new int[4, 2, 3];


Initialisation des tableaux

Vous pouvez initialiser le tableau lors de la déclaration, comme le montre l'exemple suivant :

int[,] array2D = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };
int[, ,] array3D = new int[,,] { { { 1, 2, 3 } }, { { 4, 5, 6 } } };

Vous pouvez également initialiser le tableau sans spécifier le rang :

int[,] array4 = { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };

Si vous décidez de déclarer une variable de tableau sans initialisation, vous devez utiliser l'opérateur new pour assigner un tableau à cette variable. Par exemple :

int[,] array5;
array5 = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } }; // OK
//array5 = {{1,2}, {3,4}, {5,6}, {7,8}}; // Error

Vous pouvez également assigner une valeur à un élément d'un tableau ; par exemple :
array5[2, 1] = 25;


L'exemple de code suivant initialise les variables tableau à leurs valeurs par défaut (à l'exception des tableaux en escalier) :
int[,] array6 = new int[10, 10];

.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Tableaux en escalier

Message par le_positiveur Lun 17 Nov 2008 - 10:09

Tableaux en escalier

Un tableau en escalier est un tableau dont les éléments sont des tableaux. Les éléments d'un tableau en escalier peuvent être de dimensions et de tailles différentes. Un tableau en escalier est parfois appelé « tableau de tableaux ». Les exemples suivants indiquent comment déclarer, initialiser et accéder à des tableaux en escalier.
L'exemple suivant est une déclaration de tableau à une dimension qui possède trois éléments, chacun étant un tableau unidimensionnel d'entiers :
int[][] jaggedArray = new int[3][];

Avant de pouvoir utiliser jaggedArray, vous devez initialiser ses éléments. Vous pouvez procéder ainsi :
jaggedArray[0] = new int[5];
jaggedArray[1] = new int[4];
jaggedArray[2] = new int[2];


Chaque élément est un tableau unidimensionnel d'entiers. Le premier élément est un tableau de cinq entiers, le deuxième est un tableau de quatre entiers et le troisième est un tableau de deux entiers.
Il est également possible d'utiliser des initialiseurs pour attribuer des valeurs aux éléments du tableau, auquel cas vous n'avez pas besoin de la taille du tableau. Par exemple :

jaggedArray[0] = new int[] { 1, 3, 5, 7, 9 };
jaggedArray[1] = new int[] { 0, 2, 4, 6 };
jaggedArray[2] = new int[] { 11, 22 };

Vous pouvez également initialiser le tableau dans la déclaration, comme ceci :

int[][] jaggedArray2 = new int[][]
{
new int[] {1,3,5,7,9},
new int[] {0,2,4,6},
new int[] {11,22}
};

Il est possible de combiner tableaux en escalier et tableaux multidimensionnels. Ce qui suit est une déclaration et une initialisation d'un tableau en escalier unidimensionnel qui contient des éléments de tableau à deux dimensions de tailles différentes :

int[][,] jaggedArray4 = new int[3][,]
{
new int[,] { {1,3}, {5,7} },
new int[,] { {0,2}, {4,6}, {8,10} },
new int[,] { {11,22}, {99,88}, {0,9} }
};

Vous avez accès aux différents éléments comme le montre cet exemple, qui affiche la valeur de l'élément [1,0] du premier tableau (valeur 5) :
System.Console.Write("{0}", jaggedArray4[0][1, 0]);


La méthode Length retourne le nombre de tableaux contenu dans le tableau en escalier. Par exemple, si vous avez déclaré le tableau précédent, cette ligne :
System.Console.WriteLine(jaggedArray4.Length);

retourne la valeur 3.


Exemple :

Cet exemple génère un tableau, dont les éléments sont eux-mêmes des tableaux. Chacun des éléments du tableau a une taille différente.
Tutoriel C#... Les Bases Ex_tab10



Sortie :

Element(0): 1 3 5 7 9

Element(1): 2 4 6 8

__________________________________________________________________

La partie du tutoriel sur les tableaux en C# vient de se terminer Very Happy ... j'éspère que voous n'aurriez plus de soucis à utiliser des tableaux dans vos programmes Cool ...

Allez...! à la prochaine inchaallah.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par Zouag.Hafsa Lun 17 Nov 2008 - 12:19

Yassine, merci pour les efforts. J'aurais aimé etre en génie informatique pour te donner un coup de main avec les tutoriels... Informaticiens, vous etes là? Suspect
Bonne continuation
Zouag.Hafsa
Zouag.Hafsa
5éme année
5éme année

Nombre de messages : 522
Age : 36
Localisation : Fès
Date d'inscription : 17/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par le_positiveur Lun 17 Nov 2008 - 14:53

Merci Hafsa Wink !




.
le_positiveur
le_positiveur

Nombre de messages : 151
Localisation : Fès
Date d'inscription : 19/07/2007

Revenir en haut Aller en bas

Tutoriel C#... Les Bases Empty Re: Tutoriel C#... Les Bases

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser