Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 17.09.2020
Сообщений: 58

Сортировка массива

28.09.2020, 10:59. Показов 1643. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача:

 Комментарий модератора 
Задание из изображения:

Из входных данных ваша программа должна прочитать N (1<=N<=100) -
общее количество временных интервалов, которые должны быть отсортированы.
Каждая строка содержит данные в следующем формате Чч Мм Сс
Чч (часы) - от 0до 23
Мм (минуты) - от 0 до 59
Сс (секунды) - от 0 до 59

Выходные данные должны содержать неубывающую последовательность промежутков времени

Input sample:
4
10 20 30
7 30 00
23 59 59
13 30 30

Output sample:
7 30 0
10 20 30
13 30 30
23 59 59


мой код но что то не правильно работает. Помогите пожалуйста


C++
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
#include <iostream>
using namespace std;
 
int main(){
  int n;
  cin >> n;
  int arr[n][3];
  for(int i=0;i<n;i++){
    for(int j=0;j<3;j++){
      cin >> arr[i][j];
    }
  }
  for(int k=0;k<n;k++){
    for(int i=0;i<n;i++){
    for(int j=0;j<3;j++){
      for(int m=0;m<3-1;m++){
      if(arr[i][0] > arr[i+1][0]){
        swap(arr[i][0],arr[i+1][0]);
        swap(arr[i][1],arr[i+1][1]);
        swap(arr[i][2],arr[i+1][2]);
      }
      if(arr[i][0] == arr[i+1][0] && arr[i][1] > arr[i+1][1]){
        swap(arr[i][0],arr[i+1][0]);
        swap(arr[i][1],arr[i+1][1]);
        swap(arr[i][2],arr[i+1][2]);
      }
      if(arr[i][0] == arr[i+1][0] && arr[i][1] == arr[i+1][1] && arr[i][2] > arr[i+1][2]){
        swap(arr[i][0],arr[i+1][0]);
        swap(arr[i][1],arr[i+1][1]);
        swap(arr[i][2],arr[i+1][2]);
      }
      }
    }
    }
  }
  for(int i=0;i<n;i++){
    for(int j=0;j<3;j++){
      cout << arr[i][j] << " ";
    }
    cout << '\n';
  }
  return 0;
}
Вложения, ожидающие проверки
Тип файла: jpg Desktop_200928_1358.jpg
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.09.2020, 10:59
Ответы с готовыми решениями:

Как работает время в программе, почему сортировка массива на 1000 элементов быстрее, чем сортировка массива на 8?
#include &lt;iostream&gt; #include &lt;chrono&gt; #include &lt;cmath&gt; #include &quot;List.h&quot; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; //генератор...

Быстрая сортировка(сортировка Хоара). Отсортировать фрагмент массива
Мне нужно отсортировать фрагмент массива, расположенный между первым и последним отрицательным элементом. Немогу понять как устоновить...

Сортировка Шелла по убыванию, сортировка массива с файла
В задании нужно чтобы массив был взят из файла или сгенерирован, и упорядочен по возрастанию и убыванию. Не понимаю как передать массив...

3
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
28.09.2020, 11:33
anonymys56964, это был последний раз, когда я поработал секретарем!
В дальнейшем Ваши задания в картинках буду блокировать!

И код научитесь уже оформлять в тегах... Кнопка С++ у Вас перед глазами...
0
0 / 0 / 0
Регистрация: 17.09.2020
Сообщений: 58
28.09.2020, 12:29  [ТС]
хорошо извиняюсь
0
из племени тумба-юбма
 Аватар для мама Стифлера
2523 / 1819 / 419
Регистрация: 29.11.2015
Сообщений: 8,857
Записей в блоге: 15
28.09.2020, 12:30
Лучший ответ Сообщение было отмечено anonymys56964 как решение

Решение

C++
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
#include <iostream>
using namespace std;
 
int main()
{
    int n;
    cin >> n;
    int arr[n][3];
    for(int i=0; i<n; i++) {
    cout << "#" << i+1 <<": ";
        for(int j=0; j<3; j++) {
            cin >> arr[i][j];
        }
    }
    cout << '\n';
    for(int j=0; j<n-1; j++) {
        for(int i=j; i<n-1; i++) {
            if(arr[j][0] > arr[i+1][0]) {
                swap(arr[j][0],arr[i+1][0]);
                swap(arr[j][1],arr[i+1][1]);
                swap(arr[j][2],arr[i+1][2]);
            }
        }
    }
    for(int i=0; i<n; i++) {
    cout << "#" << i+1 <<": ";
        for(int j=0; j<3; j++) {
            cout << arr[i][j] << " ";
        }
        cout << '\n';
    }
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.09.2020, 12:30
Помогаю со студенческими работами здесь

Сортировка массива по сумме цифр элементов массива в порядке возрастания(неубывания)
Мне нужно написать программу, которая будет сортировать заданный массив по сумме цифр его элементов в порядке неубывания(возрастания). Я то...

Сортировка массива: перенести положительные числа в начало, а отрицательные - в конец массива
Дан вещественный массив A(N). Отсортировать его таким образом, чтобы все положительные числа находились в начале, а отрицательные - в конце...

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

Сортировка массива. Ошибка после ввода размерности массива
подскажите почему после ввода размерности массива выдает ошибку #include&lt;iostream&gt; #include&lt;cstdlib&gt; #include&lt;conio&gt; ...

Сортировка массива структур через сортировку массива указателей
Ошибка возникает в функции void sort(student **ppStud, int k, char ch). Кто видит ошибку - помогите, пожалуйста. Код программы: ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Программный отбор элементов справочника Номенклатура по группе 1С
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор под наименованию группы (на. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор элементов справочника Сотрудники по перечислениям 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru