Const n=20;
var a:array [1..n] of integer;
s,i:integer;
begin
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(90);
write(a[i],' ');
end;
writeln;
s:=0;
for i:=1 to n do
if (a[i] mod 2 <> 0)and(a[i] mod 3 = 0) then s:=s+a[i];
writeln('s=',s);
end.
Пример:
Исходный массив:
66 14 74 6 15 65 42 37 34 0 63 75 69 17 50 15 78 14 7 35
s=237
Var
i, n, j, p, s: longint;
st: string;
b: boolean;
begin
s := 0;
b := false;
readln(n);
for i := 1 to n.ToString.Length do
s := s + strtoint(n.ToString[i]);
for i := 10 to n - 1 do
begin
st := i.ToString;
p := 1;
for j := 1 to st.Length do
p := p * strtoint(st[j]);
if(p = s) then begin b := true;writeln(i); end;
end;
if(b = false) then write('Нет');
end.
128 Кб/сек * 30 сек = 3840 Кбайт : 1024= 3,75 Мбайт
var a:array[1..10] of integer;
i,tmp:integer;
begin cls;
for i:=1 to 10 do a[i]:=i;
for i:=1 to 10 do
begin
if i mod 2 = 1 then
begin
tmp:=a[i];
a[i]:=a[i+1];
a[i+1]:=tmp;
end;
end;
for i:=1 to 10 do
write(a[i], ' ');
end.
1 бочка = 3 галлона
2 бочка = 5 галлонов
Набираем во 2 бочку [0:5]
Переливаем из 2 в 1 бочку [3:2]
Выливаем из 1 бочки [0:2]
Переливаем из 2 в 1 бочку [2:0]
Набираем во 2 бочку [2:5]
Переливаем из 2 в 1 бочку [3:4]
Выливаем из 1 бочки [0:4]
Теперь у нас во второй бочку 4 галлона