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 :

Convertir un nombre en toutes lettres


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut Convertir un nombre en toutes lettres
    Bonjour à tous, je développes un code permettant de convertir un nombre en toutes lettres (pour le moment entre 1 et 9).
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <script>
    function Convertion(nombre) {
    	var chiffre1;
    	var chiffre2;
    	var chiffre3;
    	var mot;
    	if (nombre.length == 1) {
    		chiffre1 = nombre;
    		var chiffre1lettre = conversionLettre1a10(chiffre1);
    		nombre = chiffre1lettre;
    		return nombre;
    	}
    }
     
    function conversionLettre1a10(chiffre) {
    	var lettre;
    	switch (chiffre) {
    		case 1:
    			lettre = "un";
    			break;
    		case 2:
    			lettre = "deux";
    			break;
    		case 3:
    			lettre = "trois";
    			break;
    		case 4:
    			lettre = "quatre";
    			break;
    		case 5:
    			lettre = "cinq";
    			break;
    		case 6:
    			lettre = "six";
    			break;
    		case 7:
    			lettre = "sept";
    			break;
    		case 8:
    			lettre = "huit";
    			break;
    		case 9:
    			lettre = "neuf";
    			break;
     
    		return lettre;
    	}
    }
    var proceed = true;
    var chiffredemande;
    var nombre;
    while(proceed) {
    	chiffredemande = parseInt(prompt("Entrez le nombre à convertir"));
    	nombre = Convertion(chiffredemande);
    	alert(nombre);
    	proceed = confirm("Vous vous resaisir un autre nombre?");
    }
    </script>
    Mais la fenêtre alert renvoie undefined.
    Quelqu'un aurait une explication?
    Merci d'avance.

  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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    il y a une fonction rechercher sur le forum ...

    http://www.developpez.net/forums/d40...outes-lettres/
    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 du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Merci.
    Mais j'aimerez faire ce script à ma façon pour m’entraîner (je suis un débutant).

  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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Le premier undefined provient de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (nombre.length == 1) {
    =>

    une integer n'a pas de length => toString ...
    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 du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Ah oui d'accord, merci beaucoup. Par contre il continue de m'afficher undefined:
    J'ai un peu modifié le code (c'est maintenant de 1 à 19):
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    <script>
    function Convertion(nombre) {
    	var chiffre1;
    	var chiffre2;
    	var chiffre3;
    	var mot;
    	if (nombre >= 0 && nombre < 20) {
    		nombre = convertionLettre1a20(nombre);
    		return nombre;
    	}
    }
     
    function convertionLettre1a20(chiffre) {
    	var lettre;
    	switch (chiffre) {
    		case 0:
    			lettre="zéro";
    			break;
    		case 1:
    			lettre = "un";
    			break;
    		case 2:
    			lettre = "deux";
    			break;
    		case 3:
    			lettre = "trois";
    			break;
    		case 4:
    			lettre = "quatre";
    			break;
    		case 5:
    			lettre = "cinq";
    			break;
    		case 6:
    			lettre = "six";
    			break;
    		case 7:
    			lettre = "sept";
    			break;
    		case 8:
    			lettre = "huit";
    			break;
    		case 9:
    			lettre = "neuf";
    			break;
    		case 10:
    			lettre="dix";
    			break;
    		case 11:
    			lettre="onze";
    			break;
    		case 12:
    			lettre="douze";
    			break;
    		case 13:
    			lettre="treize";
    			break;
    		case 14:
    			lettre="quatorze";
    			break;
    		case 15:
    			lettre="quinze";
    			break;
    		case 16:
    			lettre="seize";
    			break;
    		case 17:
    			lettre="dix-sept";
    			break;
    		case 18:
    			lettre="dix-huit";
    			break;
    		case 19:
    			lettre="dix-neuf";
    			break;
     
    		return lettre;
    	}
    }
    var proceed = true;
    var chiffredemande;
    var nombre;
    while(proceed) {
    	chiffredemande = parseInt(prompt("Entrez le nombre à convertir"));
    	nombre = Convertion(chiffredemande);
    	alert(nombre);
    	proceed = confirm("Vous vous resaisir un autre nombre?");
    }
    </script>
    Merci d'avance.

  6. #6
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    ta fonction convertionLettre1a20() ne retourne rien, tu as mal balancé l'accolade fermante de ton switch ::
    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 !

  7. #7
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Merci.

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Tu participes à un concours de variables inutiles ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function Convertion(nombre) {
    	var chiffre1;
    	var chiffre2;
    	var chiffre3;
    	var mot;
    	if (nombre >= 0 && nombre < 20) {
    		nombre = convertionLettre1a20(nombre);
    		return nombre;
    	}
    }
    peut avantageusement se réduire à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function Convertion(nombre) {
    	if (nombre >= 0 && nombre < 20) {
    		return convertionLettre1a20(nombre);
    	}
    }
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

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

Discussions similaires

  1. Convertir un "nombre en toute lettre" en nombre
    Par Schnuffel dans le forum Langage
    Réponses: 0
    Dernier message: 15/06/2010, 11h09
  2. [Mail] Convertir une somme en toute lettres
    Par mijean dans le forum Langage
    Réponses: 2
    Dernier message: 29/05/2007, 11h37
  3. Réponses: 9
    Dernier message: 07/11/2006, 14h12
  4. convertir un nombre(19) en lettre (dix neuf)
    Par guigui5931 dans le forum Access
    Réponses: 1
    Dernier message: 10/07/2006, 14h09
  5. [sql]convertion d'un nombre en toute lettre
    Par imedg dans le forum Oracle
    Réponses: 102
    Dernier message: 31/03/2006, 11h05

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