Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите с масивом

57K
16 февраля 2010 года
lesh1
1 / / 16.02.2010
Дано массив (X) размерностью n.
Нужно Превратить его так, чтобы в начале массива находились додатны элементы в порядке их следования в исходном массиве, а после них отрицательное элементы в порядке возрастания по значению, если последний элемент отрицательное и его абсолютное значение четное. В противном случае переставить элементы так чтобы произошла смена флангов, то есть первый элемент оказался на последнем месте, а последний на першиому месте. Второй элемент оказался на предпоследнем месте, а предпоследний на втором месте и т.д
Ограничения - создание вспомогательного массива предыдущее сортировки исходного массива позростанню (убиваню) его элементов не разрешается)))
Вот что вышло. Но не знаю как сделать смену флангов.
program lesh;
uses crt;
var x:array [1..99] of integer;
g,s,m,n,k,i:integer;
begin
clrscr;
textcolor(red);
writeln('vod n');
readln(n);
writeln('vvedite e-tu massiva');
for i:=1 to n do
readln(x);
writeln;
for i:=1 to n do
writeln('x[',i,']=',x);
if x[n]<0 then
begin
x[n]:=g;
s:=abs(g);
k:=s mod 2 ;

if k=0 then
begin

for i:=1 to n-1 do
if x>x[i+1] then
begin
m:=x;
x:=x[i+1];
x[i+1]:=m;
end;
writeln;
for i:=1 to n do
writeln('x[',i,']=',x);

end
else
readln;
end.
6
16 февраля 2010 года
George
4.1K / / 05.01.2007
оформьте код. как оформлять написано в правилах раздела. их надо прочесть.
57K
03 марта 2010 года
Optibe
10 / / 03.03.2010
Вы очевидно ошиблись
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог