Форум программистов, компьютерный форум CyberForum.ru

Сортировать элементы произвольного массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ CheckBoxs или RadioButton http://www.cyberforum.ru/cpp-beginners/thread521684.html
Добрый вечер Всем! Подскажите возможно ли как нибудь CheckBoxсе или RadioButtonе в свойстве Caption разделить текст названия на 2 или 3 строки, на фуруме нашел как проделать это с лейблом вроде так форма1->Лейбл1->Caption="Длинный текст" "\n кнопки. а как с CheckBoxсом или RadioButtonом? Добавлено через 13 часов 40 минут Идей ни каких я так понимаю? Народ очень нужно, название в CheckBoxсе...
C++ Робота с класами решить помогите http://www.cyberforum.ru/cpp-beginners/thread521682.html
переворот двумерного массива на 90 градусов C++
Двумерный массив передать в функцию и перевернуть его на 90 градусов, результат вывести в main.
рекурсия C++
Сделать рекурсию, кроме факториала!
C++ Работа с функциями http://www.cyberforum.ru/cpp-beginners/thread521661.html
#include "stdafx.h" #include <iostream> #include<CONIO.H> #include<STDIO.H> #include <time.h> #include <stdlib.h> #include<math.h> using namespace std; int _tmain(int argc, _TCHAR* argv)
C++ Прокомментируйте функцию Всем привет =) не могу разобраться с функцией - помогите разобраться, прокомментируйте плиз, особенно непонятен момент с ассемблером =( Функция умножения L-словных сомножителей: // A – массив 32-х битных слов 1-го сомножителя; // B – массив 32-х битных слов 2-го сомножителя; // P – массив 32-х битных слов произведения; // L – количество 32-х битных слов в каждом сомножителе. void... подробнее

Показать сообщение отдельно
sandye51
программист С++
681 / 583 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
18.03.2012, 19:19     Сортировать элементы произвольного массива
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
//
//  main.cpp
//  test
//
//  Created by Ilya Lavrenov on 3/18/12.
//  Copyright (c) 2012 [email]sandye64@gmail.com[/email]. All rights reserved.
//
 
#include <stdio.h>
#include <stdlib.h>
 
struct a 
{
    int value;
};
 
int comp(void* ar, unsigned int i, unsigned int j)
{
    struct a* arr = (struct a*)ar;
    if (arr[i].value > arr[j].value)
        return 1;
    else 
        if (arr[i].value < arr[j].value)
            return -1;
        return 0;
}
 
int _comp(void* ar, unsigned int i, unsigned int j)
{
    return -comp(ar, i , j);
}
 
void swap(void* ar, unsigned int i, unsigned int j)
{
    struct a* aa = (struct a*)ar;
    struct a tmp = aa[i];
    aa[i] = aa[j];
    aa[j] = tmp;
}
 
void sort(void* a, unsigned int size, int (comp)(void*, unsigned int, unsigned int), 
          void(swap)(void*, unsigned int, unsigned int))
{
    unsigned int iterations = 0;
    int next = 1;
    
    while (next > 0)
    {
        next = -1;
        for (unsigned int i = 0; i < size - 1 - iterations; ++i)
            if (comp(a, i, i + 1) > 0)
            {
                swap(a, i, i + 1);
                next = 1;
            }
        ++iterations;
    }
}
 
#define size 5
 
int main(int argc, const char * argv[])
{
    struct a v[size];
    
    for (unsigned int i = 0; i < size; ++i)
        v[i].value = rand() % 100;
    
    printf("Under\n");
    for (unsigned int i = 0; i < size; ++i)
        printf("%d\n", v[i].value);
 
    sort(v, size, &_comp, &swap);
    printf("After\n");
    for (unsigned int i = 0; i < size; ++i)
        printf("%d\n", v[i].value);
    
    system("Pause");
    return EXIT_SUCCESS;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru