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

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

    Informations forums :
    Inscription : mars 2007
    Messages : 3
    Points : 1
    Points
    1

    Par défaut La touche entrée en OCaml sur Windows

    je débute en ocaml et puis je suis sur windows et j arrive pas a utiliser la fonction read_int () en fin quand je tape le nb et je fais entrée le curseur ne m affiche pas une réponse et revient a la ligne j aimerai bien savoir comment faire pour pouvoir fonctionner cette fonction.
    je donne un exemple :
    une fonction cpcm x renvoie bravo si le nb tapé par l utilisateur = x et c+ si il est inferieur et c- si il est superieur
    #cpcm 5;;
    taper un nombre : 3(*entrée*)

    au lieu d afficher une reponse ce revient a la ligne

    merci a tous

  2. #2
    LLB
    LLB est déconnecté
    Membre expérimenté
    Inscrit en
    mars 2002
    Messages
    967
    Détails du profil
    Informations forums :
    Inscription : mars 2002
    Messages : 967
    Points : 1 337
    Points
    1 337

    Par défaut

    Ben, montre ton code.

    J'ai testé ce programme (sous Linux) et ça marche bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    let i = read_int () in
      Printf.printf "%d\n" i
    Chez toi, ça marche ?
    Si non, tu testes comment ? (en console ? en mode interactif ?)

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2007
    Messages : 3
    Points : 1
    Points
    1

    Par défaut

    non ca marche pas ca revient a la ligne chaque fois que je fasse entrée

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2007
    Messages : 3
    Points : 1
    Points
    1

    Par défaut

    Le code c'est ça :
    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
    19
    20
    #let rec cpcm n =     
       let () = print_string "taper un nombre : " in     
       let i = read_int ()      
       in        
          if i = n then          
             let () = print_string "BRAVO" in        
             let () = print_newline ()         
             in print_newline ()       
          else          
             let () =            
                 if i < n then             
                      let () = print_string "C+"             
                      in print_newline ()            
                else              
                      let () = print_string "C-"             
                      in print_newline ()         
             in cpcm n ;;
    val cpcm : int -> unit = <fun>
     
    #cpcm 2;;
    taper un nombre : 3 (et là, en tapant entrée, au lieu de m'afficher la valeur ça revient à la ligne et impossible de continuer).

  5. #5
    LLB
    LLB est déconnecté
    Membre expérimenté
    Inscrit en
    mars 2002
    Messages
    967
    Détails du profil
    Informations forums :
    Inscription : mars 2002
    Messages : 967
    Points : 1 337
    Points
    1 337

    Par défaut

    Ton exemple marche chez moi. J'ai testé en compilant (ocamlc) et en mode interactif (ocaml), et tout fonctionne.

    En revanche, dans le tuareg-mode d'emacs, il attend qu'on entre ";;" pour l'envoyer à l'interpréteur. Tu peux tester quand même en entrant les différents nombres à la suite, et en mettant le ";;" à la fin, mais ce n'est pas très pratique.

    Le plus simple reste de compiler.

    Conseil : utilise print_endline au lieu de print_string puis print_endline.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/05/2010, 16h37
  2. Réponses: 7
    Dernier message: 23/08/2006, 19h20
  3. [Javascript] appui sur la touche entrée dans une textbox
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/01/2006, 12h19
  4. déclenchement d'un message box après click sur touche entrée
    Par new_wave dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 09/11/2005, 10h15
  5. Touche entrée sur double formulaire -> validation
    Par 10-nice dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 26/10/2005, 13h02

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