Помощь - Поиск - Пользователи - Календарь
Полная версия: Задачи на массивы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Ksander
6. Напишите программу, определяющую произведение
Xn(Xn+Xn-1) (Xn+Xn-1+Xn-2) ... (Xn+...+X1). Здесь Xi - элементы массива.


7. Найти все натуральные числа, не превосходящие заданного n , которые делятся на каждую из своих цифр.
FreeMan
Извиняюсь за возможные ошибки. Делал без компилятора (не проверял).
6)
Код

uses crt;
const n=10;
var
a: array[1..n] of integer;
i,j: word;
sum, result: real;
begin
clrscr;
randomize;

r:=1;
for i:=1 to n do a[i]:=random(100)-50;
for i:=n downto 1 do begin
sum:=0;
for j:=n downto i do inc(sum,a[j]);
result:=result*sum;
end;
writeln(result);
readkey;
end.

7)
Код

uses crt;
var
n:integer;
i,j,ch,x:integer;
flag:boolean;
begin
clrscr;
readln(n);
for i:=1 to n do begin
ch:=i;
flag:=true;
while (ch<>0) and flag do begin
x:=ch mod 10;
ch:=ch div 10;
if i mod x <>0 then flag:=false;
end;
if flag then writeln(i);
end;
end.
APAL
6)
"Arr" надо заменить на "a"
надо описать "r" - если она вообще нужна... smile.gif
FreeMan
Сделано!
BlackShadow
Это же уже было...
FreeMan
А я так старался... sad.gif
Ksander
что значит в задаче №6 (sum,a[j]); из-за этого не компилирует
APAL
Цитата(Ksander @ 5.08.04 17:20)
что значит в задаче №6 (sum,a[j]); из-за этого не компилирует

Не
Код
(sum,a[j])
, а
Код
inc(sum,a[j])


Можешь заменить на
Код
sum:=sum+a[j]
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.