Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 29
1

Выполнить сортировку включением

10.03.2010, 23:48. Показов 656. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением. В полученном массиве, найти наименьший элемент из положительных значений.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2010, 23:48
Ответы с готовыми решениями:

Выполнить сортировку включением
Дан целочисленный массив C(L). Добавить массив X(N). Выполнить сортировку включением. Найдите...

Выполнить сортировку массива включением
Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением. В полученном массиве...

Выполнить сортировку включением. Подсчитайте сумму положительных элементов полученного массива
Задан массив A(N). Добавить массив X(М). Выполнить сортировку включением. Подсчитайте сумму...

Выполнить сортировку включением. В полученном векторе удалите элементы кратные шести
17. Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением. В полученном...

5
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.03.2010, 06:49 2
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
uses crt;
const max=100;
var a,c:array[1..max] of integer;
    n,k,i,j:byte;
    x,mn:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива A до ',max div 20,' n=');
readln(n);
until n in [1..max div 2];
writeln('Исходный массив A:');
for i:=1 to n do
 begin
  a[i]:=random(20)-9;
  write(a[i]:3);
 end;
writeln;
writeln;
repeat
write('Размер массива C до ',max div 20,' k=');
readln(k);
until k in [1..max div 2];
writeln('Исходный массив C:');
for i:=1 to k do
 begin
  c[i]:=random(20)+1;
  write(c[i]:3);
 end;
writeln;
writeln;
for i:=1 to k do
 begin
  n:=n+1;
  a[n]:=c[i];//добавляем массив
 end;
writeln('Объединение массивов A+C');
for i:=1 to n do
write(a[i]:3);
writeln;
writeln;
for i:=2 to n do//сортировка включениями
   begin
    x:=a[i];
    j:=1;
    while x>a[j] do inc(j);
    for k:=i-1 downto j do a[k+1]:= a[k];
    a[j]:=x;
   end;
writeln('Отсортированный массив:');
for i:=1 to n do
write(a[i]:3);
writeln;
writeln;
if a[n]<=0 then write('В массиве А нет положительных элементов')
//если последний не положительный
else if a[1]>0 then write('Минимум из положительных=',a[1])
//если первый положительный
else//иначе ищем первый положительный(массив отсортирован по возрастанию)
 begin
  i:=1;
  while a[i]<=0 do
  i:=i+1;
  mn:=a[i];
  write('Минимум из положительных=',mn);
 end;
readln
end.
1
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 29
15.03.2010, 13:55  [ТС] 3
Как переделать? Выполнить обменную сортировку. В полученном заданном массиве найти наибольший элемент из отрицательных значений.

Добавлено через 1 минуту
Как переделать? Выполнить обменную сортировку. В полученном заданном массиве найти наибольший элемент из положительных значений.
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
15.03.2010, 14:08 4
Цитата Сообщение от lotos_47 Посмотреть сообщение
Выполнить обменную сортировку
Pascal
1
2
3
4
5
6
7
8
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then
 begin
  x:=a[i];
  a[i]:=a[j];
  a[j]:=x;
 end;
Добавлено через 56 секунд
Цитата Сообщение от lotos_47 Посмотреть сообщение
наибольший элемент из положительных значений.
А что, бывают отрицательные больше положительных?
1
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 29
15.03.2010, 14:24  [ТС] 5
Ошибся. Наименьший из положительных
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
15.03.2010, 14:50 6
Так в программе как раз и ищется наименьший из положительных

Добавлено через 7 минут
наибольший элемент из отрицательных значений.
Замени для виду переменную mn на mx.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if a[1]>=0 then write('В массиве А нет отрицательных элементов')
//если первый не отрицательный
else if a[n]<0 then write('Максимум из отрицательных=',a[n])
//если последний отрицательный
else//иначе ищем последний отрицательный(массив отсортирован по возрастанию)
 begin
  i:=n;
  while a[i]>=0 do
  i:=i-1;
  mx:=a[i];
  write('Максимум из отрицательных=',mx);
 end;
readln
end.
0
15.03.2010, 14:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2010, 14:50
Помогаю со студенческими работами здесь

Выполнить сортировку включением. В полученном массиве найти элементы >5 и создайте из них новый массив
Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением. В полученном массиве...

Сортировка. Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением
16. Задан массив AX (N). Добавить массив С(К). Выполнить сортировку включением. В полученном...

Задан массив А (N). Добавить массив С(К). Выполнить сортировку включением
Задан массив А (N). Добавить массив С(К). Выполнить сортировку включением. В полученном массиве ...

Задан массив A(N). Добавить массив С(К). Выполнить сортировку включением
Задан массив A(N). Добавить массив С(К). Выполнить сортировку включением. В полученном заданном...

Сортировку включением заменить на обменную
Ребят. У меня есть задача, выполненная сортировкой включения, но мне надо сделать, чтобы в ней была...

Выполнить обменную сортировку
Задан массив A(N). Добавить массив С(К). Выполнить обменную сортировку в виде процедуры. В...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru