Условные операторы: Определить, верно ли, что все цифры трехзначного числа различны - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Дано трёх значное число,заданное с клавиатуры.Верно ли,что все цифры числа различны?

Решение задачи: «Условные операторы: Определить, верно ли, что все цифры трехзначного числа различны»

textual
Листинг программы
var
   i,j,k:integer;
   numset:set of byte;
begin
     repeat
     numset:=[];
     readln(j);
     while j>0 do begin
           i:=j mod 10;
           if i in numset then begin
              writeln('neverno');
              k:=0;
              break;
           end else begin
               k:=1;
               numset:=numset+[i];
           end;
           j:=j div 10;
     end;
     if k=1 then writeln('verno!');
     until false; {ctrl+c}
end.

Объяснение кода листинга программы

В данном коде выполняется следующая последовательность действий:

  1. Вводится трехзначное число, которое считывается до тех пор, пока не будет введено ноль.
  2. Для каждой цифры числа проверяется, есть ли она уже в множестве.
  3. Если цифры нет в множестве, то она добавляется и выводится сообщение verno!.
  4. Если число больше не вводится, то программа завершается.

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы