Cours:Cin Cout : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
 
(19 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>}}]]
  
 
On utilisera un éditeur en ligne :
 
On utilisera un éditeur en ligne :
 
  https://www.onlinegdb.com/online_c++_compiler
 
  https://www.onlinegdb.com/online_c++_compiler
  
=Programme d'exemple=
+
=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 26 : Ligne 28 :
 
}
 
}
 
</source>
 
</source>
*Pour inclure les fonctions cin / cout :
+
*Pour pouvoir utiliser cin / cout :
 
<source lang=cpp>
 
<source lang=cpp>
 
  #include <iostream>
 
  #include <iostream>
Ligne 40 : 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 d = 152;
+
int distance = 152;
cout << "la distance est " << d << " cm"<<endl; // afficher plusieurs choses dont la valeur d'une variable.
+
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

Retour à la liste des tds

correction, enseignants uniquement ;-)

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 :

#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;
}

Ressources