Aller au contenu

Change
Photo

Calcul de l'IMC en PHP.


  • Veuillez vous connecter pour répondre
46 réponses à ce sujet

#31
Arkh

Arkh

    Geek diplomé

  • Membre
  • 2 259 messages
C/C++

Les seuls, les vrais...

:rolleyes:
  • 0

D900F : I7 950 (8x3.1Ghz) /// 6GB DDR3 1333MHz (3x2Go) /// GTX 280M (128CC/1GHz/1Go) /// 2x320GB 7200Trs/min /// WUXGA Non-Glare Screen 1920x1200 /// Razer Abyssus /// NC-2000 /// By PcSystems-EvolutionX /// Powered by Debian!

> Get Process Explorer


#32
Dagda-Esus

Dagda-Esus

    Mac en force

  • Membre
  • 4 219 messages
Arkh, l'assembleur c'est encore mieux... le C/C++ c'est pour les chochottes ^^

Sinon pour le web, certe, on peux en faire avec beaucoup de languages, mais si c'est pour ce coder un serveur web au moindre petit truc pour 2pécores... mouai ok ^^

ah d'ailleurs, pas besoin de tout ça, le HTML5 gère très bien les calculs, pas besoin de serveur et tout :P
  • 0
configuration actuel : Macbook Pro 15" 2011 > sandy bridge@2,0gHz > 8go DDR3 > OWC extrem 6G 120go > OBHD : 500go@5400tr/min

#33
Yo Eight

Yo Eight

    Admin du Code

  • Membre
  • 4 218 messages
  • Localisationdans les environs de Paris
@Arkh

j'en étais sûr que t'allais sortir ça :D

Pour moi ça sera Haskell: la gestion de la mémoire en moins (comparé au C/C++) mais la programmation fonctionnelle pure en plus. Rigueur, (beaucoup) de patience et (énormément de) travail sont obligatoires :)

Mais bon, en apprenant le C ou C++ tu pourras lire 70% des langages actuels
  • 0
Mon blog: Deikonad - Functional Programming
iMac 27" : Core i7 860 @ 2,8 GHz - ATI 4850M - 8Go @ 1066MHz - 1To @ 7200trs/min
MacBook Pro 15" : Core i7 2635QM @ 2GHz - ATI 6490M - 8Go @ 1333MHz - 500Go @ 5400trs/min
MacBook Pro 13" : Core 2 Duo P8400 @ 2,26GHz - nVidia 9400M - 2Go @ 800MHz - 160Go @ 5400trs/min

#34
Arkh

Arkh

    Geek diplomé

  • Membre
  • 2 259 messages
Oups, j'avais compris langage de programmation au sens large...

Et oui Dagda, ASM aussi... mais bon faut aimer...

Yo Eight, C/C++ sont rigoureux aussi... enfin si tu commences pas à enfumer le compilo avec trop de reinterpret_cast et metaprog' pour lui faire croire que toutes tes fonctions sont capables sont capable d'éffectuer des calculs même sur des types non-scalaires (mon petit délire du moment... dans des kernels CUDA). Pour ce qui est de la gestion de la mémoire, personnellement j'adore et j'en ai besoin pour des questions de performances.

En tout cas, oui c'est sûr, une personne qui connait bien C s'en sortira avec de très nombreux langages...

Modifié par Arkh, 07 février 2012 - 23:38.

  • 0

D900F : I7 950 (8x3.1Ghz) /// 6GB DDR3 1333MHz (3x2Go) /// GTX 280M (128CC/1GHz/1Go) /// 2x320GB 7200Trs/min /// WUXGA Non-Glare Screen 1920x1200 /// Razer Abyssus /// NC-2000 /// By PcSystems-EvolutionX /// Powered by Debian!

> Get Process Explorer


#35
Yo Eight

Yo Eight

    Admin du Code

  • Membre
  • 4 218 messages
  • Localisationdans les environs de Paris

