Всё таки есть сомнение нужна сумма нечётных элементов массива или сумма элементов массива с нечётными индексами?
В данной прграмме подсчитывается сумма нечётных элементов массива
Если же нужно второе то строку отмеченную {*} следует заменить на
if (i mod 2)>0 then s:=s+a[i];
Program massiv;
Uses Crt;
var a:array[1..10] of integer;
i,sum,ch:integer;
begin
clrscr;
write('Введите число:' );
readln(ch);
write('Введите элементы массива:');
sum:=0;
for i:=1 to 10 do
begin
readln(a[i]);
if (a[i] mod 2)>0 then s:=s+a[i]; {*}
end;
writeln; write('Исходный массив: ');
for i:=1 to 10 do
begin
write(a[i]);
write(' ' );
end;
writeln; writeln;
write('Сумма нечётных элементов массива: ',sum)
writeln; writeln;
write('Номера элементов которые больше числа ',ch,' : ' );
for i:=1 to 10 do
if (a[i]>ch) then
begin
write(i:2);
write(' ' );
end;
writeln; writeln;
write('Положительные числа которые кратны числу ',ch,' : ' );
for i:=1 to 10 do
if (a[i]>0) and (a[i] mod ch=0) then
begin
write(a[i]);
write(' ' );
end;
readkey;
end.
program raf105;
var i,n:integer;
begin
write('Введите N: ');
readln(n);
for i:=1 to n do
writeln('7');
end.
6.program raf105;
var
i: integer;
pro: real;
begin
pro:= 1;
for i:=1 to 20 do
pro*= i;
writeln('Произведение первых 20 чисел: ',pro);
end.
7.program raf105;
var i,sum: integer;
begin
for i:=1 to 15 do
sum+= i;
writeln('Сумма первых 15 чисел: ',sum);
end.
const
n = 5;
var
a: array [1..n] of integer;
i,k,x,l: integer;
t: boolean;
begin
for i := 1 to n do read(a[i]);
k := 0;
for i := 1 to n do
begin
t := true;
x := a[i]; if x < 0 then x := -x;
l := 1;
while l <= x do l := l*2; l := l div 2;
while t and (l > 1) do
begin
t := x >= l;
if t then x := x - l;
t := t = (x mod 2 <> 0);
x := x div 2;
l := l div 4;
end;
if t then k := k + 1
end;
write(k)
end.
{2}
const
n = 10;
var
a,d: array [1..n] of integer;
i,j,k: integer;
begin
for i := 1 to n do
a[i] := 100 + random(900);
for i := 1 to n do
begin
d[i] := 0;
for j := 1 to a[i] do
if a[i] mod j = 0 then
d[i] := d[i] + 1;
end;
for i := 1 to n-1 do
begin
k := i;
for j := i + 1 to n do
if d[j] < d[k] then k := j;
j := a[k];
a[k] := a[i];
a[i] := j;
j := d[k];
d[k] := d[i];
d[i] := j;
end;
for i := 1 to n do
write(a[i],' ')
end.
{3}
const
n = 10;
l = 3;
var
a: array [1..n] of integer;
m: array [1..l] of integer;
i,j,k: integer;
begin
for i := 1 to n do
begin
a[i] := random(1001);
write(a[i],' ')
end;
writeln;
for i := 1 to l do
m[i] := -1;
for i := 1 to n do
begin
j := 1;
while j <= l do
begin
if (a[i] = m[j]) then j := l else
if (a[i] < m[j]) or (m[j] = -1) then
begin
for k := l downto j+1 do
m[k] := m[k-1];
m[j] := a[i];
j := l
end;
j := j + 1
end;
end;
for i := 1 to l do
if m[i] <> -1 then write(m[i],' ')
end.