une Base Solide en Programmation

C++/Java/Delphi/Assembleur
 
AccueilPortailFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 pointeur&chaine de caractere

Aller en bas 
AuteurMessage
Admin
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 232
Age : 31
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

MessageSujet: pointeur&chaine de caractere   Mar 1 Jan - 1:24

Ecrire un programme qui lit 5 mots d'une longueur maximale de 50 caractères et les mémorise dans un tableau de chaînes de caractères TABCH. Inverser l'ordre des caractères à l'intérieur des 5 mots à l'aide de deux pointeurs P1 et P2. Afficher les mots.

_________________
www.abdoullah.co.cc(en construction)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://hbpcclub.forumactif.fr
Benayada Houari
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 89
Age : 32
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Mar 1 Jan - 2:25

Tu veux dire quoi par "Inverser l'ordre des caractères à l'intérieur des 5 mots",
tu veux dire que par exemple , un mot tapé "hbpc" devient "cpbh" ou koi?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Admin
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 232
Age : 31
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Mar 1 Jan - 2:47

je te félicite chriki ta comprehension est 19++/20 santa

_________________
www.abdoullah.co.cc(en construction)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://hbpcclub.forumactif.fr
Benayada Houari
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 89
Age : 32
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Mar 1 Jan - 19:06

Code:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    char a[5][50], *p1,*p2,temp;
    int i=0,j=0,z=0;
    for (i=0;i<5;i++)
        scanf("%s",a[i]);
    for (i=0;i<5;i++)
    {
        j=0;
        z=strlen(a[i])-1;
        while (j<z)
        {
            p1=&a[i][j++];
            p2=&a[i][z--];
            temp=*p1;
            *p1=*p2;
            *p2=temp;
        }
    }
    for (i=0;i<5;i++)
        printf("%s\n",a[i]);
    return 0;
}

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Admin
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 232
Age : 31
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Mer 2 Jan - 13:56

20/20

lol!

_________________
www.abdoullah.co.cc(en construction)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://hbpcclub.forumactif.fr
Admin
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 232
Age : 31
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

MessageSujet: solution 2   Jeu 3 Jan - 14:11

voici une autre solution utilise une matrice
Code:

#include <stdio.h>
main()
{
 /* Déclarations */
 char TABCH[5][51];/* tableau de chaînes de caractères */
 char AIDE;        /* pour la permutation des caractères */
 char *P1, *P2;    /* pointeurs d'aide */
 int I;            /* indice courant  */
 
 /* TABCH+I est l'adresse de la I-ième chaîne du tableau */
 /* Il vaut mieux convertir TABCH+I en pointeur sur char */
  /* Saisie des données */
 printf("Entrez 5 mots :\n");
 for (I=0; I<5; I++)
    {
      printf("Mot %d (max.50 caractères) : ", I);
      gets((char *)(TABCH+I));
    }
 
 /* Inverser l'ordre des caractères à l'intérieur des mots */
 for (I=0; I<5; I++)
    {
      P1 = P2 = (char *)(TABCH+I);
      /* Placer P2 à la fin de la chaîne */
      while (*P2)
            P2++;
      P2--; /* sinon '\0' est placé au début de la chaîne */
      while (P1<P2)
          {
            AIDE = *P1;
            *P1  = *P2;
            *P2  = AIDE;
            P1++;
            P2--;
          }
    }
 
  /* Affichage des mots inversés */
 for (I=0; I<5; I++)
      puts((char *)(TABCH+I));
 return 0;
}

_________________
www.abdoullah.co.cc(en construction)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://hbpcclub.forumactif.fr
Takichi Kitano
soldat
soldat
avatar

Masculin
Nombre de messages : 5
Age : 29
Localisation : Toronto
Loisirs : Programming
Date d'inscription : 09/10/2007

MessageSujet: Re: pointeur&chaine de caractere   Mer 9 Jan - 23:25

exercice:
soit une classe "employe" ayant deux variable privées:
- numéro identification de l'employé,et
- salaire.
ecrire un programme c++ qui contient une fonction qui reçoit en paramètre un objet de type employé par adresse,puis augmente son salaire de 10%.
l'affichage de l'objet ainsi modifié doit se faire dans le main().
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.informatiqueclub.2007.fr/
Benayada Houari
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 89
Age : 32
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Jeu 10 Jan - 0:12

Code:

#include <iostream>

class Employe
{
    private:

    int numero_ident,salaire;

    public:

    Employe::Employe():numero_ident(140),salaire(100)
    {
    }
    void affichage()
    {
        std::cout<<"Le numero = "<<numero_ident<<std::endl;
        std::cout<<"Le salaire = "<<salaire<<std::endl;
    }
    int getSalaire() const
    {
        return salaire;
    }
    void setSalaire(int a)
    {
        salaire+=a;
    }
};

void augmente(Employe *moh)
{
    moh->setSalaire(moh->getSalaire()*(0.1));
}