ah d'ailleurs, pas besoin de tout ça, le HTML5 gère très bien les calculs, pas besoin de serveur et tout :P

Ne confonds pas !

Un serveur ne sait pas ce que c'est du HTML, tu communiques avec lui via HTTP (qui lui utilise TCP qui lui .... etc :D). Le HTML c'est le navigateur qui l'interprète. Le serveur comme son nom l'indique, ne fait que servir :)

Yo Eight, C/C++ sont rigoureux aussi...

T'inquiètes pas, tu prêches un converti mais je préfère la programmation fonctionnelle et l'abstraction qui va avec :)
  • 0
Mon blog: Deikonad - Functional Programming
iMac 27" : Core i7 860 @ 2,8 GHz - ATI 4850M - 8Go @ 1066MHz - 1To @ 7200trs/min
MacBook Pro 15" : Core i7 2635QM @ 2GHz - ATI 6490M - 8Go @ 1333MHz - 500Go @ 5400trs/min
MacBook Pro 13" : Core 2 Duo P8400 @ 2,26GHz - nVidia 9400M - 2Go @ 800MHz - 160Go @ 5400trs/min

#36
Dagda-Esus

Dagda-Esus

    Mac en force

  • Membre
  • 4 219 messages
je ne confond pas yo eight, et oui je me suis trompé, faut un peu de js aussi mais html5 simplifie...

le code ne change que peu, j'ai juste utiliser la balise output pour les résultats, des input type number pour les entrées... une fonction JS pour le calcul, j'ai eu la flemme de découper pour mettre le calcul dans une autre fonction et faire une gestion des entrées ^^ bon finalement je l'ai fait vite fait pour te montrer un exemple... là par exemple on peux appeler simplement la fonction calcul pour checker les entrées/sorties et voir que ça marche bien.
Pour la gestion des erreurs, j'ai surement *où sont les toilettes ? Viiiite !* un peu, là il autorise une personne à écrire par exemple 65kg ou 624azdolqksj (même si c'est pas logique, il se débrouille bien en récupérant le premier nombre ^^)

Sinon, j'ai j'appel une fonction générale qui va ensuite appeler une fonction par fonction (check des erreurs en entrée utilisateur, puis x() sert à remplir x par l'intermédiaire de calcul() et y() pour remplir y en fonction du retour de x ^^

l'avantage ici est clairement que si l'utilisateur rentre de la *oups, j'ai marché dedans !*, ça n'affiche rien (ou on peut alert une erreur). ça marche offline, il n'y a pas de latence possible avec le réseau, pas de surcharge serveur, côté utilisateur ça reste léger (et surement plus léger qu'un rechargement de page ^^)....
par contre il est possible qu'un navigateur console n'aime pas trop (ainsi que ceux qui désactivent le JS par défaut ^^), c'est adaptable pour le faire compatible html4 (des balises à changer mais surtout plus de JS à coder ^^)...

