Условные операторы: Определить, верно ли, что все цифры трехзначного числа различны - 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.
Объяснение кода листинга программы
В данном коде выполняется следующая последовательность действий:
- Вводится трехзначное число, которое считывается до тех пор, пока не будет введено ноль.
- Для каждой цифры числа проверяется, есть ли она уже в множестве.
- Если цифры нет в множестве, то она добавляется и выводится сообщение
verno!
. - Если число больше не вводится, то программа завершается.