Аватар
Информатика, опубликовано 2018-08-22 22:28:32 by Гость

Дан целочисленный массив размера N. Преобразовать массив, увеличив его последнюю серию наибольшей длины на один элемент. Паскаль

Аватар
Ответ оставил Гость

Program Array129;
var
a: array [1..40] of integer;
B: array [1..20] of integer;
C: array [1..20] of integer;
temp,M,N,i,j:integer;
begin
writeln(Введите N (Nreadln(N);
writeln(Значения массива А);
for i:=1 to n do begin write(a[,i,]=);readln(A[i]); B[i]:=i; end;
// решение 
temp:=0;
m:=0;
// формируем из исходного массива A[] два с длиной серий B[] и значением серий C[] 
for i:=2 to n do
begin
inc(temp);
if a[i]a[i-1] then
begin
inc(M);
B[M]:=temp;
C[M]:=a[i-1];
temp:=0;
end;
end;
inc(temp);
inc(M);
b[M]:=temp;
C[M]:=a[i];
// складываем массив A[] согласно задания. 
temp:=1;
for i:=1 to m do
begin
if b[i]>=b[temp] then
begin
temp:=i;
end;
end;
inc(b[temp]);

temp:=0;
for i:=1 to m do
begin
for j:=1 to b[i] do
begin
inc(temp);
a[temp]:=c[i];
end;
end;
Writeln;
Writeln(Ответ);
Write( A[]: ); for i:=1 to temp do Write(A[i], );
end.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.