berf voila un code :
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>Devoir IMC</title>
        <script type="text/javascript" charset="utf-8" async defer>
            function testResultat(data){
                var imc = data.x.value;
                var size = parseFloat(data.taille.value);
                var weight = parseInt(data.poids.value);
                error=errorCheck(data,size,weight);
                if(error!=''){
                    alert(error);
                }else{
                    x(imc,data,weight,size);
                    y(imc,data);
                }
            }
            function calcul(imc,data,weight,size){
                imc=data.x.value=weight/(size*size);
                return imc;
            }
            function errorCheck(data,size,weight){
                var error = '';
                if((typeof(size)!='number' || isNaN(size)) && data.poids.value!=''){
                    error = ' wrong size';
                }
                if((typeof(weight)!='number' || isNaN(weight)) && data.poids.value!=''){
                    error = error+' wrong weight';
                }
                return error;
            }
            function x(imc,data,weight,size){
                imc=calcul(imc,data,weight,size);
            }
            function y(imc,data){
                if(imc<16.5){
                    data.y.value='Vous êtes en dénutrition.';
                }else if(imc<18.5){
                    data.y.value='Vous êtes maigre.';
                }else if(imc<25){
                    data.y.value='Vous avez une corpulence normale.';
                }else if(imc<30){
                    data.y.value='Vous êtes en surpoids.';
                }else if(imc<35){
                    data.y.value='Vous êtes en état d\'obésité modérée.';
                }else if(imc<40){
                    data.y.value='Vous êtes en état d\'obésité sévère.';
                }else if(imc>=40){
                    data.y.value='Vous êtes en état d\'obésité massive.';
                }
            }
        </script>
    </head>
    <body>
        <h1>Système de détermination de l'IMC et de la corpulence</h1>
        <h2>Entrez les données suivantes :</h2>
        <form oninput="testResultat(this);">
            Entrez votre prénom : <input type="text" name="prenom"/> <br/>
            Entrez votre taille (sous la forme 1.70) : <input type="number" name="taille" value="1.50" min ="1" max="3" step="0.01"/> <br/>
            Entrez votre poids (en kilos) : <input type="number" name="poids" value="50"/> <br/>
            <output name="x" for="a b"></output>
            <output name="y" for="a b"></output>
        </form>
    </body>
</html>

Modifié par Dagda-Esus, 08 février 2012 - 02:35.

  • 0
configuration actuel : Macbook Pro 15" 2011 > sandy bridge@2,0gHz > 8go DDR3 > OWC extrem 6G 120go > OBHD : 500go@5400tr/min

#37
Patou

Patou

    Grand Geek

  • Membre
  • 823 messages
  • Localisation67
:+1: pour le C++ :-D

Cela dit, en programmation web (pas pour faire un serveur hein !), faut bien passer par du PHP, de l'ASP ou quelque chose de ce genre, parce que des pages web en C++ j'en ai jamais vu :chant:
  • 0

Desktop - i7-4790k / GTX 970 / 16Go / 2x256Go SSD + 2To HDD / 24" 1920x1080 Led

Laptop - Asus Transformer Book T300LA-C4004H

Anciens - Alienware M14X r2 / Alienware M11X r2 / Clevo M571RU-U

 

Alien FX géré par les capteurs de votre pc: AlienFx Plus


#38
Yo Eight

Yo Eight

    Admin du Code

  • Membre
  • 4 218 messages
  • Localisationdans les environs de Paris
Juste pour le fun :)

class Validation {
  private var $value;
  private var $error;
  private var $success;

  private function __construct($valueOrError, $success){
    if($success)
      $this->value = $valueOrError;
    else
      $this->error = $valueOrError;

    $this->success = $success;
  }

  public static function success($value) {
    return new Validation($value, TRUE);
  }

  public static function failure($error){
    return new Validation(error, FALSE);
  }

  public function map($f){
    return $this->bind(function($value){ return Validation::success($f($value)); });
  }

  public function bind($f){
    if($this->success)
     return $f($this->value);
   else
     $this;
  }

  public function fold($onSuccess, $onFailure){
    if($this->success)
      return $onSuccess($this->value);
    else 
     return $onFailure($this->error);
  }
}
Quelques fonctions utilitaires:

function isDefined($data){
    if($data)
      return Validation::success($data);
   else 
    return Validation::failure("not defined");
  }

  function isNotEmpty($data){
    return isDefined($data)->bind(function($value){
       if($value == '')
         return Validation::failure("is empty");
      else
        return validation::success($value); 
    });
  }

  function isNumber($data){
    return isNotEmpty($data)->bind(function($value){
       if(typeof($data)!='number' || isNaN($data))
         return Validation::failure("is not a number");
      else 
        return Validation::success($data);
    });
  }

  function liftA2($ma, $mb, $fab){
    return $ma.bind(function($a){
       return $mb.map(function($b){
          return $fab($a, $b);
       });
    });
  }
