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

JavaScript Discussion :

switch pour calculette


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut switch pour calculette
    Bonjour,

    Voila, on doit faire en cour un tp : une calculette en javascript.

    Pour le moment, tout va bien, mais je suis à la phase débugage (au cas ou l'utilisateur entre ex-pré des mauvaise valeurs).

    Bref la je fais la division par zéro qui évidament n'existe pas, et je ferais le reste sur le même principe.
    Je fais en fait une fonction total qui va calculé ce que l'utilisateur a entré. Dans cette fonction il y a un switch qui va donc servir à faire ce débugage en fonction de ce que l'utilisateur a entré.

    voila mon code (enfin juste la fonction total). C'est le switch qui "bug" (oui entre guillemet car je n'est aucune erreur).

    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
     
    function total(r){
    		switch(r){
    			case r.search("/0"):{
    			document.getElementById('calcul').value='Division par zéro impossible !';
    			break;
    			}
    			default:{
    			 if(n1 != ''){
    				document.getElementById('calcul').value=Math.pow(n1, r);
    				n1='';
    			 }
    			 else{
    				document.getElementById('calcul').value=eval(r);
    			 }// fin du else 
    			} // fin du défault
    		}
    }
    En faite j'utilise la fonction search pour cherche si dans l'input de saisit il ya a "/0" (division par zéro). Mais évidement ça ne marche pas

    J'ai essayé tout ça déjà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    case r.search("/0"):{}
    case r.search("/0")!=-1:{}
    case r.search("/0")<0:{}
    case r.search("/0")>0:{}
    case r.search("/0")!=0:{}
    quelqu'un peut-il m'aider svp ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    ex-pré
    c'est un fitur parking ?
    exprès ...

    bref tu dois faire un switch (true)
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut
    Oui c'est les correction google chromium et g pas fais gaffe autan pour moi...

    Sinon un switch "true" c-a-d ?

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function total(r){
    		switch(r){
    			case r.search("/0"):{
    que va te retourner r.search("/0") ??? true ou false

    ce n'est donc pas sur r qu'il faut swicther !!! mais sur true

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function total(r){
    		switch(true){
    			case r.search("/0"):{
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Salut,

    Oui c'est les correction google chromium et g pas fais gaffe autan pour moi...
    Comme quoi google chromium a des gros progrès à faire

    Sinon, as tu lu la définition de la fonction search ?
    The search() method searches for a match between a regular expression and a string. This method returns the position of the match, or -1 if no match is found.
    Donc tu comprends que ton switch a du plomb dans l'aile car quand tu écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    switch(r){
    	case r.search("/0"):{
    ...
    alors tu compare r qui est ton expression avec la position du /0.

    Ensuite pour t'éviter un écueil supplémentaire, que penses tu du cas "3/0.5" ?

    ERE

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut
    Citation Envoyé par emmanuel.remy Voir le message
    alors tu compare r qui est ton expression avec la position du /0.

    Ensuite pour t'éviter un écueil supplémentaire, que penses tu du cas "3/0.5" ?

    ERE
    A merde... Comment on "recherche" un ou plusieurs caractères alors ? et oui c'est vrai pour le 0.5, mais puis-je rechercher "/0_et_rien_d_autre_apres" ?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut
    Mais ce que tu me dis n'est pas possible ! je ne peut switcher sur true, car je n'aurais pas que ce test, j'aurais dans ce même switch environ un cinquantaine de test donc voila quoi :s

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Adaptateur sur switch pour fibre optique?
    Par flyingman dans le forum Périphériques
    Réponses: 2
    Dernier message: 30/07/2012, 16h14
  2. Réponses: 3
    Dernier message: 17/12/2011, 09h20
  3. Cherche switch pour baie de brassage
    Par gramlinz60 dans le forum Achat et Conseils
    Réponses: 3
    Dernier message: 27/01/2011, 20h48
  4. erreur switch pour ouvrir des fenêtres childform
    Par zabdaniel dans le forum C#
    Réponses: 4
    Dernier message: 03/03/2009, 11h37
  5. Réponses: 9
    Dernier message: 19/05/2005, 21h29

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