Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/40: Рейтинг темы: голосов - 40, средняя оценка - 4.58
0 / 0 / 1
Регистрация: 07.11.2009
Сообщений: 67
1

Сортировка вставкой по ключу в одномерном массиве

05.04.2010, 14:55. Показов 7306. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
8. Ключ: дата начала работы. Сортировка вставкой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.04.2010, 14:55
Ответы с готовыми решениями:

Поиск ключу в одномерном массиве структур
Найти сотрудника, работающего с 1975 года.

Пузырьковая сортировка в одномерном массиве
Нужно сортировать пузырьком одномерный массив, конкретно надо сортировать те элементы, которые ниже...

Сортировка по убыванию в одномерном массиве
Сформировать одномерный массив действительными случайными числами в диапазоне (K, L), N=12....

Легкая сортировка в одномерном массиве
Помогите, пожалуйста, с сортировкой данного массива по возрастанию. Я полный профан в Си,...

11
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
15.04.2010, 16:57 2
понятно
0
Эксперт JavaЭксперт С++
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
15.04.2010, 17:10 3
RAMON@, напишите полностью задание
0
0 / 0 / 1
Регистрация: 07.11.2009
Сообщений: 67
15.04.2010, 17:14  [ТС] 4
В программе, составленной при выполнении лабораторной работы №9, вы-полнить сортировку заданным методом по неубыванию массива структур по указанному в индивидуальном задании ключу.

8. Ключ: дата начала работы. Сортировка вставкой.
0
Эксперт JavaЭксперт С++
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
15.04.2010, 17:28 5
RAMON@, понимаете, мне не сложно обернуть в структуру/класс три значения типа short, но вам оно надо? Что за структура, какие у нее поля кроме даты начала работы?

Прочитайте https://www.cyberforum.ru/cpp-... 17474.html
0
0 / 0 / 1
Регистрация: 07.11.2009
Сообщений: 67
15.04.2010, 18:52  [ТС] 6
сдесь нужно отсортировать методом вставки!!!! вот а отсортировать нужно ключ..а именнодата, начало работы!!

C++
1
2
3
4
5
6
7
8
9
10
11
void S_Vst (int a[], int n)
{
int i, j, t;
for(i=1; i<n; i++) // Перебор элементов
{
t = a[i]; // Выбор элемента
for(j = i-1; j >= 0 && t < a[j]; j--) // Поиск необходимой позиции
a[j+1] = a[j]; // для втавки элемента
a[j+1] = t; // Вставка элемента
}
}
вот пример!!
0
Эксперт JavaЭксперт С++
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
15.04.2010, 19:16 7
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>
struct Employee
{
    int year;
};
void S_Vst (Employee a[], int n)
{
    int i, j;
    Employee t;
    for(i=1; i<n; i++) // Перебор элементов
    {
        t = a[i]; // Выбор элемента
        for(j = i-1; j >= 0 && t.year < a[j].year; j--) // Поиск необходимой позиции
            a[j+1] = a[j]; // для втавки элемента
        a[j+1] = t; // Вставка элемента
    }
}
int main()
{
    setlocale(LC_ALL, "Russian");
    const int n = 2;
    Employee emp[n];
    int i;
    std::cout<<"Введите год приема на работу: \n";
    for(i = 0; i < n; ++i)
        std::cin>>emp[i].year;
    S_Vst(emp, n);
    std::cout<<"Отсортировано: \n";
    for(i = 0; i < n; ++i)
        std::cout<<emp[i].year<<std::endl;
    system("pause");
    return 0;
}

ЗЫ. Я так понял вам ваше задание надо не больше чем мне
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
14.05.2010, 14:10 8
А сама структура то хоть какая?
0
0 / 0 / 1
Регистрация: 07.11.2009
Сообщений: 67
14.05.2010, 14:13  [ТС] 9
массив структур.. что еще какие то есть?
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
14.05.2010, 14:17 10
чтобы сделать массив структур, необходимо сначала сделать саму структуру
0
0 / 0 / 1
Регистрация: 07.11.2009
Сообщений: 67
14.05.2010, 14:22  [ТС] 11
хм.. незнаю.. задание такое.. СОРТИРОВКА ПО КЛЮЧУ ОДНОМЕРНЫХ МАССИВОВ СТРУКТУР.
вы-полнить сортировку заданным методом по неубыванию массива структур по указанному в индивидуальном задании ключу.Ключ: дата начала работы. Сортировка вставкой.
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
14.05.2010, 15:08 12
Сложно конечно вот так догадываться, но думаю это то что нужно
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
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
#include <cstdio>
#include <cstdlib>
 
struct Date
{
   int day;
   int month;
   int year;
};
 
bool DatePred(Date * a, Date * b)
{
   if(a->year > b->year)
      return true;
   else if(a->month > b->month)
      return true;
   else if(a->day > b->day)
      return true;
 
   return false;
}
 
struct Worker
{
   char name[32];
   Date date;
};
 