Avec les fonctions de calcul:

function calcul(size, weight){
    return weight/(size*size);
  }

   function result(imc){
                if(imc<16.5){
                    return 'Vous êtes en dénutrition.';
                }else if(imc<18.5){
                    return 'Vous êtes maigre.';
                }else if(imc<25){
                   return 'Vous avez une corpulence normale.';
                }else if(imc<30){
                    return 'Vous êtes en surpoids.';
                }else if(imc<35){
                    return 'Vous êtes en état d\'obésité modérée.';
                }else if(imc<40){
                    return 'Vous êtes en état d\'obésité sévère.';
                }else if(imc>=40){
                   return 'Vous êtes en état d\'obésité massive.';
                }
            }
Ce qui nous donne au final, un "one liner"

 var $size = parseFloat(data.taille.value);
 var $weight = parseInt(data.poids.value);

 liftA2(isNumber($size), isNumber($weight), calcul).fold(result, echo);
L'avantage, c'est que tout le processus de validation peut être utilisé ailleurs et est 100% composable. Après, ça peut paraître "overkill" mais c'est pour le fun :D


:+1: pour le C++ :-D

Cela dit, en programmation web (pas pour faire un serveur hein !), faut bien passer par du PHP, de l'ASP ou quelque chose de ce genre, parce que des pages web en C++ j'en ai jamais vu :chant:

Encore une fois, ce n'est pas la même chose !

Tu n'envois pas de PHP au client web. N'importe quel programme qui peut cracher du HTML est valide. Le PHP (ou l'ASP, JSP, ou ce que tu veux d'autre) est exécuté par le serveur pour produire du HTML. D'ailleurs avant que ces technos. arrivent il y avait pleins de générateurs CGI qui produisaient du HTML. C'était en majorité écrit en Perl ou en C/C++
  • 0
Mon blog: Deikonad - Functional Programming
iMac 27" : Core i7 860 @ 2,8 GHz - ATI 4850M - 8Go @ 1066MHz - 1To @ 7200trs/min
MacBook Pro 15" : Core i7 2635QM @ 2GHz - ATI 6490M - 8Go @ 1333MHz - 500Go @ 5400trs/min
MacBook Pro 13" : Core 2 Duo P8400 @ 2,26GHz - nVidia 9400M - 2Go @ 800MHz - 160Go @ 5400trs/min

#39
Dagda-Esus

Dagda-Esus

    Mac en force

  • Membre
  • 4 219 messages
yo eight, c'est ce que je dit, je suis un noob :P

et c'est sur que c'est overkill pour un calcul de l'imc... mais si on sais le faire pour un truc simple on pensera à l'utiliser pour des situations plus complexe :)

Cela dit je m'attendait à ce que tu me présente ça plus méchamment :P

Le C++ en web, biensur que c'est possible... ça reste une réponse réseau sur le port 80 qui sort un fichier texte...
après c'est sur que les allocations mémoire, les listener, le routage et tout... c'est lourd pour du web...

Php va offrir un language simple, java va offrir un language "compiler" (enfin pas vraiment mais un peu quand même xD) et qui va permettre de diviser le code en différants "bloc" qui pourront être réutiliser. Après je sais qu'il y a des gens qui préfèrent coder le web en python, ruby, perl... chacun son truc ;)

il y a un serveur web à base de pages compilé (en jit) en C++ il me semble... sauf qu'il doit s'executer en root niveau sécurité, c'est pas bon même si c'est surement très performant...

Après il y a aussi un serveur en javascript (nodejs), il offre de meilleurs performances qu'un apache (si on code bien ;)) mais tout comme javaEE, il offre une gestion un peu plus profonde du serveur.

Après chacun son truc :)
  • 0
