Составители:
Рубрика:
Обычно ввод данных заканчивается после нажатия на клавишу Enter (коды 13
и 10), кроме того, число не может содержать пробельный символ (код 32).
private static int getIntValue() {
int val = 0, // введенное значение
len = 0; // реальное количество введенных символов
byte b[]=new byte[9]; // массив для хранения кодов введенных символов
int by=0; // вспомогат. переменная для ввода кода очередного символа
int sign = 1; // знак числа
try {
System.in.skip(System.in.available());
while(true) // число может содержать несколько символов
{
by = System.in.read(); //
код очередного символа
// первым символом (len == 0) может быть '-'
if( len == 0 && (char)by == '-' ) { sign = -1; continue; }
// символ, завершающий ввод числа:
// Enter, пробел или не цифра
if( by == 13 || by == 32 || by<48 || by>57 ) break;
b[len++]=(byte)(by - 48); // превращаем код символа в число
if(len>8) break;//слишком много символов в буфере клавиатуры
}
}
catch( java.io.IOException e) {}
if( len <1 ) return -1; // сразу нажата Enter или клавиша - не цифра
int ten=1; // для преобразования последовательности цифр в число
// 10 в степени, соответствующей позиции цифры в
числе
for(int i=len-1; i>=0; i--) // от последней цифры - к первой
Обычно ввод данных заканчивается после нажатия на клавишу Enter (коды 13 и 10), кроме того, число не может содержать пробельный символ (код 32). private static int getIntValue() { int val = 0, // введенное значение len = 0; // реальное количество введенных символов byte b[]=new byte[9]; // массив для хранения кодов введенных символов int by=0; // вспомогат. переменная для ввода кода очередного символа int sign = 1; // знак числа try { System.in.skip(System.in.available()); while(true) // число может содержать несколько символов { by = System.in.read(); // код очередного символа // первым символом (len == 0) может быть '-' if( len == 0 && (char)by == '-' ) { sign = -1; continue; } // символ, завершающий ввод числа: // Enter, пробел или не цифра if( by == 13 || by == 32 || by<48 || by>57 ) break; b[len++]=(byte)(by - 48); // превращаем код символа в число if(len>8) break;//слишком много символов в буфере клавиатуры } } catch( java.io.IOException e) {} if( len <1 ) return -1; // сразу нажата Enter или клавиша - не цифра int ten=1; // для преобразования последовательности цифр в число // 10 в степени, соответствующей позиции цифры в числе for(int i=len-1; i>=0; i--) // от последней цифры - к первой
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »