Какие различные цифры входят в целое число.
n – анализируемое число;
digits – массив различных цифр, из которых состоит число n;
q_digits – количество цифр в массиве;
digit – извлеченная из числа цифра;
flag – проверка наличия цифры в массиве (если цифра в массиве уже есть, то она не будет в него добавлена.
n mod 10) предполагаем, что ее еще нет в массиве (flag:= false).n div 10).var n: longint; digits: array[1..10] of byte; q_digits: byte; digit: byte; i: byte; flag: boolean; begin write('Input number: '); readln(n); if n then n:= abs(n); q_digits:= 0; repeat digit:= n mod 10; flag:= false; for i:=1 to q_digits do if digit = digits[i] then begin flag:= true; break end; if flag = false then begin q_digits:= q_digits + 1; digits[q_digits]:= digit; end; n:= n div 10 until n = 0; for i:=q_digits downto 1 do write(digits[i]:3); readln end.
Комментарии
вывод(Writeln)
а как потом вывести все это не в виде обычных чисел в строчку, а с подписью и в столбик?
Не выполнено условие задачи.
То ли ночь на дворе и я чего-то не понял, или здесь не совсем правильно решена задача по условию. Надо вывести ТОЛЬКО РАЗЛИЧНЫЕ цифры. Те, что повторяются выводить не надо. Я для этого отсортировал массив и сравнивал каждый элемент массива со следующим, если они не равны, то вывести на экран.
вот мое решение:
Мне кажется, что команда
Мне кажется, что команда break лишняя
Нет. проверила и все
Нет. проверила и все правильно. Ничего лишнего)*