configuration actuel : Macbook Pro 15" 2011 > sandy bridge@2,0gHz > 8go DDR3 > OWC extrem 6G 120go > OBHD : 500go@5400tr/min

#40
Patou

Patou

    Grand Geek

  • Membre
  • 823 messages
  • Localisation67

Juste pour le fun :)
Encore une fois, ce n'est pas la même chose !

Tu n'envois pas de PHP au client web. N'importe quel programme qui peut cracher du HTML est valide. Le PHP (ou l'ASP, JSP, ou ce que tu veux d'autre) est exécuté par le serveur pour produire du HTML. D'ailleurs avant que ces technos. arrivent il y avait pleins de générateurs CGI qui produisaient du HTML. C'était en majorité écrit en Perl ou en C/C++

Ne nous enervons pas... :slt:

On est bien d'accord, le php est executé coté serveur, je n'ai jamais prétendu le contraire, et c'est pour cela que j'ai précisé "pas pour faire un serveur hein !", or si tu créé un programme en C++ qui "crache" du html comme tu dis, c'est déjà un serveur... meme s'il est limité :D

La on parle d'un script PHP (du moins d'apres le titre de ce sujet), du coup le commentaire de "Passe a un vrai language d'homme" en parlant de C++ ne colle pas vraiment, parce que le but de l'exercice n'etait pas de créer un serveur, mais bien de calculer l'IMC en PHP* :P

Edit pour * : Pour lequel je trouves ton script et tes conseils très justes d'ailleurs

Modifié par Patou, 08 février 2012 - 15:15.

  • 0

Desktop - i7-4790k / GTX 970 / 16Go / 2x256Go SSD + 2To HDD / 24" 1920x1080 Led

Laptop - Asus Transformer Book T300LA-C4004H

Anciens - Alienware M14X r2 / Alienware M11X r2 / Clevo M571RU-U

 

Alien FX géré par les capteurs de votre pc: AlienFx Plus


#41
Yo Eight

Yo Eight

    Admin du Code

  • Membre
  • 4 218 messages
  • Localisationdans les environs de Paris

Cela dit je m'attendait à ce que tu me présente ça plus méchamment :P

Arf, il faut bien que ça reste compréhensible mais on peut aller encore plus loin. Après je ne suis pas sur que tout le monde puisse comprendre le code. Dans le sens où j'utilise des techniques de programmation fonctionnelle (ici les Applicative Functor et les Monad). On peut pousser le délire un peu plus loin, en utilisant la catégorie Kleisli (qui est la catégorie de l'ensemble des Monads) via les opérateurs d'un Arrow.

Seule hic, ces techniques sont parfaites (et encore) dans un langage statiquement typé. Dans un langage dynamiquement typé, c'est pas très "lisible" car on ne voit pas que Validation est une classe générique de rang 2 => Validation<E, A>
où E est le type de l'erreur (dans notre cas String) et A le type de notre valeur. Je malmène également la Stack, donc un grand nombre d'appel bind inclus (+ de 10000 env.) provoquerait un stackoverflow.

Autre chose que je n'ai pas fait, c'est l'accumulation des erreurs lors de l'utilisation de la méthode bind. Je les pas fait pour garder le code compréhensible mais c'est possible si le type E forme un semigroup (ensemble muni d'une valeur identité et d'un operateur (+) ou concaténation). Exemple de type formant un semigroup:

String => identité: "", (+): (.)
List/Array => identité: [], (+): (+)
Int => identité: 0, (+): (+)

@Patou

L'écrit rend mal, mais je n'étais pas agressif dans mes propos :)

Pour le reste, il faut bien commencer quelque part en programmation, donc mes conseils passe bien évidement après les instructions de son professeur.

Pour ce qui est de mon avis personnel, je pense qu'apprendre à programmer avec un langage dynamiquement typé est une erreur car tu prends beaucoup de mauvaises habitudes.
  • 0
