Другие языки программирования и технологии

Найти все натуральные числа, не превосходящие заданного числа n, которые делятся на каждую из своих цифр. Паскаль.

Помогите пожалуйста! Срочно! Нужно написать процедуру, функцию и процедуру без параметров.
Deman Юсупов
Deman Юсупов
90
{функция}
var x: LongInt;
function plo (n: LongInt): LongInt;
var i, j, k : integer;
c: longInt;
a: array [1..10] of integer;
begin
for i:=1 to n do
begin
for j:=1 to 10 do a[j]:=0;
c:=i;
j:=0;
while c>0 do
begin
inc (j);
a[j]:=c mod 10;
c:=c div 10;
end;
c:=0;
for k:=1 to j do
if a[k] <> 0 then
if i mod a[k] = 0 then inc(c);
if c=k then write (i,' ':2);
end;
end;
begin
write ('n = ');
read (x);
plo (x);
end.

{процедура }
var x: LongInt;
procedure plo (n: LongInt);
var i, j, k : integer;
c: longInt;
a: array [1..10] of integer;
begin
for i:=1 to n do
begin
for j:=1 to 10 do a[j]:=0;
c:=i;
j:=0;
while c>0 do
begin
inc (j);
a[j]:=c mod 10;
c:=c div 10;
end;
c:=0;
for k:=1 to j do
if a[k] <> 0 then
if i mod a[k] = 0 then inc(c);
if c=k then write (i,' ':2);
end;
end;
begin
write ('n = ');
read (x);
plo (x);
end.

{процедура без параметров}
procedure plo;
var i, j, k : integer;
n, c: longInt;
a: array [1..10] of integer;
begin
write ('n = ');
read (n);
for i:=1 to n do
begin
for j:=1 to 10 do a[j]:=0;
c:=i;
j:=0;
while c>0 do
begin
inc (j);
a[j]:=c mod 10;
c:=c div 10;
end;
c:=0;
for k:=1 to j do
if a[k] <> 0 then
if i mod a[k] = 0 then inc(c);
if c=k then write (i,' ':2);
end;
end;
begin
plo;
end.
Даниил Потапов
Даниил Потапов
24 309
Лучший ответ
var N,i,x:integer;
v:boolean;
c:byte;
begin
Write('N=');
readln(N);
for i:=1 to N do
begin
v:=true;
x:=i;
while x>0 do
begin
c:=x mod 10;
if (c=0) or (i mod c<>0) then begin v:=false; break end;
x:=x div 10;
end;
if v then write(i,' ')
end;
end.
Улан Оспанов
Улан Оспанов
83 844
Вам нужен оператор mod
Это не помощь. Это называется - сделать за меня.
Ауесхан Усенбеков Что за дети пошли? Не могут расхуярить число в паскале на цифры?
Я бы преобразовала число в строку, вычислила длину строки, выдернула цифры, перехуярила их из символьных переменных в числовые и mod проверила делимость. Жертвы егэ...

Похожие вопросы