Родные мои, помогите пожалуйста! Не могу даже алгоритм набросать. Дайте идею. Надеюсь только на вашу помощь.
Задача: Напечатать в возрастающей последовательности все трехзначные числа, в десятичной записи которых нет одинаковых цифр. Операцией деления не пользоваться.
Ну, если нельзя пользоваться делением, то переводи число в строку (процедурой str), и сравнивай символы полученной строки между собой на равенство...
Спасибо. Это понятно. Так я определю числа с одинаковыми цифрами. А что дальше?
var
a:integer;
s:string[3];
Begin
For a:=100 to 999 do
Begin
Str(a,s);
If (s[1]<>s[2]) and (s[2]<>s[3]) and (s[1]<>s[3]) then WriteLn(a);
End;
End.
Огромное-преогромное спасибо. Просто я затупила маленько. Все понятно.
Вот так, кстати, будет работать гораздо быстрее:
var
a, b, c: integer;
begin
for a := 1 to 9 do
for b := 0 to 9 do begin
if a <> b then
for c := 0 to 9 do
if (c <> a) and (c <> b) then writeln(a, b, c);
end;
end.