Mon blog: Deikonad - Functional Programming
iMac 27" : Core i7 860 @ 2,8 GHz - ATI 4850M - 8Go @ 1066MHz - 1To @ 7200trs/min
MacBook Pro 15" : Core i7 2635QM @ 2GHz - ATI 6490M - 8Go @ 1333MHz - 500Go @ 5400trs/min
MacBook Pro 13" : Core 2 Duo P8400 @ 2,26GHz - nVidia 9400M - 2Go @ 800MHz - 160Go @ 5400trs/min

#42
Dagda-Esus

Dagda-Esus

    Mac en force

  • Membre
  • 4 219 messages
Yo eight, apprendre avec un language telque php est pas forcément une mauvaise chose... ça mais la main au code. Après on s'apperçoit que c'est limité et on cherche à voir comment passer ses difficulté ou simplement passer sur une application mobile... Attaquer avec un language tel que le C, ça motive pas, on se tape des hello world, des calculatrices, des erreurs de compilations...

Je fais parti de ceux qui ne veulent pas apprendre un vrai language mais qui y arrivent par des moyens détourner :P
  • 0
configuration actuel : Macbook Pro 15" 2011 > sandy bridge@2,0gHz > 8go DDR3 > OWC extrem 6G 120go > OBHD : 500go@5400tr/min

#43
Yo Eight

Yo Eight

    Admin du Code

  • Membre
  • 4 218 messages
  • Localisationdans les environs de Paris
Tout dépend de l'objectif alors. Si c'est pour apprendre à bidouiller, je suis d'accord avec toi. Le but n'étant pas de devenir "bon", pourquoi pas.

Dans le cas contraire, je considère le fait de développer dans un environnement visuel comme un luxe qui se mérite. Je ne compte pas les nuits (et je suis sûr que Arkh sera d'accord) à profiler mon code pour trouver une éventuelle fuite mémoire (c'était -2 sur la note pour chaque une trouvée quand j'étais à l'école), à comprendre pourquoi la virtual table ne se comportait pas comme je le pensais (C++), à comprendre le papier d'Oleg Kiselyov sur les Iteratee et le Lambda Calculus.

Programmer c'est compliquer !

Et je trouve que ces langages (à part Lisp, Objective-C et consort) cachent cette vérité.

Pour aller plus loin (mais tout le monde me suivra pas sur ça :D), un programmeur doit savoir coder et compiler sans IDE, (via Emacs ou VIM par exemple). On ne peut pas dire que c'est la majorité des devs PHP :vert: (oui je troll)
  • 0
Mon blog: Deikonad - Functional Programming
iMac 27" : Core i7 860 @ 2,8 GHz - ATI 4850M - 8Go @ 1066MHz - 1To @ 7200trs/min
MacBook Pro 15" : Core i7 2635QM @ 2GHz - ATI 6490M - 8Go @ 1333MHz - 500Go @ 5400trs/min
MacBook Pro 13" : Core 2 Duo P8400 @ 2,26GHz - nVidia 9400M - 2Go @ 800MHz - 160Go @ 5400trs/min

#44
Dagda-Esus

Dagda-Esus

    Mac en force

  • Membre
  • 4 219 messages
Yo eight, ça doit me venir du devweb, mais j'aime pas être dépendant de mon IDE, tout écrit à la main (d'ailleurs j'ai utiliser des framework, et j'en reviens au code fait totalement à la main ^^)

par contre oui on doit savoir utiliser un vim, mais pas forcément l'utiliser quotidiennement, un éditeur de code est un plus quand même avec des snipplet, de la coloration syntaxique(ok vim le fait) et l'utilisation de la souris permet de soufflé entre 2lignes de code ^^

Après j'ai l'envie mais pas la passion de la programmation... j'ai pas la patience, je resterai un codeur moyen mais polyvalent ^^