void structAdd(struct Worker * w)
{
   printf("Enter the Name: ");
   scanf("%s", &(w->name));
 
   printf("Enter the date of work begin: \n");
   printf("-\tEnter the day: ");
   scanf("%d", &(w->date.day));
   printf("-\tEnter the month: ");
   scanf("%d", &(w->date.month));
   printf("-\tEnter the year: ");
   scanf("%d", &(w->date.year));
}
 
void structPrint(struct Worker * w)
{
   printf("%s : %d %d %d\n", w->name, w->date.day, w->date.month, w->date.year);
}
 
void structSort(struct Worker * w, int l, int r)
{
    int i = 0;
    for(i = r; i > l; i--)
      if(DatePred(&(w[i-1].date), &(w[i].date)))
      {
         Worker t = w[i-1];
         w[i-1] = w[i];
         w[i] = t;
      }
    for(i = l+2; i <= r; i++)
    {
        int j = i;
        Worker v = w[i];
        while(!DatePred(&(v.date), &(w[j-1].date)))
        {
            w[j] = w[j-1];
            j--;
        }
        w[j] = v;
    }
}
 
#define SIZE 3
 
int main()
{
   Worker w[SIZE];
 
   for(int i = 0; i < SIZE; ++i)
   {
      structAdd(&w[i]);
      printf("\n");
   }
 
   for(int i = 0; i < SIZE; ++i)
      structPrint(&w[i]);
   printf("\n");
 
   structSort(w, 0, SIZE - 1);
   for(int i = 0; i < SIZE; ++i)
      structPrint(&w[i]);
   printf("\n");
 
   system("pause");
}
0
14.05.2010, 15:08
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.05.2010, 15:08
Помогаю со студенческими работами здесь

сортировка в одномерном массиве (помогите сделать)
В массиве состоящем из n элементов все отрицательные элементы отправить в его хвост.

Сортировка чётных элементов в одномерном массиве
Отсортировать положительные элементы массива, стоящие на четных местах по убыванию методом...

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

Разработать программу сортировки: сортировка перестановкой, сортировка вставкой, быстрая сортировка
Задание: Разработать программу сортировки: - сортировка перестановкой - сортировка...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Как запретить подсветку выделенного текста с помощью CSS
InfoMaster 20.01.2025
Подсветка текста при выделении является стандартным поведением браузера, которое не всегда соответствует дизайнерским решениям или функциональным требованиям веб-приложения. Выделение текста может. . .
Как выполнить другую программу или системную команду из Python
InfoMaster 20.01.2025
Python предоставляет мощные инструменты для выполнения системных команд и управления внешними процессами, что делает его идеальным выбором для автоматизации различных задач системного. . .
Как узнать директорию bash-скрипта из самого bash-скрипта
InfoMaster 20.01.2025
При разработке bash-скриптов одной из важных задач является определение директории, в которой находится исполняемый скрипт. Это критически важно для корректной работы с файлами, загрузки конфигураций. . .
В чем разница между let и var в JavaScript
InfoMaster 20.01.2025
JavaScript прошел длинный путь эволюции с момента своего создания в 1995 году. Одним из важнейших аспектов развития языка стало совершенствование механизмов объявления и управления переменными. . . .
Эффективная работа со строками в Go
InfoMaster 20.01.2025
Язык программирования Go предлагает уникальный подход к работе со строками, который существенно отличается от многих других языков программирования. В Go строки представляют собой неизменяемые. . .
Как проверить, что отображение (map) содержит ключ в Go
InfoMaster 20.01.2025
Отображения (maps) в языке программирования Go представляют собой мощные структуры данных, которые позволяют хранить пары ключ-значение и обеспечивают быстрый доступ к данным по уникальным. . .
Как организовать домашнее хранилище фильмов с общим доступом для всей семьи
InfoMaster 20.01.2025
Преимущества домашнего медиасервера В современном мире, где цифровой контент стал неотъемлемой частью нашей жизни, организация домашнего медиасервера становится все более актуальной задачей. . . .
Перспективы развития жестких дисков: есть ли у них будущее?
InfoMaster 20.01.2025
История и эволюция жестких дисков История развития жестких дисков начинается в 1956 году, когда компания IBM представила первое устройство для хранения данных на магнитных пластинах - IBM 350. . .
Распознавание изображений (компьютерное зрение) на C++
InfoMaster 20.01.2025
Введение в компьютерное зрение и основы работы с изображениями Компьютерное зрение представляет собой одну из наиболее динамично развивающихся областей информационных технологий, позволяющую. . .
Какой язык программировани­я лучший для разработки нейронных сетей
InfoMaster 20.01.2025
В современном мире технологий искусственные нейронные сети становятся неотъемлемой частью множества инновационных решений, от распознавания речи до автоматического управления транспортными. . .
Как подключить JavaScript файл в другом JavaScript файле
InfoMaster 20.01.2025
В современной веб-разработке организация кодовой базы играет ключевую роль в создании масштабируемых и поддерживаемых приложений. Модульность и правильное структурирование кода стали неотъемлемыми. . .
Как откатить изменения в исходниках, не внесенные в Git
InfoMaster 20.01.2025
При работе с системой контроля версий Git разработчики часто сталкиваются с необходимостью отменить внесенные изменения в исходном коде. Особенно актуальной становится ситуация, когда изменения еще. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru