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

Caml Discussion :

Petit problème en Caml


Sujet :

Caml

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Petit problème en Caml
    Bonjour,

    Je débute en caml via la prépa, et je n'ai pour l'instant reçu que deux cours théoriques et un "TD". Je connais vraiment rien mais la chose dont je suis sur c'est que j'ai quelques problèmes.
    Alors voilà j'ai instalé caml sur mon mac. Déja c'est pas la même version que la prépa, la c'est camlX. Sur la version PC " caml light " ce que je faisais, marchait à peu près, là non..
    Le langage est-il différent sur les deux versions?

    quelque chose de simple j'ai essayé de programmer ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    let f x = sqrt( 4. +. 3. *. x);;
     
    let rec u n=
    if n=0 then 0.
    else u(n)=f(u(n-1));;
    et bien même ça ne marche pas ..

    pourriez vous me renseignez s'il vous plait ?

    merci d'avance.

  2. #2
    Membre éprouvé
    Avatar de InOCamlWeTrust
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 036
    Points : 1 284
    Points
    1 284
    Par défaut
    Citation Envoyé par Maxime.M Voir le message
    Bonjour,

    Je débute en caml via la prépa, et je n'ai pour l'instant reçu que deux cours théoriques et un "TD". Je connais vraiment rien
    Ben il faut pas sécher, il faut aller en cours ! Attention tu vas foirer les concours l'année prochaine !

    Citation Envoyé par Maxime.M Voir le message
    mais la chose dont je suis sur c'est que j'ai quelques problèmes.
    cf. remarque ci-avant

    Citation Envoyé par Maxime.M Voir le message
    Alors voilà j'ai instalé caml sur mon mac. Déja c'est pas la même version que la prépa, la c'est camlX.
    Oui de temps en temps, ça arrive. La fréquence de ce genre de problème est relativement aléatoire. Tout dépend de l'heure du clic sur le bouton télécharger. Certains affirmeraient que les phases de la lune y sont pour beaucoup... mais la conjecture n'aurait pas encore été prouvée.

    Citation Envoyé par Maxime.M Voir le message
    Sur la version PC " caml light " ce que je faisais, marchait à peu près
    C'est-à-dire souvent ? pas souvent ? quand ça marche pas, l'ordinateur gueule un gros mot ? C'est ça, n'est-ce pas ?

    Citation Envoyé par Maxime.M Voir le message
    , là non..
    Le langage est-il différent sur les deux versions?
    Aucune découverte n'a été faite allant dans ce sens, sans toutefois pouvoir affirmer qu'ils sont strictement identiques. La question reste ouverte, un peu à l'image de P vs NP ou de l'existence de vie extra-solaire.

    Citation Envoyé par Maxime.M Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    let f x = sqrt( 4. +. 3. *. x);;
     
    let rec u n=
    if n=0 then 0.
    else u(n)=f(u(n-1));;
    Je réécris ton code pour te montrer les conventions concernant où mettre les espaces...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    let f x = sqrt (4. +. 3. *. x)
    ;;
     
    let rec u n =
        if n = 0 then
            0.
        else
            f (u (n - 1))
    ;;
    Le code que tu as écris montre que tu n'as effectivement rien compris. Tu n'as pas besoin de mettre u (n) = dans la deuxième branche du if... then... else... car tu es déjà dans la définition de la fonction. f (u (n - 1)) est le résultat renvoyé par la fonction u en n. Tout simplement.

    Je continue à penser qu'enseigner la programmation avec des langages fonctionnels à des gens qui ne connaissent rien à un ordinateur, c'est du n'importe quoi !
    When Colt produced the first practical repeating handgun, it gave rise to the saying God created men, but Colt made them equal.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    832
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 832
    Points : 1 104
    Points
    1 104
    Par défaut
    InOcamlWeTrust, ta réponse me semble inutilement agressive. Elle est en grande partie incompréhensible, volontairement cryptique, et il me semble légèrement déplacée (qui a parlé de sécher les cours ? Il a commencé au second semestre et a seulement eu deux cours, voilà tout).

    Quand tu es de mauvais humeur, tu devrais te défouler sur des gens qui ont du répondant (comme la plupart des posteurs habitués de ce forum), et pas sur un débutant qui débarque et qui se sentira juste mal accueilli.


    Maxime.M > Comme l'a dit InOcamlWeTrust, "ça ne marche pas" ne nous aide pas beaucoup; quant tu veux de l'aide sur une erreur il faut nous expliquer précisément ce que tu fais et le message d'erreur que tu obtiens.
    Enfin, comme il le signale à la fin de son message, ton erreur vient du "u(n) = f(u(n-1))" qui n'est pas correct, cf. son explication.

  4. #4
    Membre éprouvé
    Avatar de InOCamlWeTrust
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 036
    Points : 1 284
    Points
    1 284
    Par défaut
    Si ça a été pris comme tel, ce n'était pas mon intention. Juste quelques petites vannes, dont l'intention n'était vraiment pas méchante. Si ça peut contenter certains, la réponse peut être modérée par qui de droit, ça ne me dérange absolument pas.
    When Colt produced the first practical repeating handgun, it gave rise to the saying God created men, but Colt made them equal.

Discussions similaires

  1. un petit problème d'algo
    Par supertramp dans le forum Algorithmes et structures de données
    Réponses: 22
    Dernier message: 12/10/2004, 20h13
  2. Petit problème de décimales !
    Par ridan dans le forum Langage SQL
    Réponses: 5
    Dernier message: 11/09/2004, 21h24
  3. Réponses: 17
    Dernier message: 13/07/2004, 20h37
  4. petit problème premier plan, arrière plan
    Par gros bob dans le forum OpenGL
    Réponses: 4
    Dernier message: 19/04/2004, 12h00
  5. [jointure] Petit problème sur le type de jointure...
    Par SteelBox dans le forum Langage SQL
    Réponses: 13
    Dernier message: 13/02/2004, 18h55

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