Паскаль. Найти все натуральные числа, не превосходящие заданного n и делящиеся на каждую из своих цифр.
Попробовал сам написать, но ошибся.
var n, i, p, t:integer;
Begin
write('Введите число n=');
readln(n);
for i:=1 to n do
begin
t:=i;
p:=t mod 10;
t:=t div 10;
if (p<>0)and(i mod p=0) then write(i, ' ');
end;
End.
Answers & Comments
i,n,k,m: integer;
begin
write('n = '); readln(n);
for i:=1 to n do
begin
s:=IntToStr(i);
m:=0;
for k:=1 to length(s) do
if (ord(s[k])-48=0) or (i mod (ord(s[k])-48)<>0) then
begin
m:=1;
break;
end;
if m=0 then write(i,' ');
end;
end.