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

0 голосов
58 просмотров

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


Информатика (31 баллов) | 58 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

//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 баллов)
0

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