int main()
{
    Employe moh;
    augmente(&moh);
    moh.affichage();
    return 0;
}

Et si vous avez des question je suis ici comme tjrs Smile


Dernière édition par le Jeu 10 Jan - 1:52, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
chaouge
soldat
soldat


Masculin
Nombre de messages : 22
Age : 30
Localisation : my town
Loisirs : leisure
Date d'inscription : 28/11/2007

MessageSujet: Re: pointeur&chaine de caractere   Jeu 10 Jan - 0:34

Benayada Houari a écrit:
Code:

#include 
 
class Employe
{
 private:

 int numero_ident,salaire;

 public:

 Employe::Employe():numero_ident(140),salaire(100)
 {
 }
 void affichage()
 {
 std::cout<<"Le numero = "< std::cout<<"Le salaire = "< }
 int getSalaire() const
 {
 return salaire;
 }
 void setSalaire(int a)
 {
 salaire+=a;
 }
};

void augmente(Employe *moh)
{
 moh->setSalaire(moh->getSalaire()*(0.1));
}

int main()
{
 Employe moh;
 augmente(&moh);
 moh.affichage();
 return 0;
}

Et comme tjrs si quelqu'un a une question je suis ici Smile ..

j'ai posé des questions dans d'autres sujets mais personne m'a répondu
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Admin
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 232
Age : 31
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Jeu 10 Jan - 19:03

taki svp si autrefois tu veux posé des exos c mieux de les posées dans un sujet séparé comme sa tout le mondre va voir ton exercice et merci bcp pour ton contribution

_________________
www.abdoullah.co.cc(en construction)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://hbpcclub.forumactif.fr
Takichi Kitano
soldat
soldat
avatar

Masculin
Nombre de messages : 5
Age : 29
Localisation : Toronto
Loisirs : Programming
Date d'inscription : 09/10/2007

MessageSujet: Re: pointeur&chaine de caractere   Ven 11 Jan - 2:55

Admin a écrit:
taki svp si autrefois tu veux posé des exos c mieux de les posées dans un sujet séparé comme sa tout le mondre va voir ton exercice et merci bcp pour ton contribution

ok bounce bounce
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.informatiqueclub.2007.fr/
Takichi Kitano
soldat
soldat
avatar

Masculin
Nombre de messages : 5
Age : 29
Localisation : Toronto
Loisirs : Programming
Date d'inscription : 09/10/2007

MessageSujet: Re: pointeur&chaine de caractere   Ven 11 Jan - 3:20

ma solution:
Code:
# include <iostream.h>
class employe
{ int no_identif,salaire;
public:
      void creer()
      {cout<<"\n No identification et salaire?";
      cin>>no_identtif>>salaire;
      }
      void afficher()
      {cout<<"\n no identification:"<<no_identif;
      cout<<"\n salaire:"<<salaire;
      }
      void modif_salaire()
      {salaire = salaire + 0.10*salaire;}
      };
//déclaration de la fonction modifier().Elle reçoit un objet par adresse
void modifier(employe *);
void main
{
//déclaration de l'objet
employe emp;
//création de l'objet
emp.creer();
//appel de la fonction modifier():passage par adresse
modifier(&emp);
//affichage après modification
emp.afficher();
}
//définition de la fonction modifier()
void modifier(employe *ptr_emp)
{
//on modifie le salaire de l'objet reçu par adresse
ptr_emp->modif_salaire();
}
   
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.informatiqueclub.2007.fr/
Benayada Houari
Administrateur
Administrateur
avatar

Masculin
Nombre de messages : 89
Age : 32
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

MessageSujet: Re: pointeur&chaine de caractere   Ven 11 Jan - 23:23

Tackichi, je suis bien d'accord avec ton code, il me semble juste... mais je pense que t'as oublié une chose...t'as oublié le plus important principe l'encapsulation...
je veux dire tu doit donner le droit d'accés private aux attributs de ta classe... c'est pour ça j'ai met les méthodes getSalaire et setSalaire dans mon code...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Takichi Kitano
soldat
soldat
avatar

Masculin
Nombre de messages : 5
Age : 29
Localisation : Toronto
Loisirs : Programming
Date d'inscription : 09/10/2007

MessageSujet: Re: pointeur&chaine de caractere   Mer 16 Jan - 23:46

ok,thanks cheers Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.informatiqueclub.2007.fr/
Contenu sponsorisé




MessageSujet: Re: pointeur&chaine de caractere   

Revenir en haut Aller en bas
 
pointeur&chaine de caractere
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» afficher les guillemets d'une chaine.
» Donnée POINTEUR de l'etrex Vista HCx
» plus de chaine teva , rtl9, paris premiere
» Perte de la chaine toutes les 2 minutes!!!
» Probleme chaine MCM

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
une Base Solide en Programmation :: HBPCCLUB ACADEMY :: C :: EXERCICES-
Sauter vers: