Задача на Pascal, подскажите хоть как начать или как написать...
Составить алгоритм решения следующей задачи на компьютере:
Задано N
Составить алгоритм решения следующей задачи на компьютере:
Задано N
Начни с написания процедуры, которая будет двигать массив, начиная с заданного элемента. Потом допиши еще процедуру, которая при помощи первой будет вставлять элемент на НУЖНОЕ место. Остальное элементарно.
Вот тебе в подарок вторая процедура:
type TArray=array[1..100] of integer;
...
procedure InsertValue(var a:TArray; k, n:integer);
var j:integer;
begin
j:=1;
while (a[j]< k) and (j< =n) do //Без пробела перед =
inc(j);
ShiftArray(a,j); //Это вызов первой процедуры.
a[j]:=k;
end;
Впринцыпе тут можно сначало введи элементы в массив, а потом произвести сортировка, так будет проще.
А если вам на до именно так, то примерно вот:
type arr: array[1..1] of integer;
var A: ^arr; i,k,t,x: integer;
begin
writeln('Введите количество элементов в массиве '); read(k);
writeln('Введите 'элементы массива) ;
getMem(A,sizeof(integer)*k);
t:=1; i:=1;
while (t0) do
begin
read(t);
if i = 1 then A[ i ] = t
else
begin
if t >= A[ i ] then
begin
x:=A[ i ];
A[ i ] := t;
A[ i+ 1]:=x;
end else
begin
x:=A[ i ];
A[ i ] := t;
A[ i - 1]:=x;
end;
end;
if i >= k then break;
inc(i);
end;
freeMem(A,sizeof(integer)*k);
end;
Вот пример, не очень маленькая вероятность что верно решил, код писал срузу тут и не думая))