Массив F заполнен кубами первых 10 натуральных чисел. Вставить на 3 место квадрат количества элементов в массиве. В получившемся массиве удалить последовательно пятый и восьмой элементы. Программу требуется написать в Pascal.
Answers & Comments
Pauel
Var F:array[1..10] of Integer; i:integer; BEGIN //заполняем массив кубами чисел for i:=1 to 10 do begin F[i]:=i*i*i; end;
Procedure Delete(x:Integer;n:integer); var j : Integer; Begin {сдвиг индекса элементов на один влево} for j:=x to n do begin F[j]:= F[j+1]; end; F[n]:=0;{последний элемент равен 0} End;
END.
1 votes Thanks 0
sellsaccountvar a, b, c, i, n :integer; s :array [1..10000] of longint; begin read (n); for i:=1 to n do s[i]:=i*i*i; s[3]:=n*n; s[5]:=0; s[8]:=0; for i:=6 to n do s[i-1]:=s[i]; for i:=8 to n do s[i-1]:=s[i]; for i:=1 to n-2 do write (s[i], ' '); end.
0 votes Thanks 0
bridgelin2
В цикле For вы указали условие (6 to n и 8 to n), в условие же конкретно нужно было указать 5 и 8 элемент, не так ли?
bridgelin2
Еще один вопрос: что обозначает оператор longint?
Удачник66
longint - это длинное целое, но на самом деле оно не нужно. У тебя числа от 1 до 10, а не до 10000, как он написал, их кубы от 1 до 1000, достаточно импа integer
Answers & Comments
i:integer;
BEGIN
//заполняем массив кубами чисел
for i:=1 to 10 do
begin
F[i]:=i*i*i;
end;
F[3]:=length(F)*length(F);
Delete(5,10);
Delete(8,10);
Procedure Delete(x:Integer;n:integer);
var j : Integer;
Begin {сдвиг индекса элементов на один влево}
for j:=x to n do
begin
F[j]:= F[j+1];
end;
F[n]:=0;{последний элемент равен 0}
End;
END.
s :array [1..10000] of longint;
begin
read (n);
for i:=1 to n do
s[i]:=i*i*i;
s[3]:=n*n;
s[5]:=0;
s[8]:=0;
for i:=6 to n do
s[i-1]:=s[i];
for i:=8 to n do
s[i-1]:=s[i];
for i:=1 to n-2 do
write (s[i], ' ');
end.