Добавление элемента в одномерный массив - Turbo Pascal
Формулировка задачи:
Условие: Сформировать массив a[1..n] случайным образом. Определить, содержит ли он заданное число. Если элемент найден, то вставить перед ним элемент вдвое больше найденного. Поиск осуществить методом линейного поиска.
П.с.: я гуглил и пытался найти что-то похожее, но варианты со всякими там записями, процедурами, типизированными файлами не подходят. Нужно принципиально вставить сюда кусочек кода, который будет работать. без перечисленного мною. Я знаю, что применяется цикл down to (так сказала училка, что мол, он нужен), но как, куда, что я не разбираюсь, я запутался, буду рад помощи. Заранее спасибо. То, что у меня получилось, просто находит элемент, но ничего не добавляет. Вот сам код:
Решение задачи: «Добавление элемента в одномерный массив»
textual
Листинг программы
const n=10; var a:array[1..n+1] of integer; i,k,nk:integer; f:boolean; begin randomize; for i:=1 to n do begin a[i]:=random(11); write(a[i],' ') end; writeln; write('k=? ');readln(k); f:=false;i:=1; while (i<=n)and(not f) do begin if a[i]=k then begin nk:=i;f:=true end; inc(i) end; if f then begin i:=n+1; while i>nk do begin a[i]:=a[i-1]; dec(i) end; a[i]:=2*k; for i:=1 to n+1 do write(a[i],' ') end else writeln('net elem = ',k) end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д