C клавиатуры вводится число. Вывести все системы счисления, в которых данное число не существует.
Как такое решать?
C клавиатуры вводится число. Вывести все системы счисления, в которых данное число не существует.
Как такое решать?
using System.Linq;
Console.WriteLine(String.Join(", ", Enumerable.Range(1, Console.ReadLine().ToUpper().Max(ch => "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".IndexOf(ch))).Skip(1)));
783
2, 3, 4, 5, 6, 7, 8
Надо именно чтобы было число в типе данных integer.
Console.WriteLine
(
x == 0
? "Запись нуля в единичной системе счисления в виде пустой строки сомнительна")
: "Число {0} можно представить в любой системе счисления с положительным основанием",
x
);
Как-то так в итоге получается:
var
number: integer;
digit, max, i: integer;
begin
max := 1;
write('Введите число: ');
readln(number);
number := abs(number);
while number <> 0 do
begin
digit := number mod 10;
if digit > max then
max := digit;
number := number div 10;
end;
writeln('Недопустимые системы счисления:');
if max < 2 then
writeln('Отсутствуют.');
for i := 2 to max do
write(i, ' ');
end.
123не годится в качестве двоичного числа? Хотя может быть десятичным. – Stanislav Volodarskiy Oct 08 '22 at 07:505Gхотя для интернета годится)), пример на десятеричной9< 10, пример для двоичной1< 2 – Daniil Loban Oct 11 '22 at 14:39