« Exercices en langage C++/La STL » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
Tavernier (discussion | contributions)
Catégorie:Exercices en langage C++ (livre) (l'IHM empeche une catégorisation robotisée)
Ligne 1 : Ligne 1 :
==La STL==
==La STL==
EXERCICE SUR LA CLASSE STRING
à compléter


Soit la chaine chaine1 = ":010920091123" contenant la date
[[Catégorie:Exercices en langage C++ (livre)]]
sous la forme : 01 09 2009 11 23
( 1 septembre 2009 11 h 23
Créer une programme permettant d'extraire les différents champs et de les afficher


************************
SOLUTION :
************************

#include <iostream>
#include <sstream>
#include <string>

void main()
{

std::string chaine1;
std::string jour, heure, minute;

chaine1 = ":010920091123";


if ( !chaine1.empty() )
{
jour = chaine1.substr( 1, 2 );
heure = chaine1.substr( 9, 2 );
if ( chaine1.size() <= 14 )
minute = chaine1.substr( 11, 2 );
}

chaine1.clear();

if ( !chaine1.empty() )
{
jour = chaine1.substr( 1, 2 );
heure = chaine1.substr( 10, 2 );
minute = chaine1.substr( 12, 2 );
}

// Conversion de string en entier :
int min;

std::stringstream s;

s << minute ;
s >> min;


}

Version du 14 septembre 2009 à 15:45

La STL

EXERCICE SUR LA CLASSE STRING

Soit la chaine chaine1 = ":010920091123" contenant la date sous la forme  : 01 09 2009 11 23 ( 1 septembre 2009 11 h 23 Créer une programme permettant d'extraire les différents champs et de les afficher


SOLUTION :

  1. include <iostream>
  2. include <sstream>
  3. include <string>

void main() {

std::string chaine1; std::string jour, heure, minute;

chaine1 = ":010920091123";


if ( !chaine1.empty() ) { jour = chaine1.substr( 1, 2 ); heure = chaine1.substr( 9, 2 ); if ( chaine1.size() <= 14 ) minute = chaine1.substr( 11, 2 ); }

chaine1.clear();

if ( !chaine1.empty() ) { jour = chaine1.substr( 1, 2 ); heure = chaine1.substr( 10, 2 ); minute = chaine1.substr( 12, 2 ); }

// Conversion de string en entier : int min;

std::stringstream s;

s << minute ; s >> min;


}