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

Threads & Processus C++ Discussion :

Exercice C++ semaphore


Sujet :

Threads & Processus C++

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Par défaut Exercice C++ semaphore
    Bonjour, j ai un exercice en C++ qui me pose qqes problemes.. Si quelqu un pouvait me le resoudre ce serait sympa...d autant plus que je ne suis pqs du tout programmeur Voici l enonce:

    Il faut definir une classe, (de nom SEMA) permettant de creer et d utiliser des semaphores.
    L objet de classe SEMA sera defini par:
    -des donnees membres:
    un entier
    une chaine de caractere
    un pointeur sur une section critique
    -des fonction membres:
    un constructeur parametre (3 parametres: valeur du semaphore a sa creation, une chaine de caractere et l adresse de section critique)
    une fonction P (prise du semaphore) de type booleen. Elle fait -1 ds la valeur du semaphore et retourne vrai si la nouvelle valeur est striictement positive et faux ds les 4 cas. Cette fonction est non bloquante
    une fonction V de type vide qui fait +1 ds la valeur du semaphore

    Nota:
    les 3 fonctions (constructeur, P et V) affichent lors de leur execution le nom du semaphore, la valeur du semaphore apres l actio, le resultat (echec ou reussite ds le cas de P). Elle se sert de la section critique pour acceder a l ecran
    La valeur du semaphore doit tjrs etre positive ou nulle.
    La classe doit etre definie ds une bibliotheque

    Merci pour les infos que vous pouvez apporter

  2. #2
    Membre éclairé Avatar de befalimpertinent
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Avril 2007
    Messages : 561
    Par défaut
    L'exercice est suffisamment bien énoncé pour pouvoir commencer à coder quelque chose de correct.
    Essayes d'abord de créer la classe et les fonctions indiquées et n'hésite pas à poster si tu as un problème sur un point précis (avec code à l'appui).
    Mais là ça m'étonnerai que tu trouves quelqu'un ici pour le résoudre à ta place (ça ne te servirais à rien en plus)

  3. #3
    Membre éprouvé
    Inscrit en
    Avril 2008
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 155
    Par défaut
    Ouai, le but des exercice est de se faire la main et de comprendre ce qu'on fait
    Le forum est là pour filer un coup de main, on n'est pas là pour faire tes devoirs

  4. #4
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut, et bienvenue sur le forum.

    Tu as la chance d'avoir un énoncé clair, complet et précis de ce que ton prof demande... Autant en profiter (car les spécifications sont loin d'être toujours aussi claires ).

    Il faut bien comprendre qu'une très grosse partie du travail de conception consiste à
    • comprendre ce qu'on lit
    • comprendre ce que la personne que l'on a en face de soi n'arrive pas à exprimer clairement.
    or, il se fait que, dans ton cas, les choses sont déjà exprimées de manière suffisemment claires pour te permettre de te "dépétrer"

    Le problème vient donc sans doute de la compréhension de ce que tu lis, et, de ce fait, le mieux est de te donner les pistes qui t'aideront à mieux comprendre:

    Bien souvent, dans les spécifications, les sujets et les noms correspondent soit à des types qu'il te faut créer, soit à des données utilisées par le type dont on parle.

    Les verbes correspondent alors généralement aux messages que le type dont on parle doit émettre, ou auxquels il doit répondre.

    Ici, les choses étant présentées un peu différemment, pose toi les questions suivantes:
    1. quelle classe doit tu créer (cherche le nom de la classe)
    2. quels doivent être ses membres (au minimum leur type, en essayant, étant donné que ton prof n'impose pas de noms, d'en choisir qui expriment leur but)
    3. quelles doivent être ses méthodes (leur nom, les arguments qu'elles nécessitent et leur type de retour éventuel)
    4. qu'attend on de ces méthodes

    La réponse à chacune de ces questions est écrite en toutes lettres dans l'énoncé, et, si tu connais un minimum la syntaxe du C++ - manière un peu plus gentille de parler que de dire "si tu n'a pas brossé tous les cours, et que tu n'en a pas profité pour dormir durant toute leur durée" - le reste devrait arriver tout seul

    Evidemment, si tu a un doute sur l'algorithme de l'une ou l'autre méthode, si tu n'arrive toujours pas à comprendre un ou l'autre terme, nous serons toujours ravis de te répondre, mais, ainsi que tout le monde te l'a indiqué avant moi, ce serait un bien mauvais service à te rendre que de te donner le résultat "tout chaud" dans les mains, sans que tu n'aies fait ta part d'efforts
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

Discussions similaires

  1. Pthread et semaphores
    Par Yabo dans le forum Linux
    Réponses: 9
    Dernier message: 30/03/2008, 00h09
  2. Un cours de C/C++ avec exercices corrigés
    Par merrheim dans le forum C++
    Réponses: 65
    Dernier message: 18/01/2005, 22h30
  3. Semaphore (operation Z)
    Par zehle dans le forum Linux
    Réponses: 3
    Dernier message: 12/01/2005, 21h30
  4. Pages d'exercices à faire pour l'autoformation ?
    Par [thebadskull] dans le forum Evolutions du club
    Réponses: 13
    Dernier message: 15/06/2004, 20h26
  5. Pouvez vous m'aider a resoudres ces 3 exercices
    Par algorithmique dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 09/08/2002, 17h26

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