Cours:Cin Cout : Différence entre versions
(→Programme d'exemple) |
|||
(20 révisions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[Cours:TDs_1103|{{Rouge|Retour à la liste des tds}}]] | [[Cours:TDs_1103|{{Rouge|Retour à la liste des tds}}]] | ||
− | + | [[Cours:Cin/Cout_correction|{{Vert|<big>correction, enseignants uniquement ;-)</big>}}]] | |
− | =Programme d'exemple= | + | On utilisera un éditeur en ligne : |
+ | https://www.onlinegdb.com/online_c++_compiler | ||
+ | |||
+ | =Programme d'exemple : cout= | ||
Lorsque vous ouvrez le site OnlineGDB, vous avez un programme type qui permet d'afficher un message sur la console : | Lorsque vous ouvrez le site OnlineGDB, vous avez un programme type qui permet d'afficher un message sur la console : | ||
Ligne 25 : | Ligne 28 : | ||
} | } | ||
</source> | </source> | ||
− | *Pour | + | *Pour pouvoir utiliser cin / cout : |
<source lang=cpp> | <source lang=cpp> | ||
#include <iostream> | #include <iostream> | ||
Ligne 39 : | Ligne 42 : | ||
cout << " sur la même ligne "<<endl; // endl permet de passer à la ligne suivante | cout << " sur la même ligne "<<endl; // endl permet de passer à la ligne suivante | ||
cout << "nouvelle ligne" << endl; | cout << "nouvelle ligne" << endl; | ||
− | int | + | int distance = 152; |
− | cout << "la distance est " << | + | cout << "la distance est " << distance << " cm"<<endl; // afficher plusieurs éléments dont la valeur d'une variable. |
+ | </source> | ||
+ | |||
+ | =Utilisation de cin= | ||
+ | |||
+ | L'opérateur {{Rouge|>>}} utilisé sur {{Rouge|cin}} permet de lire les entrées : | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | |lire un entier | ||
+ | ||lire un caractère | ||
+ | ||lire un float | ||
+ | |- | ||
+ | | | ||
+ | <source lang=cpp> | ||
+ | int unEntier; | ||
+ | cin >> unEntier; | ||
+ | </source> | ||
+ | || | ||
+ | <source lang=cpp> | ||
+ | char unCaractere; | ||
+ | cin >> unCaractere; | ||
+ | </source> | ||
+ | || | ||
+ | <source lang=cpp> | ||
+ | float nombre; | ||
+ | cin >> nombre; | ||
+ | </source> | ||
+ | |} | ||
+ | |||
+ | '''Attention, cin n'affiche rien à l'écran et attend une saisie qui doit se terminer par la touche {{Rouge|Entrée}} !''' | ||
+ | |||
+ | =Exercices= | ||
+ | |||
+ | ==Ex1== | ||
+ | |||
+ | Afficher un message pour demander à l'utilisateur de saisir un nombre entier, on affiche ensuite le message : | ||
+ | *la valeur saisie est : xxx | ||
+ | *on remplace bien évidemment les xxx par la valeur ! | ||
+ | |||
+ | ==Ex2== | ||
+ | l'utilisateur doit saisir 5 nombres entiers, votre programme affiche : | ||
+ | *la somme des 5 nombres | ||
+ | *la moyenne | ||
+ | |||
+ | ==Ex3== | ||
+ | l'utilisateur doit saisir 2 nombres entiers, on affiche le message adéquat : | ||
+ | *1er nombre plus grand que 2ème nombre | ||
+ | *1er nombre plus petit que ... | ||
+ | * .... égal au ... | ||
+ | |||
+ | ==Ex4 : Calculatrice== | ||
+ | |||
+ | Ecrire un programme qui demande deux nombres à l’utilisateur et affiche le résultat de l’addition de ces deux nombres. | ||
+ | |||
+ | Modifier ensuite votre programme afin de pouvoir choisir l'opération à effectuer : x / + - | ||
+ | |||
+ | ==Ex5== | ||
+ | Le programme choisit un nombre aléatoire entre 0 et 20 (fonction rand), l'utilisateur doit trouver ce nombre, pour l'aider on lui indiquera si le nombre est plus grand ou plus petit. | ||
+ | |||
+ | Un peu de lecture sur la fonction aléatoire : | ||
+ | |||
+ | https://nicolasj.developpez.com/articles/libc/hasard/ | ||
+ | |||
+ | Pour une utilisation rapide : | ||
+ | <source lang=c> | ||
+ | #include <stdlib.h> | ||
+ | #include <stdio.h> | ||
+ | #include <time.h> | ||
+ | |||
+ | int main (void) | ||
+ | { | ||
+ | int nombreAleatoire; | ||
+ | // initialisation du générateur de nombre aléatoire | ||
+ | srand (time (NULL)); | ||
+ | // obtenir une valeur aléatoire comprise entre [0 et RAND_MAX] | ||
+ | nombreAleatoire = rand(); | ||
+ | // obtenir une valeur aléatoire comprise entre [0 et 9] | ||
+ | nombreAleatoire = rand()%10; | ||
+ | // obtenir une valeur aléatoire comprise entre [2 et 11] | ||
+ | nombreAleatoire = (rand()%10)+2; | ||
+ | ... | ||
+ | return 0; | ||
+ | } | ||
</source> | </source> | ||
=Ressources= | =Ressources= | ||
*[https://developpement-informatique.com/article/299/entree-sortie-en-c++----cin-et-cout cin/cout en c++] | *[https://developpement-informatique.com/article/299/entree-sortie-en-c++----cin-et-cout cin/cout en c++] |
Version actuelle datée du 14 novembre 2022 à 20:09
correction, enseignants uniquement ;-)
On utilisera un éditeur en ligne :
https://www.onlinegdb.com/online_c++_compiler
Sommaire
Programme d'exemple : cout
Lorsque vous ouvrez le site OnlineGDB, vous avez un programme type qui permet d'afficher un message sur la console :
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World";
return 0;
}
Quelques explications :
- Lorsqu'on lance un programme on exécute la fonction main :
int main()
{
...
}
- Pour pouvoir utiliser cin / cout :
#include <iostream>
using namespace std;
- On quitte la fonction main avec return
return 0;// 0 indique que tout s'est bien passé.
- Pour afficher un message à l'écran, on utilise cout
cout << "mon message";
cout << " sur la même ligne "<<endl; // endl permet de passer à la ligne suivante
cout << "nouvelle ligne" << endl;
int distance = 152;
cout << "la distance est " << distance << " cm"<<endl; // afficher plusieurs éléments dont la valeur d'une variable.
Utilisation de cin
L'opérateur >> utilisé sur cin permet de lire les entrées :
lire un entier | lire un caractère | lire un float |
int unEntier;
cin >> unEntier;
|
char unCaractere;
cin >> unCaractere;
|
float nombre;
cin >> nombre;
|
Attention, cin n'affiche rien à l'écran et attend une saisie qui doit se terminer par la touche Entrée !
Exercices
Ex1
Afficher un message pour demander à l'utilisateur de saisir un nombre entier, on affiche ensuite le message :
- la valeur saisie est : xxx
- on remplace bien évidemment les xxx par la valeur !
Ex2
l'utilisateur doit saisir 5 nombres entiers, votre programme affiche :
- la somme des 5 nombres
- la moyenne
Ex3
l'utilisateur doit saisir 2 nombres entiers, on affiche le message adéquat :
- 1er nombre plus grand que 2ème nombre
- 1er nombre plus petit que ...
- .... égal au ...
Ex4 : Calculatrice
Ecrire un programme qui demande deux nombres à l’utilisateur et affiche le résultat de l’addition de ces deux nombres.
Modifier ensuite votre programme afin de pouvoir choisir l'opération à effectuer : x / + -
Ex5
Le programme choisit un nombre aléatoire entre 0 et 20 (fonction rand), l'utilisateur doit trouver ce nombre, pour l'aider on lui indiquera si le nombre est plus grand ou plus petit.
Un peu de lecture sur la fonction aléatoire :
https://nicolasj.developpez.com/articles/libc/hasard/
Pour une utilisation rapide :
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main (void)
{
int nombreAleatoire;
// initialisation du générateur de nombre aléatoire
srand (time (NULL));
// obtenir une valeur aléatoire comprise entre [0 et RAND_MAX]
nombreAleatoire = rand();
// obtenir une valeur aléatoire comprise entre [0 et 9]
nombreAleatoire = rand()%10;
// obtenir une valeur aléatoire comprise entre [2 et 11]
nombreAleatoire = (rand()%10)+2;
...
return 0;
}