IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Exercice un peu difficile pour moi


Sujet :

C

  1. #21
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Citation Envoyé par sound-concept Voir le message
    Presque EPITECH. lol tu connais ça ou quoi?
    EPITA et EPITECH, les deux écoles soeurs, sont connues pour interdires à leurs élèves beaucoup d'éléments standard, notamment les fonctions standard d'entrées-sorties, considérées comme de "trop haut niveau".
    Donc, quand j'ai vu ta fonction qui utilise write (fonction de sortie de bas-niveau ne faisant pas partie du standard C†), je me suis douté...

    Mais faisant partie du standard POSIX

  2. #22
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    EPITA et EPITECH, les deux écoles soeurs, sont connues pour interdires à leurs élèves beaucoup d'éléments standard, notamment les fonctions standard d'entrées-sorties, considérées comme de "trop haut niveau".
    Donc, quand j'ai vu ta fonction qui utilise write (fonction de sortie de bas-niveau ne faisant pas partie du standard C†), je me suis douté...

    Mais faisant partie du standard POSIX
    Il ne reste donc plus qu'à implanter un équivalent (simplifié) de printf() à base d'appel à write() afin de convertir les entiers en chaine de caractère. La fonction my_putchar() proposée par le PO ne fait pas le job.

    Thierry

  3. #23
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    En effet.
    Je pencherais pour une fonction PutInteger(int desc, int val, int minDigits) pour écrire l'entier sur le descripteur de sortie...

    On l'appelerait ainsi: PutInteger(STDOUT_FILENO, i, 2);
    On peut aussi supprimer le premier paramètre et supposer que c'est toujours la sortie standard (STDOUT_FILENO, qui équivaut à 1 sous POSIX)...

    Note pour sound-concept: Tu devrais remplacer tes 1 dans les appels à write() par STDOUT_FILENO...

  4. #24
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Oula!! Trop compliqué pour moi ça messieurs... Je ne comprend plus un mot de ce que vous me dite à partir du remplacement du printf...
    Désolé

  5. #25
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    OK, on va procéder par étapes.
    1) Tu sais que le premier paramètre de write() est un descripteur de fichier, non ?

  6. #26
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 949
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 949
    Points : 5 663
    Points
    5 663
    Par défaut
    Lio,
    Citation Envoyé par sidahmed Voir le message
    Bonjour,

    le code suivant permet l'affichage de 00 00, 00 01, ..., 99 98, 99 99 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for (i = 0; i < 10; i++)
      for (j = 0; j < 10; j++)
        for (k = 0; k < 10; k++)
          for (l = 0; l < 10; l++)
            printf("%d%d %d%d\n", i, j, k, l);
    PS : j'ai pas testé ce bout de code.

    Bon courage.
    L'art de faire compliqué quand on peut faire simple.

    Pourquoi ce besoin de 4 boucles ?

    Si on demandait d'afficher

    000000 000000
    000000 000001
    000000 000002
    ...
    999999 999999

    tu ferais 12 boucles ?

Discussions similaires

  1. Requete concernant des dates un peu complexe (pour moi)
    Par fayred dans le forum Requêtes
    Réponses: 6
    Dernier message: 22/02/2008, 08h26
  2. Un select un peu difficile pour un débutant
    Par mitchb dans le forum Débuter
    Réponses: 1
    Dernier message: 27/03/2007, 22h35
  3. Gérer un Formulaire un peu complexe pour moi
    Par budylove dans le forum Langage
    Réponses: 3
    Dernier message: 17/05/2006, 10h01
  4. Requete un peu compliqué pour moi
    Par passie dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/04/2006, 15h08
  5. [SQL - ORACLE] Requete un peu compliquée (pour moi)
    Par Worldofdada dans le forum Langage SQL
    Réponses: 15
    Dernier message: 03/11/2005, 08h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo