функция число прописью
Здравствуйте!
function numPropis(i, num) { alert(i + " " + num); var q = ''; var i = parseInt(num / 10); num = num - 10 * i; document.write('Пользователь ввёл: ' + str + " - " + q + ' '); |
Anna77,
где i потерялось? |
Anna77,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
|
Цитата:
function numPropis(i, num) var q = numPropis(num); Почему после проверки на соответствие условиям ввода код дальше все равно не останавливается? Что вы здесь хотели сделать? var i = parseInt(num / 10); Слово "неверное" - это скорее про супругов или про представителя другой религии Вот, чуть-чуть переделал:
var str = +prompt("Введите число от 10 до 99");
if ((isNaN(str)) || (str < 10) || (str > 99) || (parseInt(str) != str)) {
alert("Введено неправильное число!");
} else {
var q = numPropis(str);
alert('Пользователь ввёл: ' + str + " - " + q + ' ');
}
function numPropis(num) {
var arr = ['один', 'два', 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять', 'десять', 'одиннадцать', 'двенадцать', 'тринадцать', 'четырнадцать', 'пятнадцать', 'шестнадцать', 'семнадцать', 'восемнадцать', 'девятнадцать']
var arr2 = ['двадцать', 'тридцать', 'сорок', 'пятьдесят', 'шестьдесят', 'семьдесят', 'восемьдесят', 'девяносто'];
if (num < 20) return arr[num - 1];
var res = arr2[Math.floor(num / 10) - 2];
if (num % 10 != 0) res += ' ' + arr[num % 10 - 1];
return res;
}
|
BETEPAH,
Для num = 20,30,...,90 чему равно arr[num % 10 - 1] ?!) Или так
var str = +prompt("Введите число от 10 до 99");
if ((isNaN(str)) || (str < 10) || (str > 99) || (parseInt(str) != str))
{ alert("Введено неправильное число!"); }
else
{ var q = ChisloPropis(str);
alert('Пользователь ввёл: ' + str + " - " + q + ' ');
}
function ChisloPropis(n)
{
var b = n%10, a = (n-b)/10, // n = 10*a+b
A1 = ['один', 'два', 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять'],
A2 = ['одиннадцать', 'двенадцать', 'тринадцать', 'четырнадцать', 'пятнадцать',
'шестнадцать', 'семнадцать', 'восемнадцать', 'девятнадцать'],
A3 = ['десять', 'двадцать', 'тридцать', 'сорок', 'пятьдесят',
'шестьдесят', 'семьдесят', 'восемьдесят', 'девяносто'];
if (n > 10 && n < 20) return A2[n-11];
if (b == 0) return A3[a-1];
return A3[a-1]+' '+A1[b-1];
}
|
Demath,
поправил код, не доглядел :cray: |
Мальчики, спасибо!thanks:
|
| Часовой пояс GMT +3, время: 21:47. |