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

Сортировка по возрастанию методом вставок

06.02.2018, 18:27. Показов 16547. Ответов 6

Студворк — интернет-сервис помощи студентам
Массив из 5 целых чисел заполнить вводом с клавиатуры.Произвести сортировку массива по возрастанию методом вставок. Заполнение массива произвести до начала сортировки. После каждого прохода выводить содержимое массива.
Входные данные Результат работы
1 3 2 5 4 1 3 2 5 4
1 3 2 5 4
1 2 3 5 4
1 2 3 4 5
Помогите пожалуйста! При написании используйте scanf() и printf() мне так более понятно и как можно более просто и понятно если не трудно приложите пояснения к коду.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.02.2018, 18:27
Ответы с готовыми решениями:

Сортировка методом вставок
Заполнить массив размером 20 случайными числами в диапазоне от 0 до 200. Во второй массив выбрать все двузначные элементы, отсортированные...

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

Сортировка методом вставок
Заполнить массив размером 20 случайными числами в диапазоне от 0 до 200. Во второй массив выбрать все двузначные элементы, отсортировать...

6
0 / 0 / 0
Регистрация: 22.01.2018
Сообщений: 6
06.02.2018, 19:15  [ТС]
Проблема не в том что не могу отсортировать а не могу выводить весь массив каждый прогон через цикл
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.02.2018, 19:17
Dmitry1999, код в студию
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
06.02.2018, 19:23
Dmitry1999, вот здесь подробненько: Алгоритмы сортировок
Цитата Сообщение от Dmitry1999 Посмотреть сообщение
При написании используйте scanf() и printf() мне так более понятно
Вы в разделе С++. Используйте cin>>a; для ввода и cout <<a; для вывода - абсолютно нет ничего сложного.
Прочитайте про эти операторы чтобы использовать их дополнительные возможности.
1
0 / 0 / 0
Регистрация: 22.01.2018
Сообщений: 6
06.02.2018, 19:24  [ТС]
Вот мой код:
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
#include<stdio.h>
#include<stdlib.h>
#define n 5
int main()
{
 int a[n],i,k=0,temp,t;
 for (i=0;i<n;i++)
 {
   scanf("%i";&a[i]);
 }
 for(t=0;t<n;t++)
 { 
    for(i=1;i<=n;i++)
     {
       temp=a[i-1];
       k=i-1;
      }
          while(k>0 && temp<a[k-1])
          {
             a[k]=a[k-1];
             k--;
             printf("%i",a[k]);
           }
   a[k]=temp;
   printf("\n" " %i",a[k]);
 }
}
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.02.2018, 19:38
Лучший ответ Сообщение было отмечено Dmitry1999 как решение

Решение

Форматирование кода выполняется кнопкой "С++" вторая строка слева

Цитата Сообщение от Dmitry1999 Посмотреть сообщение
Проблема не в том что не могу отсортировать а не могу выводить весь массив каждый прогон через цикл
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
#include <stdio.h>
#include <stdlib.h>
 
const int n = 5;
 
int main()
{
    int a[n], i, k = 0, temp, t;
    for (i = 0; i < n; i++)
    {
        scanf("%i"; &a[i]);
    }
    for (t = 0; t < n; t++)
    {
        for (i = 1; i <= n; i++)
        {
            temp = a[i - 1];
            k = i - 1;
        }
        while (k > 0 && temp < a[k - 1])
        {
            a[k] = a[k - 1];
            k--;
            printf("%i", a[k]);
        }
        a[k] = temp;
        printf("\n %i", a[k]);
    }
}
Этот код у вас даже не скомпилируется на строке scanf("%i"; &a[i]);

Добавлено через 8 минут
Dmitry1999,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const int n = 5;
 
int main()
{
    int a[n];
    for (int i = 0; i < n; ++i)
        scanf("%i", a + i);
    for (int i = 0, x, j; i < n; ++i)
    {
        x = a[i];
        for (j = i - 1; j >= 0 && a[j] > x; --j) a[j + 1] = a[j];
        a[j + 1] = x;
        // print result
        for (j = 0; j < n; printf("%d ", a[j++]));
        printf("\n");
    }
}
а надо было всего то взять пример что я дал по ссылке и на для каждого шага добавить вывод.
1
0 / 0 / 0
Регистрация: 22.01.2018
Сообщений: 6
06.02.2018, 20:03  [ТС]
Спасибо огромное!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.02.2018, 20:03
Помогаю со студенческими работами здесь

Сортировка методом простых вставок
Сортировка методом простых вставок - алгоритм S с. Вычисление трудоемкости Замер времени для отсортированного массива, отсортированного в...

Сортировка методом центрированных вставок
Доброго времени суток. Помоги доделать программу. Я решил сделать эту сортировку через массивы(возможно зря)). И теперь, допусти если у...

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

Сортировка списка методом простых вставок
Помогите сделать чтобы в программе были двусвязные списки и чтобы списки из файла выводились в нормальном порядке (как в файлах), а не с...

Сортировка диагоналей матрицы методом Шелла/вставок
Дана матрица размерностью n*n, содержащая целые числа. Отсортировать диагонали матрицы, параллельные побочной, по возрастанию элементов...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
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. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru