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

Scheme Discussion :

Valeurs booléennes


Sujet :

Scheme

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Valeurs booléennes
    Bonjour à tous ,
    Je suis en train de m'entrainer à la programmation en Scheme.
    Mais il y a certaines choses que je n'ai pas compris sur les expressions booléennes.
    Je fais des questions d'entrainement, mais comme il n'y a aucun corrigé, je suis un peu perdu, donc je ne sais pas si j'ai tort ou pas voici une des questions:

    écrire un ensemble de fonctions pour manipuler les valeurs booléennes usuelles à partir des définitions suivantes:
    1. a ⇒ b est égal à ((non a) ou b)
    2. a ⇔ b est égal à (a ⇒ b) et (b ⇒a)

    voici ce que j'ai fait:
    1. ;;; implique: bool*bool → bool
    ;;; (implique ab) rend true lorsque a vaut false ou lorsque b vaut true
    2. ;;; implique: bool*bool → bool
    ;;;(implique ab) rend true lorsque a vaut true ou lorsque b vaut true

    Et ils ont rajouté un 3 plus difficile; écrire une fonction qui prend 2 booléens a et b en arguments et qui vérifie l'expression (a ⇒ b) ⇔ ((non b) ⇒ (non a))
    là je ne sais pas faire peut-être:
    ;;; not implique (la fonction implique existe est-ce que j'ai le droit de faire not implique?)
    donc ;;; not implique: bool*bool → bool
    ;;; (not implique ab) rend true lorsque a vaut false ou lorsque b vaut false

    Qu'en pensez vous? auriez vous fait la même chose?

    merci d'avoir lu

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2009
    Messages : 38
    Points : 57
    Points
    57
    Par défaut
    Salut,

    pense à utiliser la balise CODE, ça aidera à la présentation de ton code

    Citation Envoyé par densetsu Voir le message
    un ensemble de fonctions pour manipuler les valeurs booléennes usuelles à partir des définitions suivantes:
    1. a ⇒ b est égal à ((non a) ou b)
    2. a ⇔ b est égal à (a ⇒ b) et (b ⇒a)

    voici ce que j'ai fait:
    1. ;;; implique: bool*bool → bool
    ;;; (implique ab) rend true lorsque a vaut false ou lorsque b vaut true
    2. ;;; implique: bool*bool → bool
    ;;;(implique ab) rend true lorsque a vaut true ou lorsque b vaut true

    Et ils ont rajouté un 3 plus difficile; écrire une fonction qui prend 2 booléens a et b en arguments et qui vérifie l'expression (a ⇒ b) ⇔ ((non b) ⇒ (non a))
    là je ne sais pas faire peut-être:
    ;;; not implique (la fonction implique existe est-ce que j'ai le droit de faire not implique?)
    donc ;;; not implique: bool*bool → bool
    ;;; (not implique ab) rend true lorsque a vaut false ou lorsque b vaut false

    Qu'en pensez vous? auriez vous fait la même chose?

    merci d'avoir lu
    Je ne suis pas sûr de comprendre l'exercice.
    Mais il me semble que tu dois coder des opérateurs logiques comme "et" "ou" "non" puis "implique" "equivalent". Là j'ai l'impression qu'en plus tu ne fais pas de Scheme... me trompes-je ou faisais-tu du OCaml avant ?

    Donc là tu veux coder les fonctions suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    (define (non a) 
      ;; Bool -> Bool
      'a-faire)
    (define (et a b) 
      ;; Bool * Bool -> Bool
      'a-faire)
    (define (ou a b) 
      ;; Bool * Bool -> Bool
      'a-faire)
    
    (define (implique a b) 
      ;; Bool * Bool -> Bool
      'a-faire)
    
    (define (equivalent a b) 
      ;; Bool * Bool -> Bool
      'a-faire)
    Ces opérateurs sont définis par les tables de vérité que tu trouves dans tous les livres de logiques. Mais les deux derniers se définissent par rapport aux autre (en fait "et" se définit aussi par "ou" et "non")... code les trois premiers directement et les deux autres en utilisant les trois premiers.
    Après tu fais l'autre fonction avec les opérateurs déjà définis.
    Je suppose que c'est ça l'exercice.

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/05/2009, 13h00
  2. Valeur booléenne de crystal report
    Par majej dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 28/12/2007, 12h52
  3. PL SQL valeur booléenne select
    Par nathieb dans le forum SQL
    Réponses: 9
    Dernier message: 25/09/2007, 16h13
  4. MCD valeurs booléennes
    Par trago dans le forum Schéma
    Réponses: 3
    Dernier message: 24/04/2007, 18h07
  5. [JTable] afficher des Chekbox pour des valeurs booléennes
    Par grabriel dans le forum Composants
    Réponses: 11
    Dernier message: 21/02/2007, 10h37

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