Probleme structure fonction Javascript
math_lo
-
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je débute en Javascript (vraiment un petit débutant :p) et je suis le cours du Site du zerO. Bref, je dois maintenant réaliser un TP ou je demande une valeur à l'utilisateur comprise entre 0 et 999 et le site doit retourner la valeur sous forme de nombre...
J'ai reussi pour les nombres de 0 à 100. il faut maintenant juste ajouter les centaine devant et je voudrai créer une fonction pour pas tout recopier à chaque fois.
avant de creer la fonction, voila mon code :
------------------
------------------
------------------
function myFunction_unite(arg) { // Fonction pour les unités
switch (arg) {
case 1:
unite = "Un";
break;
case 2:
unite = "Deux";
break;
case 3:
unite = "Trois";
break;
case 4:
unite = "Quatre";
break;
case 5:
unite = "Cinq";
break;
case 6:
unite = "Six";
break;
case 7:
unite = "Sept";
break;
case 8:
unite = "Huit";
break;
case 9:
unite = "Neuf";
break;
case 0:
unite = "Zero";
break;
}
return(unite); // Fin de la Fonction unite
}
function myFunction_onze(arg) { // Fonction pour les chiffres de 11 à 19
switch (arg) {
case 1:
unite = "Onze";
break;
case 2:
unite = "Douze";
break;
case 3:
unite = "Treize";
break;
case 4:
unite = "Quatorze";
break;
case 5:
unite = "Quinze";
break;
case 6:
unite = "Seize";
break;
case 7:
unite = "Dix-Sept";
break;
case 8:
unite = "Dix-Huit";
break;
case 9:
unite = "Dix-Neuf";
break;
}
return(unite); // Fin de cette fonction
}
function myFunction_centaine(arg) { // Fonction pour les centaine uniquement ex: 100, 200...
switch (arg) {
case 1:
unite = "Cent";
break;
case 2:
unite = "Deux-Cents";
break;
case 3:
unite = "Trois-Cents";
break;
case 4:
unite = "Quatre-Cents";
break;
case 5:
unite = "Cinq-Cents";
break;
case 6:
unite = "Six-Cents";
break;
case 7:
unite = "Sept-Cents";
break;
case 8:
unite = "Huit-Cents";
break;
case 9:
unite = "Neuf-Cents";
break;
}
return(unite); // Fin de cette fonction
}
var final, unite, number, reste_100, reste_10, lenght, dizaine, centaine, chiffre_dizaine, chiffre_unite, chiffre_centaine;
var number = parseInt(prompt("Entrez votre nombre compris entre 0 et 999"), 10);
reste_100 = number % 100;
reste_10 = number % 10;
if (number === reste_100 && number === reste_10) {
lenght = 10 - 9;
} else if (number === reste_100 && number != reste_10) {
lenght = 10 - 8;
} else {
lenght = 10 - 7;
}
alert ("Votre nombre converti en lettres donne :"); // Demande le nombre et calcul de sa longueur
if (lenght === 1) { // Si nombre compris entre 0 et 9
alert(myFunction_u(number));
}
if (lenght === 2) { // si nombre compris entre 10 et 99
dizaine = number - reste_10;
chiffre_dizaine = dizaine / 10;
chiffre_unite = number - dizaine;
switch (chiffre_dizaine) {
case 1 :
alert(myFunction_onze(chiffre_unite));
break;
case 2:
if (chiffre_unite === 0) {
alert('Vingt');
} else if (chiffre_unite === 1) {
alert("Vingt-Et-Un");
} else {
alert("Vingt-" + myFunction_unite(chiffre_unite));
}
break;
case 3:
if (chiffre_unite === 0) {
alert('Trente');
} else if (chiffre_unite === 1) {
alert("Trente-Et-Un");
} else {
alert("Trente-" + myFunction_unite(chiffre_unite));
}
break;
case 4:
if (chiffre_unite === 0) {
alert('Quarante');
} else if (chiffre_unite === 1) {
alert("Quarante-Et-Un");
} else {
alert("Quarante-" + myFunction_unite(chiffre_unite));
}
break;
case 5:
if (chiffre_unite === 0) {
alert('Cinquante');
} else if (chiffre_unite === 1) {
alert("Cinquante-Et-Un");
} else {
alert("Cinquante-" + myFunction_unite(chiffre_unite));
}
break;
case 6:
if (chiffre_unite === 0) {
alert('Soixante');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Un");
} else {
alert("Soixante-" + myFunction_unite(chiffre_unite));
}
break;
case 7:
if (chiffre_unite === 0) {
alert('Soixante-Dix');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Onze");
} else {
alert("Soixante-" + myFunction_onze(chiffre_unite));
}
break;
case 8:
if (chiffre_unite === 0) {
alert('Soixante-Dix');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Onze");
} else {
alert("Soixante-" + myFunction_onze(chiffre_unite));
}
break;
case 9:
if (chiffre_unite === 0) {
alert('Quatre-Vingts');
} else {
alert("Quatre-Vingt-" + myFunction_onze(chiffre_unite));
}
break;
}
}
if (lenght === 3) { // pour tout les nombre avec des centaines
centaine = number - (reste_100);
chiffre_centaine = centaine / 100;
dizaine = number - (reste_10 + centaine);
chiffre_dizaine = dizaine / 10;
chiffre_unite = number - (centaine + dizaine);
if (chiffre_unite === 0 || chiffre_dizaine === 0) { // juste des centaines entieres 100, 200
alert(myFunction_centaine(chiffre_centaine));
}
else if(chiffre_unite !== 0 || chiffre_dizaine === 0) {
alert(myFunction_centaine(chiffre_centaine) + myFunction_onze(chiffre_unite)); // nombre de type 202, 505, 503....
} else { // la je voudrai mettre les nombres manquants exemple 333
}
}
---------------------
---------------------
---------------------
Comment creer la fonction qui me manque?!!
merci d'avance
Je débute en Javascript (vraiment un petit débutant :p) et je suis le cours du Site du zerO. Bref, je dois maintenant réaliser un TP ou je demande une valeur à l'utilisateur comprise entre 0 et 999 et le site doit retourner la valeur sous forme de nombre...
J'ai reussi pour les nombres de 0 à 100. il faut maintenant juste ajouter les centaine devant et je voudrai créer une fonction pour pas tout recopier à chaque fois.
avant de creer la fonction, voila mon code :
------------------
------------------
------------------
function myFunction_unite(arg) { // Fonction pour les unités
switch (arg) {
case 1:
unite = "Un";
break;
case 2:
unite = "Deux";
break;
case 3:
unite = "Trois";
break;
case 4:
unite = "Quatre";
break;
case 5:
unite = "Cinq";
break;
case 6:
unite = "Six";
break;
case 7:
unite = "Sept";
break;
case 8:
unite = "Huit";
break;
case 9:
unite = "Neuf";
break;
case 0:
unite = "Zero";
break;
}
return(unite); // Fin de la Fonction unite
}
function myFunction_onze(arg) { // Fonction pour les chiffres de 11 à 19
switch (arg) {
case 1:
unite = "Onze";
break;
case 2:
unite = "Douze";
break;
case 3:
unite = "Treize";
break;
case 4:
unite = "Quatorze";
break;
case 5:
unite = "Quinze";
break;
case 6:
unite = "Seize";
break;
case 7:
unite = "Dix-Sept";
break;
case 8:
unite = "Dix-Huit";
break;
case 9:
unite = "Dix-Neuf";
break;
}
return(unite); // Fin de cette fonction
}
function myFunction_centaine(arg) { // Fonction pour les centaine uniquement ex: 100, 200...
switch (arg) {
case 1:
unite = "Cent";
break;
case 2:
unite = "Deux-Cents";
break;
case 3:
unite = "Trois-Cents";
break;
case 4:
unite = "Quatre-Cents";
break;
case 5:
unite = "Cinq-Cents";
break;
case 6:
unite = "Six-Cents";
break;
case 7:
unite = "Sept-Cents";
break;
case 8:
unite = "Huit-Cents";
break;
case 9:
unite = "Neuf-Cents";
break;
}
return(unite); // Fin de cette fonction
}
var final, unite, number, reste_100, reste_10, lenght, dizaine, centaine, chiffre_dizaine, chiffre_unite, chiffre_centaine;
var number = parseInt(prompt("Entrez votre nombre compris entre 0 et 999"), 10);
reste_100 = number % 100;
reste_10 = number % 10;
if (number === reste_100 && number === reste_10) {
lenght = 10 - 9;
} else if (number === reste_100 && number != reste_10) {
lenght = 10 - 8;
} else {
lenght = 10 - 7;
}
alert ("Votre nombre converti en lettres donne :"); // Demande le nombre et calcul de sa longueur
if (lenght === 1) { // Si nombre compris entre 0 et 9
alert(myFunction_u(number));
}
if (lenght === 2) { // si nombre compris entre 10 et 99
dizaine = number - reste_10;
chiffre_dizaine = dizaine / 10;
chiffre_unite = number - dizaine;
switch (chiffre_dizaine) {
case 1 :
alert(myFunction_onze(chiffre_unite));
break;
case 2:
if (chiffre_unite === 0) {
alert('Vingt');
} else if (chiffre_unite === 1) {
alert("Vingt-Et-Un");
} else {
alert("Vingt-" + myFunction_unite(chiffre_unite));
}
break;
case 3:
if (chiffre_unite === 0) {
alert('Trente');
} else if (chiffre_unite === 1) {
alert("Trente-Et-Un");
} else {
alert("Trente-" + myFunction_unite(chiffre_unite));
}
break;
case 4:
if (chiffre_unite === 0) {
alert('Quarante');
} else if (chiffre_unite === 1) {
alert("Quarante-Et-Un");
} else {
alert("Quarante-" + myFunction_unite(chiffre_unite));
}
break;
case 5:
if (chiffre_unite === 0) {
alert('Cinquante');
} else if (chiffre_unite === 1) {
alert("Cinquante-Et-Un");
} else {
alert("Cinquante-" + myFunction_unite(chiffre_unite));
}
break;
case 6:
if (chiffre_unite === 0) {
alert('Soixante');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Un");
} else {
alert("Soixante-" + myFunction_unite(chiffre_unite));
}
break;
case 7:
if (chiffre_unite === 0) {
alert('Soixante-Dix');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Onze");
} else {
alert("Soixante-" + myFunction_onze(chiffre_unite));
}
break;
case 8:
if (chiffre_unite === 0) {
alert('Soixante-Dix');
} else if (chiffre_unite === 1) {
alert("Soixante-Et-Onze");
} else {
alert("Soixante-" + myFunction_onze(chiffre_unite));
}
break;
case 9:
if (chiffre_unite === 0) {
alert('Quatre-Vingts');
} else {
alert("Quatre-Vingt-" + myFunction_onze(chiffre_unite));
}
break;
}
}
if (lenght === 3) { // pour tout les nombre avec des centaines
centaine = number - (reste_100);
chiffre_centaine = centaine / 100;
dizaine = number - (reste_10 + centaine);
chiffre_dizaine = dizaine / 10;
chiffre_unite = number - (centaine + dizaine);
if (chiffre_unite === 0 || chiffre_dizaine === 0) { // juste des centaines entieres 100, 200
alert(myFunction_centaine(chiffre_centaine));
}
else if(chiffre_unite !== 0 || chiffre_dizaine === 0) {
alert(myFunction_centaine(chiffre_centaine) + myFunction_onze(chiffre_unite)); // nombre de type 202, 505, 503....
} else { // la je voudrai mettre les nombres manquants exemple 333
}
}
---------------------
---------------------
---------------------
Comment creer la fonction qui me manque?!!
merci d'avance
A voir également:
- Probleme structure fonction Javascript
- Fonction si et - Guide
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Telecharger javascript - Télécharger - Langages
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
1 réponse
Salut ...
A revoir ...
function int_to_string(arg) { // Fonction pour les unités switch (arg) { case 1: unite = "Un"; break; case 2: unite = "Deux"; break; case 3: unite = "Trois"; break; case 4: unite = "Quatre"; break; case 5: unite = "Cinq"; break; case 6: unite = "Six"; break; case 7: unite = "Sept"; break; case 8: unite = "Huit"; break; case 9: unite = "Neuf"; break; case 0: unite = "Zero"; break; case 11: unite = "Onze"; break; case 12: unite = "Douze"; break; case 13: unite = "Treize"; break; case 14: unite = "Quatorze"; break; case 15: unite = "Quinze"; break; case 16: unite = "Seize"; break; case 17: unite = "Dix-Sept"; break; case 18: unite = "Dix-Huit"; break; case 19: unite = "Dix-Neuf"; break; case 20: unite = "Vingt"; break; case 30: unite = "Trente"; break; case 40: unite = "Quarente"; break; case 50: unite = "Cinquante"; break; case 60: unite = "Soixante"; break; case 80: unite = "Quatre-vingt"; break; case 100: unite = "Cent"; break; default: return false; } return(unite); } //-------------------------------------------------------------- function int2_to_string(col10, col1) { var first, second; if(col10 == '0') return int_to_string(parseInt(col1,10)); else if(col10 == '7') { first = int_to_string(parseInt(60,10)); second = int_to_string(parseInt(1+col1,10)); if(col1 == '1') return first+' et '+second; return first+'-'+second; } else if(col10 == '9') { first = int_to_string(parseInt(80,10)); second = int_to_string(parseInt(1+col1,10)); if(col1 == '1') return first+' et '+second; return first+'-'+second; } else { first = int_to_string(parseInt(col10+0,10)); second = int_to_string(parseInt(col1,10)); if(col1 == '1') return first+' et '+second; return first+'-'+second; } } //-------------------------------------------------------------- function convertNumber(number) { var col1, col10, col100; number = parseInt(number,10); //----------------------------------------- var word = int_to_string(number); if(word) return word; //----------------------------------------- var numberL = number+''; if(numberL.length == 2) { col10 = numberL[0]; // 90 col1 = numberL[1]; // 8 return int2_to_string(col10, col1); } else if(numberL.length == 3) { //986 col100 = numberL[0]; // 900 col10 = numberL[1]; // 80 col1 = numberL[2]; // 6 if(col100 == '1') { return 'Cent '+int2_to_string(col10, col1); } else { return int_to_string(parseInt(col100,10))+' Cents '+int2_to_string(col10, col1); } } else alert(numberL.length); } //-------------------------------------------------------------- alert(convertNumber(prompt('Entrez un nombre : ')));
A revoir ...