Вопрос задан 16.07.2023 в 06:12. Предмет Информатика. Спрашивает Ионин Никита.

Напечатать в возрастающем порядке все цифры, не входящие в запись данного натурального числа

Помогите решить в Паскале (только на более понятном решении) Без всяких Println,h.remove,abs(readinteger),HSet(range) moo
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Смирнов Евгений.

type z=array of integer;

var n,i: integer;

a: z;

f: boolean;

begin

readln(n);

i:=0;

f:=true;

setlength(a,i+1);

while n<>0 do begin

a[i]:=n mod 10;

i:=i+1;

setlength(a,i+1);

n:=n div 10;

end;

setlength(a,i);

for i:=0 to 9 do begin

for n:=0 to length(a)-1 do

if a[n]=i then begin  

f:=false;

break;

end;

if f then write(i,' ');

f:=true;

end;

end.

0 0
Отвечает Осадченко Таня.

var

 i, n: integer;

 m: array[0..9] of boolean;

 

begin

 for i := 0 to 9 do

   m[i] := False;

 read(n);

 while n > 0 do

 begin

   m[n mod 10] := True;

   n := n div 10

 end;

 for i := 0 to 9 do

   if not m[i] then

     Write(i, ' ')

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам с решением данной задачи на языке Pascal. Для того чтобы напечатать все цифры, не входящие в запись данного натурального числа, можно воспользоваться массивом для отслеживания использованных цифр.

Вот простое решение на Pascal без использования неразборчивых функций, которое не требует Println, h.remove, abs, readinteger, hset, moo:

pascal
program MissingDigits; const MAX_DIGITS = 10; // Предполагаем, что у нас не больше 10 цифр var number, tempNumber: LongInt; usedDigits: array[0..MAX_DIGITS - 1] of Boolean; i, digit: Integer; hasDigits: Boolean; begin // Инициализируем массив использованных цифр for i := 0 to MAX_DIGITS - 1 do usedDigits[i] := False; // Считываем натуральное число Write('Введите натуральное число: '); ReadLn(number); // Обрабатываем особый случай, когда число равно 0 if number = 0 then begin WriteLn('0'); Exit; end; // Обрабатываем число, пока оно не станет равным 0 tempNumber := number; while tempNumber > 0 do begin digit := tempNumber mod 10; usedDigits[digit] := True; tempNumber := tempNumber div 10; end; // Печатаем неиспользованные цифры hasDigits := False; Write('Неиспользованные цифры: '); for i := 0 to 9 do begin if not usedDigits[i] then begin Write(i, ' '); hasDigits := True; end; end; // Если неиспользованных цифр нет, выводим сообщение if not hasDigits then WriteLn('Отсутствуют'); end.

Вышеуказанная программа считывает натуральное число, затем ищет неиспользованные цифры и выводит их в возрастающем порядке. Если неиспользованных цифр нет, программа сообщит об этом.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос