Дано четырехзначное число N, выяснить: верно ли, что все 4 цифры этого числа различны

0 голосов

Дано четырехзначное число N, выяснить: верно ли, что все 4 цифры этого числа различны


спросил от (31 баллов) в категории Информатика
1 Ответ
0 голосов
ответил от Архангел (142k баллов)
 
Лучший ответ

//PascalABC.Net 3.0, сборка 1064
var
  n:integer;
  i,d:byte;
  b:array[0..9] of boolean;
  fail:boolean;
begin
  Write('Введите четырехзначное натуральное число: ');
  Read(n);
  for i:=0 to 9 do b[i]:=False;
  while (n>0) and (not fail) do begin
    d:=n mod 10;
    if b[d] then fail:=True else b[d]:=True;
    n:=n div 10
  end;
  if fail then Writeln('В числе есть одинаковые цифры')
  else Writeln('В числе нет одинаковых цифр')
end.

Тестовое решение:
Введите четырехзначное натуральное число: 1263
В числе нет одинаковых цифр

Введите четырехзначное натуральное число: 1315
В числе есть одинаковые цифры

оставил комментарий от Архангел (142k баллов)

На самом деле число может быть от 1 до 32767, а если в описании integer заменить на longint (в PascalABC.Net этого делать не нужно, поскольку integer = longint), то число может достигать 2147483647.

...