(là je suis à la recherche de la cause d'un bug entre nodejs, mon driver de BDD et ma BDD(mongodb), mon driver de bdd ne renvoit pas de résultat sur un find avec le champs "_id" alors que c'est le champs utiliser par mongodb pour l'indentifiant, sur les autres champs ça marche par contre :()
  • 0
configuration actuel : Macbook Pro 15" 2011 > sandy bridge@2,0gHz > 8go DDR3 > OWC extrem 6G 120go > OBHD : 500go@5400tr/min

#45
Arkh

Arkh

    Geek diplomé

  • Membre
  • 2 259 messages

Je ne compte pas les nuits (et je suis sûr que Arkh sera d'accord) à profiler mon code pour trouver une éventuelle fuite mémoire.

Euh, non non je vois pas... :eyes:

Moi c'était un peu différent : je ne compte plus les nuits (et les journées) passées à chercher la fuite mémoire qui fait cracher le programme ou, encore plus rigolo, la fuite mémoire qui ne se montre qu'en release... Enfin ça c'est vrai en C et beaucoup moins en C++ avec le RAII...

Programmer c'est compliquer!

Et encore un :+1:.
  • 0

D900F : I7 950 (8x3.1Ghz) /// 6GB DDR3 1333MHz (3x2Go) /// GTX 280M (128CC/1GHz/1Go) /// 2x320GB 7200Trs/min /// WUXGA Non-Glare Screen 1920x1200 /// Razer Abyssus /// NC-2000 /// By PcSystems-EvolutionX /// Powered by Debian!

> Get Process Explorer


#46
Patou

Patou

    Grand Geek

  • Membre
  • 823 messages
  • Localisation67
@ Yo Eight : C'est vrai que l'humeur est difficile a déceler :P

Oui il faut ecouter les consignes du prof (pour avoir une bonne note) mais ca ne veut pas dire que le prof a toujours raison... Quand je me souviens du jeune "prof" de C++ (en fait le pauvre Thésard qui nous a été collé comme prof de C++ à l'epoque) qui pretendait qu'il etait impossible de créer des tableaux dynamiques a deux dimensions en C++, et toutes les autres aberrations... D'ailleurs j'ai retrouve et relu son cours récemment et l'ai direct jeté... Combien de generations de codeurs ont ainsi été sacrifíés ? Bref je m'egares :chant:

Personnellement je suis assez d'accord, je penses qu'un language avec un minimum de rigueur exige du developpeur de faire attention et de bien comprendre son code (ce qui ne semble pas toujours etre le cas vu les erreurs qu'il m'a ete donne de voir). Mais ce n'est pas seulement le language qui importe, on peut faire n'importe quoi quel que soit le language de programmation de toute facon...

Un IDE ca facilite la vie quand même ! Surtout sur de très gros projets. Il n'y a que de petits projets web (en php) que je fais avec Notepad++ par exemple, quand il n'y a que quelques pages.

Mais comme cela a ete dit plus haut, chacun son truc :D
  • 0

Desktop - i7-4790k / GTX 970 / 16Go / 2x256Go SSD + 2To HDD / 24" 1920x1080 Led

Laptop - Asus Transformer Book T300LA-C4004H

Anciens - Alienware M14X r2 / Alienware M11X r2 / Clevo M571RU-U

 

Alien FX géré par les capteurs de votre pc: AlienFx Plus


#47
linnda880

linnda880

    En attente de Visa

  • Membre
  • 1 messages
Savoir son indice de masse corporelle
L'IMC est une méthode fiable pour les adultes de 18 à 70 ans, mais ne peut pas être appliquée sur certains catégories de personnes telle quelle les femmes enceintes ou qui allaitent, les athlètes haut niveau ou les personnes très musclées. Le résultat de ce calcule vous aidera à connaître votre besoin à prendre ou perdre des kilos. Elle prend en considération le poids, l’âge et la taille.

http://tinyurl.com/7vbwrcq
  • 0




0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)