Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 01.03.2010
Сообщений: 22

Вывести в порядке возрастания те элементы массива, которые больше заданного числа А

01.03.2010, 12:29. Показов 2135. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан одномерный массив, состоящий из n действительных чисел. Написать программу, которая выводит в порядке возрастания те его элементы, которые больше заданного числа А и меньше заданного числа В.
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
const N=10;
type mas=array[1..n] of integer;
var
otr,r,t: array[1..N] of integer; k,i,j:integer;
 
procedure vvod(var a:mas);
begin randomize;
for i:=1 to N do begin a[i]:=random(36)-5;
write(a[i]:3) end; writeln;
end;
 
procedure uslov(z:mas; var k1:integer; var r1:mas);
var ch1,ch2:integer;
begin
readln(ch1);
readln(ch2);
k1:=0;
for i:=1 to N do
if (z[i]>ch1) and (z[i]<ch2) then begin
k1:=k1+1;
r1[k1]:=z[i];
                                  end;
end;
 
procedure vozrast(k2:integer; var r2:mas);
var nmin,n_min,temp:integer;
begin
For j:=1 to k2-1 do begin
n_min:=j;
for i:=j+1 to k2 do
if r2[i]<r2[nmin] then n_min:=i;
temp:=r2[n_min];
r2[nmin]:=r2[j];
r2[j]:=temp;
                    end;
end;
 
procedure vuvod(t1:mas);
begin
for j:=1 to N do write(t1[j]:2);
readln;
end;
 
begin
vvod(otr);
uslov(otr,k,r);
vozrast(k,r);
vuvod(r);
readln();
end.
Добавлено через 8 минут
Найдите ошибку, плиз, а то сдавать уже надо!!!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.03.2010, 12:29
Ответы с готовыми решениями:

Вывести на экран элементы массива целых чисел в порядке возрастания их числа делителей
1 Получить все числа, которые входят в массив по одному разу 2 Вывести на экран элементы массива целых чисел в порядке возрастания их...

Вывести на экран различные элементы массива целых чисел в порядке возрастания их числа повторений
1. Вывести на экран различные элементы массива целых чисел в порядке возрастания их числа повторений. Добавлено через 7 часов 11 минут...

Вывести те элементы массива, значения которых больше заданного числа А
Может кто-то знает как докончить этот код? Scilab a = b = k = 3 G = setdiff (a,b) disp(G)

6
2923 / 844 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
01.03.2010, 12:35
надо везде в процедуре vozrast сделать либо nmin либо n_min то есть что бы была только одна переменная
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.03.2010, 12:36
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
const N=10;
type mas=array[1..n] of integer;
procedure vvod(var a:mas);
var i:byte;
begin randomize;
for i:=1 to N do
 begin
  a[i]:=random(36)-5;
  write(a[i]:3)
 end;
writeln;
end;
procedure vozrast(var r2:mas);
var i,j,temp:integer;
begin
For j:=1 to n-1 do
for i:=j+1 to n do
if r2[i]>r2[j] then
 begin
  temp:=r2[i];
  r2[i]:=r2[j];
  r2[j]:=temp;
 end;
end;
procedure uslov(z:mas;k1,k2:integer);
var i:integer;
begin
writeln('Vvedite interval ');
readln(k1,k2);
for i:=1 to N do
if (z[i]>k1) and (z[i]<k2) then
write(z[i],' ');
end;
 
var
otr: mas;
k,r:integer;
begin
vvod(otr);
vozrast(otr);
uslov(otr,k,r);
readln;
end.
1
0 / 0 / 0
Регистрация: 01.03.2010
Сообщений: 22
02.03.2010, 11:41  [ТС]
Препод вредный попался. Алгоритм нужен другой срочно!! надо сначало в новый массив переместить, то что удовлетворяет условию, а потом его отсортировать, можете переписать???
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
02.03.2010, 11:57
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
uses crt;
const N=10;
type mas=array[1..n] of integer;
procedure vvod(var a:mas);
var i:byte;
begin
writeln('Ishodnyj massiv:');
for i:=1 to N do
 begin
  a[i]:=random(36)-5;
  write(a[i]:4)
 end;
writeln;
end;
procedure vozrast(var r2:mas;x:integer);
var i,j,temp:integer;
begin
writeln('Otsortirovannyj interval:');
For i:=1 to x-1 do
for j:=i+1 to x do
if r2[i]>r2[j] then
 begin
  temp:=r2[i];
  r2[i]:=r2[j];
  r2[j]:=temp;
 end;
