Автор Hayk Mkrtchyan задал вопрос в разделе Java
как разбить четырехзначное число на цифры java и получил лучший ответ
Ответ от
Допустим есть число int a, его надо разбить на цифры.
1 способ, если вы точно знаете, что число 4-значное:
int x4 = a/1000;
int x3 = a%1000/100;
int x2 = a%100/10;
int x1 = a%10;
Соответственно x1 - это первый разряд, единицы. И т. д.
Надеюсь, вы уже заметили закономерность, благодаря которой мы сделаем следующий способ.
2 способ, то же самое, но в цикле и для любого количества разрядов:
int i;
while (a != 0) {
i = a % 10;
a /= 10;
}
При каждой итерации i будет принимать значение следующего разряда, начиная с единиц. Можно в цикле заносить i в коллекцию, а можно заранее посчитать, сколько цифр в числе a и заносить цифры в массив, длиной ровно столько, сколько цифр в числе a.
3 способ:
И наконец последний, самый техничный способ. Но может и не самый эффективный:
String.valueOf(a).toCharArray();
Одна строчка! Метод вернёт массив char[] в каждой ячейке которого будут цифры числа a в виде символов (char), начиная с самого большого разряда, заканчивая единицами.
поделить на тысячу?
n = 1234
x1 = n%10
n = n/10
x2 = n%10
n = n/10
x3 = n%10
x4 = n/10
Есть способ разбить число с любым кол-вом разрядов.
Нужен цикл:
x = 12345;
while (x != 0){
y = x % 10;
x /= 10;
}
Здесь каждую итерацию цикла переменная "y" будет принимать значение единиц, десятков, сотен и т. д.
16-ти ричная система исчисления
Шестнадцатеричная система счисления (шестнадцатеричные числа) — позиционная система счисления по
подробнее...
Что такое компьютерный язык?
Тебе просто нужно изучить шестнадцатеричную и бинарную системы счисления
Там где что-то вроде
подробнее...
Pascal!? Как разбить любое число на отдельные цифры?
i := 0;
while n > 0 do begin
i := i + 1;
masNum[ i ] := n mod 10;
n := n div
подробнее...