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

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

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

Автор: Negor 13.04.2006 0:41

Подскажите пожалуйста такое решение.
Есть некоторый массив.И из него нужно удалить элементы
меньшие какого либо значения
Например
1,3,5,4,3,1,8,6=array
удаляем все элементы меньше 5
получаем 5,8,6

Автор: klem4 13.04.2006 1:29

Пользуйся поиском, решалось неоднократно

ps удаление к-го элемента

for i := k to n - 1 do arr[i] := arr[i+1];
n := n - 1;

Автор: Гость 14.04.2006 0:16

Народ памагите,я скоро с ума сойду
Вот написал, но чтото сдесь не работает,
а что, не пойму.(((

Код

uses crt;

var a:array[1..10] of byte;
    i,n,j,k,t:byte;
begin
Clrscr;
randomize;
for i:=1 to 10 do begin
    a[i]:=random(9)+1;
    write(a[i]:2);
    end;
writeln;
readln(j);
n:=10;
for i:=1 to n do
    if a[i]<=j then

       for k:=i to n-1 do a[k]:=a[k+1];



for i:=1 to n do write(a[i]:2);
readkey
end.


Автор: volvo 14.04.2006 0:43

Было почти правильно... Только вот так все-же лучше:

uses crt;

var a:array[1..10] of byte;
i,n,j,k,t:byte;
begin
Clrscr;
randomize;
for i:=1 to 10 do begin
a[i]:=random(9)+1;
write(a[i]:2);
end;

writeln;
readln(j);

n:=10;
i := 1;
while i <= n do

if a[i]<=j then begin
for k:=i to n-1 do a[k]:=a[k+1];
dec(n)
end
else inc(i);

for i:=1 to n do write(a[i]:2);
readkey
end.


Неиспользуемые переменные убери...

Автор: Гость 16.04.2006 16:22

Как обычно всё гениальное просто.Большое спасибо за помощ