for i:=1 to x do
write(r2[i]:4);
writeln;
writeln;
end;
procedure uslov(z:mas;k1,k2:integer;var z2:mas;var n1:integer);
var i:integer;
begin
writeln('Vvedite interval ');
readln(k1,k2);
n1:=0;
for i:=1 to N do
if (z[i]>k1) and (z[i]<k2) then
 begin
  n1:=n1+1;
  z2[n1]:=z[i];
 end;
writeln('Chisla iz intervala (',k1,'-',k2,')');
for i:=1 to n1 do
write(z2[i]:4);
writeln;
writeln;
end;
 
var
otr,res: mas;
k,r,m:integer;
begin
clrscr;
randomize;
vvod(otr);
uslov(otr,k,r,res,m);
vozrast(res,m);
readln
end.
1
0 / 0 / 0
Регистрация: 01.03.2010
Сообщений: 22
02.03.2010, 12:21  [ТС]
Спасибо)))
Одномерный массив А заполнить случайными числами из диапазона [–2..30]. Переместить нулевые элементы массива в начало, сдвинув остальные элементы вправо.
Можете еще с этой помочь, я ее решил, но не тем способом, а надо без доп. массива, методом циклического сдвига...
Тут просто по возрастанию что ли отсортировать?? Буду очень признателен за решение))
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
const N=20;
type mas=array[1..n] of integer;
Var otr,otresk:mas; i,z:integer;
 
procedure vvod(var a:mas);
begin randomize;
for i:=1 to N do begin a[i]:=random(33)-2;
                 write(a[i]:2)
                 end; writeln;
end;
 
procedure peremech(otre:mas; var otres:mas);
var r:mas; k:integer;
begin
k:=0;
for i:=1 to N do if (otre[i]<>0) then begin
inc(k);
r[k]:=otre[i] end;
for i:=1 to N-k do otres[i]:=0;
For i:=N-k+1 to N do
otres[i]:=r[i-(N-k)];
end;
 
procedure vuvod(otreski:mas);
begin
for i:=1 to N do write(otreski[i]:2);
readln;
end;
 
begin
vvod(otr);
peremech(otr,otresk);
vuvod(otresk);
end.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
02.03.2010, 13:13
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

До чего программы плохо оформляешь.
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
uses crt;
const N=20;
type mas=array[1..n] of integer;
Var otr:mas;
    i,z:integer;
procedure vvod(var a:mas);
begin
writeln('Ishodnyj massiv');
for i:=1 to N do
 begin
  a[i]:=random(33)-2;
  write(a[i]:4)
 end;
writeln;
writeln;
end;
procedure peremech(var otr:mas);
var i,j,k,x:integer;
begin
k:=0;
for i:=1 to N do
if (otr[i]=0) then
 begin
  inc(k);
  x:=otr[i];
  for j:=i downto k+1 do
  otr[j]:=otr[j-1];
  otr[k]:=x;
 end;
end;
 
procedure vuvod(var otr:mas);
begin
writeln('Nuli peremesgheny v nachalo:');
for i:=1 to N do
write(otr[i]:4);
readln;
end;
 
begin
clrscr;
randomize;
vvod(otr);
peremech(otr);
vuvod(otr);
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.03.2010, 13:13
Помогаю со студенческими работами здесь

Упорядочить элементы массива в порядке возрастания, все элементы больше нуля увеличить в 3 раза
Помогите пожалуйста Нужна прога: Есть массив X(n). Упорядочить его элементы в порядке возрастания, все элементы больше нуля...

Вывести все элементы массива, которые больше введенного числа
Вывести все элементы массива, которые больше введенного числа

Вывести на экран те элементы массива, которые больше произвольно выведенного вами числа
2) Заполнить массив случайными положительными числами из произвольного диапазона. Вывести созданный массив на экран, расположив каждый...

Вывести вначале элементы массива с нечетными номерами в порядке возрастания номеров, затем - элементы с четными в порядке убывания номеров
дан массив А размера N.вывести вначале элементы с нечетными номерами в порядке возрастания номеров,а затем -элементы с четными номерами в...

Вывести все цифры заданного с клавиатуры числа по одному разу в порядке их возрастания
Вывести все цифры заданного с клавиатуры числа по одному разу в порядке их возрастания. Задача на множества.


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru