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

График массива и сортировка по возрастанию

14.12.2020, 18:41. Показов 415. Ответов 0

Студворк — интернет-сервис помощи студентам
Задание: Создать массив из 12 элементов, найти максимум, построить график и упорядочить по возрастанию потом массив. Вроде работает, но почему то можно отловить такие не приятные случаи с ошибкой в сортировке

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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
const n=12;
type arra = array[0..n] of integer;
var  poss,i,j,max,inde: integer; m1,m2,Ina: arra;
const a=-10;
const b=200;
//сортировка
procedure sort(var yarra: arra; n:Integer);
var i,j,k: Integer;
begin
  for i := n downto 2 do
    for j := 0 to i - 1 do
      if yarra[j] > yarra[j + 1] then
      begin
        k := yarra[j];
       yarra[j] := yarra[j + 1];
        yarra[j + 1] := k;
      end;
      end;
 
 
 
//график
procedure graph(var m2: arra; l:Integer);
var flag:Boolean; i,j:Integer;
begin;
flag:=false;
    for i:=b downto a do
    begin
      for j:=0 to l do
      begin
        if m2[j] = i then
        begin
        flag:=true;
          if i = 0 then
          begin
            if j <> 0 then
            write(i:6, '|');
            write('-'*j);
            write('*');
            write('-'*(30 -j));
            writeln('> i');
          end
          else
          begin
            write(i:6);
            if j <> 0 then
              write('|');
            writeln('':j*2, '*');
          end;
        end;
      end;
      if not flag then
      begin
        if i = 0 then
          writeln(i:6, '|', '-'*30, '> i');
      end;
      flag:=false;
    end;
end;
//убирает двойной 0
function inarr(var arr:arra; val:integer): boolean;
var i:integer; stop:boolean;
begin
  stop:=false;
  for i:=0 to 12 do
    if arr[i] = val then stop:=true;
  inarr:=stop;
  
end;
begin
writeln('Индекс (i)':26, 'Значение M[i]':16);
  for i:=0 to n do
    begin
      repeat
      poss:=Random((b-a)+1)+a;
      until (not inarr(m1, poss));
      m1[i]:=poss;
      writeln(i:18, m1[i]:16);
    end;
writeln;
//поиск максимума
max:=m1[0];
for i:=0 to n do
  begin
    if m1[i] > max then
      begin
      max:=m1[i];
      inde:=i;
    end;
  end;
writeln('MAX M1[',inde,']=', max);
writeln;
m2:=m1;
sort(m1, n);
for i:=0 to n do
  for j:=0 to n do
   begin
      if m2[i] = m1[j] then
        Ina[j]:= i;
    end;
writeln(); 
graph(m2, n);
writeln(); 
writeln(m1);
end.
https://priscree.ru/img/73c66cabc26d16.png
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.12.2020, 18:41
Ответы с готовыми решениями:

Сортировка массива: Сначала положительные по возрастанию, затем отрицательные по возрастанию
#include &lt;QtCore/QCoreApplication&gt; #include &lt;iostream&gt; using namespace std; int main(int argc, char *argv) { QCoreApplication...

Сортировка массива: сначала положительные по возрастанию, потом отрицательные по возрастанию
Пользователь вводит массив чисел,нужно отсортировать его методом выбора,что бы сначала шли положительные числа,потом отрицательные...

Сортировка массива. Упорядочить нечетные элементы массива по возрастанию методом обмена
Упорядочить одномерный массив по возрастанию, методом обмена. (по возрастанию должны быть толбко нечётные элементы)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2020, 18:41
Помогаю со студенческими работами здесь

Сортировка массива по возрастанию суммы делителей элементов этого массива
Задан массив, заполненный случайными целыми положительными числами. Произвести его сортировку в порядке возрастания сумм всех делителей...

Сортировка массива по возрастанию
Нужно сортировать массив по возрастанию с помощью линейной сортировки(нельзя использовать встроенные функции min, max, sort). Мой код...

Сортировка массива по возрастанию
Допустим, что элементы a0 , ..., ai-1 уже упорядочены, тогда среди оставшихся ai , ..., an-1 находим минимальный элемент и меняем его...

Сортировка массива по возрастанию
Необходимо данный массив отсортировать по возрастанию, исключив одинаковые элементы. Помогите пожалуйста! #include &lt;stdio.h&gt; ...

Сортировка массива по возрастанию
Помогите сделать вместо сортировки по убыванию,сортировку по возрастанию #include &lt;iostream&gt; #include &lt;algorithm&gt; ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru