Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Naxik
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 10
1

отсортировать массив

16.05.2011, 11:59. Просмотров 317. Ответов 5
Метки нет (Все метки)

Отсортировать элементы массива, стоящие на нечётных местах по возрастанию, вот моя часть программы, которая сортирует весь массив по возрастанию, а как сделать, чтобы сортировались только элементы на не чётных местах я не знаю, помогите пожалуйста.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Program lab4;
 
const
  m = 100;
 
var
  a: array[1..m] of integer;
  n, i, c, j: byte;
  f: boolean;
 
  begin
    writeln('Vvedite razmer massiva do ', m, ' :');
    read(n);
    for i := 1 to n do 
      begin
        write('a[', i, '] = ');
        readln(a[i]);
      end;
repeat
      f := false;
      for i := 1 to n do
        begin
          if a[i] = a[i + 1] then
            begin
              a[i + 1] := a[i + 2];
            end;
        end;
      for i := 1 to n - 1 do  
        begin
          if a[i] > a[i + 1] then 
            begin
              f := true; 
              c := a[i];
              a[i] := a[i + 1];
              a[i + 1] := c;
            end;
        end;
    until not f;
      for i := 1 to n do
        write( a[ i ], ' ');
    readln
  end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2011, 11:59
Ответы с готовыми решениями:

Отсортировать массивы, объединить и результирующий массив отсортировать
Помогите пожалуйста, нужно написать в паскале программу: Даны массив А(16),...

Вычислить среднее арифметическое элементов, дописать в массив и отсортировать массив по возростанию
5)Вычислить среднее арифметическое элементов, дописать в массив и отсортировать...

Массив символов. В процедуре отсортировать массив по алфавиту в обратном порядке
Ввести данные (тип данных указан в вариантах) с клавиатуры в виде «Х=», где i –...

Сформировать массив по формуле Yk=K*cos (Ak). Отсортировать массив по возрастанию
Дан массив размера N. Сформировать массив Yn, каждый элемент которого...

Отсортировать массив
Отсортировать массив который содержит имена и фамилии студентов и их средний...

5
unick12345
1782 / 1114 / 179
Регистрация: 27.03.2009
Сообщений: 4,257
16.05.2011, 12:02 2
используй i как условие для обработки и проверку элементов -2 позиции
0
Naxik
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 10
16.05.2011, 12:23  [ТС] 3
а можете написать фрагмент на паскале того, что вы предложили
0
unick12345
1782 / 1114 / 179
Регистрация: 27.03.2009
Сообщений: 4,257
16.05.2011, 12:33 4
вот типа пример
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
uses crt;
const m=100;
var a:array[1..m] of integer;i,j,c,n:integer;
begin
clrscr;
readln(n);
for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;
writeln;
for i:=1 to n do
write(a[i]:4);
writeln;
for i:=3 to n do
if i mod 2 >0 then
for j:=1 to n-2 do
if j mod 2 >0 then
if a[i]<a[j] then
begin
c:=a[i];a[i]:=a[j];a[j]:=c;
end;
for i:=1 to n do
write(a[i]:4);
readln;
end.
1
SuPeR XaKer
2844 / 1973 / 788
Регистрация: 23.09.2010
Сообщений: 4,877
16.05.2011, 12:50 5
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Uses
 CRT;
Var
 n,i,j:byte;
 buf:integer;
 a:array[1..100] of integer;
begin
readln(n);
randomize;
for i:=1 to n do
begin
 a[i]:=random(10)-3;
 write(a[i]:3);
end;
writeln;
for i:=1 to (n div 2+n mod 2)-1 do
for j:=i+1 to (n div 2+n mod 2) do
if a[i*2-1]>a[j*2-1] then
begin
 buf:=a[j*2-1];
 a[j*2-1]:=a[i*2-1];
 a[i*2-1]:=buf;
end;
writeln;
for i:=1 to n do
 write(a[i]:3);
end.
1
Naxik
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 10
16.05.2011, 13:24  [ТС] 6
Спасибо
0
16.05.2011, 13:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2011, 13:24

Отсортировать массив
Упорядочить по возрастанию массив,содержащий 7 вещественных чисел. ВВод/вывод...

Отсортировать массив
Дан линейный массив из 10 чисел. Отсортировать массив по закону: первый...

Отсортировать массив
помогите. Линейный целочисленный массив размером N заполнен только нулями и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru