Bonjour, et bienvenue dans ce chapitre 4 ! Il est consacré aux variables et aux différentes notions qui leurs sont associées. Vous verrez, ce sera aussi facile que les cours précédents.
Attention, si vous n’avez pas bien suivi les cours précédents, vous serez largués ! Un conseil, assurez vous d’avoir bien compris les autres chapitre, et plus particulièrement celui sur les variables.Allez, c’est parti !
Les différentes opérations proposées par le C
En programmant, vous aurez l’occasion de faire des maths. Et oui, ça se résume pas à ça, mais il y a des calculs à faire entre les variables pour obtenir ce que l’on veut.
Voyons comment procéder :
Les 4 opérations de baseLes 4 opérations basiques sont
• L’addition
• La soustraction
• La multiplication
• La division
Regardez ce code :
- Code:
-
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int variable = 5 + 3;
printf("%d\n", variable);
system("PAUSE");
return 0;
}
Testez le, il marche. Le compilateur, en arrivant à la déclaration de la variable, va lire la ligne de droite à gauche. Il va d’abord faire le calcul 5 + 3, puis stocker le tout dans la variable.
Ce code est facile, voyez celui là :
- Code:
-
int variable1 = 5 + 3;
printf("Voici le contenu variable1 : \n%d\n", variable1);
double variable2 = 3 * 2;
printf("Et voila ce que contient variable2 : \n%f\n", variable2);
Ce code aussi fonctionne. Vous vous demandez sûrement ce que signifie cet petite astérisque (*). Et bien c’est l’opérateur de la multiplication. Je ne vais pas vous faire tous les codes pour tous les opérateurs, alors voici la liste :
• Addition : +
• Soustraction : -(c’est le symbole moins, mais le tiret marche aussi !)
• Multiplication : *
• Division : /
Question : Regarde, pourquoi ce code n’affiche pas 1.5 ?
- Code:
-
double variable = 3 / 2;
printf("Voila ce que contient variable : \n%f\n", variable);
Réponse : Oui, en effet, ce code affichera 1.000
C’est pour ça que le C est assez embêtant. Si on met 3 et 2, il croira qu’on veut forcément un résultat entier. Pour résoudre le problème, mettez ce code :
- Code:
-
double variable = 3.0 / 2.0;
printf("Voila ce que contient variable : \n%f\n", variable);
Voilà, ça marche maintenant !
Maintenant, un petit bonus offert par printf :
- Code:
-
printf("%d", 5 + 3);
Cela écrit bien 8 à l’écran ; magique n’est-ce pas ?
Une opération moins connue : le moduloLe modulo est une opération pas très utilisée, mais qui peut parfois servir.
Il sert en fait à renvoyer le reste d’une division. Regardez ce bout de code :
- Code:
-
float variable = 10 % 4;
printf("%f\n", variable);
Il écrit 2 car 10 / 4 = 2 et il reste 2.
Voilà, les opérateurs vous connaissez maintenant !
Les variables et les calculs
Regardez, ceci aussi est possible :
- Code:
-
long variable1 = 10, variable2 = 20;
long resultat = variable1 + variable2;
Et oui, resultat vaut bien 30.
Je ne m’étendrai pas là-dessus, c’est vraiment très facile !
Les raccourcis utiles
Réfléchissez, comment feriez vous pour augmenter la valeur d’un nombre de 1?
Comme ça, non ?
- Code:
-
long nombre = 1;
nombre = nombre + 1;
Ce code marche, étant donné que le compilateur lit les déclarations de droite à gauche.
Il va donc traduire ce code par « Mettre dans la variable nombre la valeur actuelle de nombre + 1 »
Ca marche, mais j’aime pas cette méthode parce que c’est un peu long. Je vais maintenant vous montrer un exemple de ce qu’on appelle
l’incrémentation :
- Code:
-
long nombre = 1;
nombre++;
C’est beaucoup plus rapide et ça fait exactement la même chose.
De même, il existe la décrémentation :
- Code:
-
long nombre = 1;
nombre--;
Pour les plus perspicaces, le C++ est bien une amélioration incrémentale du C. C’est en quelque sorte le C à un niveau au-dessus.
Il existe aussi d’autres raccourcis pour les autres opérations :
Regardez, je les ai listés dans ce code :
- Code:
-
long nombre = 1;
nombre++; //On ajoute 1
nombre += 1; //Une autre façon d'ajouter 1
nombre--; //On soustrait 1
nombre -= 1; //Une autre façon de soustraire 1
nombre *= 2; //On multiplie par deux
nombre /= 3; //On divise par 3
nombre %= 2; //Je ne comprends pas, mais sachez que ça existe
Vous avez même vu les autres raccourcis pour la soustraction et l’addition.
Vous êtes maintenant capables de faire le petit exercice suivant.
Exercice
Maintenant que vous connaissez le principe, voici un exercice(entraînez vous, c’est la seule façon de progresser !)
Vous allez réaliser une mini(mais alors vraiment mini) calculatrice qui demandera à l’utilisateur de choisir le nombre 1, puis le nombre 2, et qui affichera le résultat de nombre1 + nombre2 ! Vous avez le choix : soit vous utilisez 2 variables, soit 3 !
Je n’en dis pas plus, sinon c’est trop facile !
A vous.
Correction
Voilà un code opérationnel, mais il y a d’autres solutions :
- Spoiler:
- Code:
-
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombre1 = 0, nombre2 = 0, resultat = 0; //On initialise les variables à 0
printf("***LE SUPER ADDITIONNEUR***\n");
printf("Bienvenue, veuillez choisir un premier nombre\n");
scanf("%d", &nombre1);
printf("Maintenant, choisissez un second nombre\n");
scanf("%d", &nombre2);
resultat = nombre1 + nombre2;
printf("%d + %d = %d \n", nombre1, nombre2, resultat);
system("PAUSE");
return 0;
}
Voilà un programme que vous pouvez à présent montrer à vos amis, ou même vendre(bien que je pense que vous ne ferez pas fortune avec, mais c’est comme vous voulez^^)
Et bien, si vous n’avez pas réussi, il faudra relire ce chapitre, car il s’agit de la base de chez base !
Dans le prochain chapitre, vous apprendrez à faire un programme qui change en fonction de ce que l’utilisateur fait ! C’est une technique très utilisée dans les jeux vidéos, donc essentielle(je vous apprendrais d’ailleurs au long de ce cours à faire des jeux !)
Bonne journée et à la prochaine !
Comme toujours, pour toute question, explication supplémentaire, problème, ou encore éclaircissement, vous pouvez poster après moi.