Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ массив

Автор: Kerjakoff 4.12.2006 16:37

удалить из массива М(26) первый положительный элемент

Автор: klem4 4.12.2006 17:16

Уже можно приступать ? dry.gif Ко второй твоей теме тоже относится. ПОИСК + FAQ: http://forum.pascal.net.ru/index.php?showtopic=2694

Решалось сотни раз.

Автор: }0pa 5.12.2006 3:43

Сомневаюсь, что тебе нужны дин. массивы. Задачка-то школьная, но тогда лови статику
Удаляемый эл-т ставим на последнее место и выводим все, кроме последнего

Код

uses crt;
const n=26;
type massiv = array[1..n]of integer;
var m:massiv;
    i,p:integer;
{-----------------------------------------------------------------------------}
procedure DelElem(var m1:massiv;c:integer;k:integer);
var j,T:integer;
begin
for j:=k to c-1 do
  begin
   T:=m[j];
   m1[j]:=m1[j+1];
   m1[j+1]:=T;
  end;
end;
{-----------------------------------------------------------------------------}
begin
writeln('Ввод массива');
for i:=1 to n do read(m[i]);
p:=0;
for i:=1 to n do
   if m[i]>0 then
     begin
       DelElem(m,n,i);
       p:=p+1;
       writeln('Искомый массив');
       for i:=1 to n-p do write(m[i]:3);
       exit
     end
end.

Автор: мисс_граффити 5.12.2006 4:26

а зачем его ставить на последнее место, если все равно последний элемент не выводим? какая разница, что там будет?

Автор: volvo 5.12.2006 4:34

Цитата
Сомневаюсь, что тебе нужны дин. массивы.
Это ты теперь будешь решать, что кому нужно? mad.gif

У автора спрашивать надо... А свои сомнения оставь при себе !
 ! 
}0pa, еще одна программа, которая НЕ компилируется современным компилером - ты улетишь в БАН... Я ясно выражаюсь?


Автор: Kerjakoff 5.12.2006 14:08

дак как теперь задачу то сделать :-(