Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Задачи на массивы

Автор: Ksander 5.08.2004 0:31

6. Напишите программу, определяющую произведение
Xn(Xn+Xn-1) (Xn+Xn-1+Xn-2) ... (Xn+...+X1). Здесь Xi - элементы массива.


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

Автор: FreeMan 5.08.2004 14:12

Извиняюсь за возможные ошибки. Делал без компилятора (не проверял).
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 5.08.2004 14:36

6)
"Arr" надо заменить на "a"
надо описать "r" - если она вообще нужна... smile.gif

Автор: FreeMan 5.08.2004 15:46

Сделано!

Автор: BlackShadow 5.08.2004 16:02

Это же уже было...

Автор: FreeMan 5.08.2004 16:29

А я так старался... sad.gif

Автор: Ksander 5.08.2004 20:20

что значит в задаче №6 (sum,a[j]); из-за этого не компилирует

Автор: APAL 5.08.2004 20:27

Цитата(Ksander @ 5.08.04 17:20)
что значит в задаче №6 (sum,a[j]); из-за этого не компилирует

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


Можешь заменить на
Код
sum:=sum+a[j]