Introduction à la programmation
Mar 19 Sep - 20:00
Notions d'informatique :
Informatique : science du traitement automatisé de l’information
Un programme informatique est un ensemble d’instructions qui doivent être exécutées par un ordinateur
Exemple :
- Va chercher le journal
- Classe le courrier
- Va faire les courses
- S’il n’y a plus assez de pain, achètes-en.
- …
Programmation : ensemble des activités qui permettent l'écriture des programmes informatiques.
Ces instructions doivent être données dans un langage que l’ordinateur comprend
Ces instructions doivent être données dans un langage que l’HUMAIN comprend aussi!
Ce langage doit être :
- Intuitif
- Puissant
- Pratique
- Portable
- Facile à comprendre
- …
Différents langages pour différentes applications
- C/C++
- Scheme
- Python
- C#
- JavaScript
- PHP
- Pascal
- BASIC
- JAVA
- Delphi
Un paradigme est une représentation du monde, une manière de voir les choses.
En programmation :
- Paradigme impératif (C, basic,…)
- Paradigme orienté objet (C++,JAVA,C#,...)
- Paradigme fonctionnel (Scheme, F#,…)
- …
Nom du langage : C#
Paradigme : Impératif, Orienté Objet
Auteur : Microsoft Corporation
Date d’apparition : 2001
Influences : C++, Delphi,Java, Eiffel
Re: Introduction à la programmation
Mer 20 Sep - 7:17
Les variables
Une variable associe un nom (un symbole) à une valeur qui peut éventuellement varier au cours du temps.
- Un nombre (entier, réel,…)
- Du texte (un caractère, ‘’le titre d’un livre’’…)
- Une valeur booléenne (vrai ou faux)
- Une date
- …
La notation suivante est commune au C#, C/C++, Java et encore d’autres langages très utilisés.
- Code:
int Age;
double Height;
string Name;
bool Maried;
Comment « remplir » une variable?
- Code:
int Age;
Age = 45;
double Height;
Height = 1.82;
string Name;
Name = « Bernard »;
bool Maried;
Maried = True;
Re: Introduction à la programmation
Mer 20 Sep - 7:27
Opérateurs mathématiques et logiques
- Code:
int a;
int b;
int c;
a = 5 + 4;
b = 5 * 6;
c = a + b * 7 – 4 / 2;
Pour modifier les priorités des opérateurs, utilisez les parenthèses.
- Code:
c = (a + b) * (7 – 4) / 2;
Travailler avec des variables de types différents peut apporter des surprises
- Code:
int a = 4;
int b = 3;
double c;
c = a / b;
Pourquoi?
- a et b sont des entiers
- L’ordinateur calcule 4 / 3 en valeurs entières ce qui donne 1
- Même si c peut contenir des nombres réels le résultat du calcul est un nombre entier, c reçoit donc une valeur entière
Comment faire pour obtenir le résultat correct?
- Convertir a et b en nombres réels avant de faire l’opération
- Code:
int a = 4;
int b = 3;
double c;
c = (double)a / (double)b;
Cette opération s’appelle une conversion, ou en jargon informatique « cast »
Il existe deux sortes de cast
- Cast implicite
L’ordinateur fait la conversion sans que le développeur ne doive le spécifier - Cast explicite
Le développeur demande explicitement une conversion de valeur
Cast explicite :
- Code:
int a = 4;
int b = 3;
double c;
c = (double)a / (double)b;
Cast implicite :
- Code:
int a = 4;
double b = 3;
double c;
c = a / b;
Re: Introduction à la programmation
Mer 20 Sep - 7:54
Opérateurs de comparaison
André a 36 ans, Frank en a 42 et Sandra 38
Quelques questions :
- Est-ce que Frank est plus âgé que Sandra ?
- Est-ce que Sandra est plus jeune qu’André ?
- Est-ce qu’André a le même âge que Frank ?
Des question plus complexes :
- Est-ce que Frank ou Sandra est plus jeune qu’André ?
- Est-ce que Frank et André sont plus âgés que Sandra ?
Grâce aux opérateurs de comparaison, il est possible d’obtenir des réponses à certaines de ces questions
La réponse sera toujours vrai (True) ou faux (False)
Opérateurs de comparaisons :
Reposons nos questions :
- Code:
int ageAndre = 36;
int ageFrank = 42;
int ageSandra = 38;
bool solution1, solution2, solution3;
Solution1 = ageFrank > ageSandra;
Solution2 = ageSandra > ageAndre;
Solution3 = ageAndre == ageFrank;
Certaines questions demandent d’agréger des résultats de sous- questions pour obtenir une réponse à une question complexe
Exemple :
- Est-ce que Frank ou Sandra est plus jeune qu’André?
- Est-ce que Frank ou Sandra est plus jeune qu’André?
- Est-ce que Frank est plus âgé qu’André?
- Est-ce que Sandra est plus âgée qu’André?
Une fois que nous connaissons les réponses à ces questions, il est facile de répondre à la question de départ
Re: Introduction à la programmation
Mer 20 Sep - 9:06
Structures de contrôle – conditionnement de branchement
Dans la programmation comme dans la vie, des choix doivent être faits
- S’il fait froid, je prends mon manteau
- Si je suis fatigué, je vais dormir
- Si c’est le matin ou l’après-midi, on dit « Bonjour » mais si c’est le soir, on dit « bonsoir » ou alors on dit « bonne nuit ».
- …
Pour indiquer au programme qu’il doit effectuer une tâche seulement si une condition est respectée, on utilisera la condition « if »
- Code:
if( <condition> )
{
<Tâches>
}
On souhaitera parfois effectuer également une tâche si la condition n’est pas vérifiée, on utilisera le « else »
- Code:
if( <condition> )
{
<Tâches>
}
else
{
<Autres tâches>
}
Dans le cas où plusieurs possibilités sont à envisager, on peut étendre le « if » de la manière suivante :
- Code:
if( <condition1> )
{ <Tâches1>
}
else if( <condition2> )
{ <Tâches2>
}
else
{ <Tâches3>
}
Il existe une autre structure permettant d’effectuer des tâches en fonction d’une valeur
- Code:
switch(<variable>)
{
case 1 : <Tâches1>
break;
case 2 : <Tâches2>
break;
default : <TâchesParDefaut>
}
Re: Introduction à la programmation
Mer 20 Sep - 9:10
Structures de contrôle – boucles
"Tant que… faire…"
- Lorsqu’il est nécessaire qu’une tâche soit effectuée jusqu’à ce qu’une condition soit remplie
Exemples de la vie de tous les jours :
- Tant qu’il reste de la vaisselle sale, prendre une assiette de la pile et la laver.
- Tant qu’il n’est pas 17h30, travailler.
- …
En C#, comme dans beaucoup de langages, cette structure est appelée « boucle while »
- Code:
while(<condition>)
{
<Tâches>
}
"Faire … tant que…"
- Une variante qui vérifie la condition à la fin plutôt qu’au début
Les tâches sont toujours exécutées au moins une fois
Exemple :
- Lire une valeur tant qu’elle n’est pas correcte
Notez que cette structure n’est pas souvent utilisée en pratique
En C#, comme dans beaucoup de langages, cette structure est appelée « boucle do while »
- Code:
do
{
<Tâches>
}
while(<condition>);
Dans certains cas, il est nécessaire de réaliser une action un nombre fixé de fois
On l’utilisera quand le nombre d’itérations est connu à l’avance
Exemple :
- Afficher les 10 premiers nombres de la table de multiplication par 7
En C#, comme dans beaucoup de langages, cette structure est appelée « boucle for »
- Code:
for(<initialisation>;<condition>;<transition>)
{
<Tâches>
}
for(i = 1; i <= 10; i = i + 1)
{
<afficher i>
}
Re: Introduction à la programmation
Mer 20 Sep - 9:19
Tableaux de données
Une variable permet de stocker une donnée
Beaucoup d’applications manipulent de grandes quantités de données
Déclarer plusieurs variables ? Trop long à faire, trop de codes, inutilisable pour de grandes valeurs
Un tableau est une structure de données, contenant un nombre fixé de valeurs de même type, accessibles par une clef d’index
Exemple :
- Stocker les noms des étudiants d’une classe. Nous savons qu’il y a 12 étudiants.
En C#, comme dans beaucoup de langages, la déclaration d’un tableau se fait de la manière suivante :
- Code:
int[] numbers = new int[100];
string[] students = new string[12];
En C#, comme dans beaucoup de langages, la première case du tableau a la clef d’index zéro
La dernière a donc pour clef la taille du tableau moins un. (Dans notre exemple : 12 - 1 = 11)
L’accès aux données se fait comme avec une simple variable, à la différence qu’une clef d’index doit être fournie pour spécifier la valeur que l’on veut lire ou modifier.
- Code:
students[0] = « Sandra »;
string nom = students[0];
Les exemples précédents traitaient de tableaux à une dimension.
Il est possible de créer des tableaux avec 2, 3 voir même plus de dimensions
Exemples d’utilisation :
- Horaire
- Grille de combat naval
En C#, comme dans beaucoup de langages, la déclaration d’un tableau à plusieurs dimensions se fait de la manière suivante :
- Code:
int[,] Horaire = new int[24,7];
L’accès aux données se fait de manière similaire au tableau à une dimension, il faut juste spécifier plus de clefs.
- Code:
Horaire[0,12] = « Manger! »;
string Tache = Horaire[0,12] ;
Re: Introduction à la programmation
Mer 20 Sep - 9:25
Fonctions
Qu’est-ce qu’une fonction?
- Une boîte noire
- Qui prend des paramètres d’entrée
- Qui sort une valeur de retour
Utilité d'une fonction :
- Permet d’appliquer le même traitement à différents endroits du code
- Limite la duplication de code
- Améliore la lisibilité du code
- Facilité la maintenance
- Rend le code réutilisable
Une fonction a un type de retour qui détermine le type de la valeur qui sera retournée
Dans la plupart des langages, une fonction s’appelle de la manière suivante :
En C# comme dans d’autres langages, une fonction se déclare de la facon suivante:
- Code:
static TypeRetour MaFonction(TypePar1 par1,TypePar2 par2,…)
{
<tâches>
return valeur;
}
Une fonction :
- Peut utiliser plusieurs paramètres ou pas du tout
- Peut ne pas retourner de valeur (void), dans ce cas, elle est appelée « procédure »
- En plus de retourner une valeur, une fonction peut avoir des « effets de bord » :
- Afficher un texte à l’écran
- Jouer un son
- Ecrire dans un fichier
- …
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|