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

Классы и функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ 5 программ. Срочно http://www.cyberforum.ru/cpp-beginners/thread100133.html
1.Написать программу номер дня недели,название дня недели или сообщение об ошибке ,если введены неверные данные 2.написать программу которая выводит таблицу квадратов первых 10 целых полодительных...
C++ Метод Гаусса для решения СЛАУ с использованием одномерного массива Доброго всем времени суток. У меня есть прога для двумерного массива #include <stdio.h> #include <iostream> #include <conio.h> using namespace std; void f(double an, double bn,int m) { ... http://www.cyberforum.ru/cpp-beginners/thread100119.html
Сумма квадратов цифр любого числа в итоге равняется числу из интервала [1,9]. C++
Помогите решить с объяснениями. Сумма квадратов цифр любого числа в итоге равняется числу из интервала . Вывести количество и сами числа, сумма цифр которых равны либо 1, либо 4, из интервала от 1...
C++ В вещественной матрице размером NxN найти максимальный и минимальный элементы.
Помогите решить с объяснениями. В вещественной матрице размером NxN найти максимальный и минимальный элементы. Переставить строки, в которых они находятся. Если они находятся в одной строке,...
C++ вычисление простых чисел http://www.cyberforum.ru/cpp-beginners/thread100081.html
в книге написана программа, про вычисление простых чисел. #include <iostream> #include <math.h> using namespace std; int main() { int n; bool prostoe = true; double koren =...
C++ Геометрия(треугольник) Даны два угла треугольника (в градусах). Определить, существует ли такой треугольник, и если да, то будет ли он прямоугольным. подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4936 / 2516 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
01.03.2010, 11:48  [ТС]
А если это делается не только для сборки функций в кучку
Например есть функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
template <typename array>
void sort(array * a, int l, int r)
{
    int h;
    for(h = l; h <= (r-l)/9; h = 3*h+1);
    for( ; h > 0; h /= 3)
        for(int i = l+h; i <= r; i++)
        {
            int j = i;
            array v = a[i];
            while(j >= l+h && v < a[j-h])
            {
                a[j] = a[j-h];
                j -= h;
            }
            a[j] = v;
        }
}
и класс массива:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
template <class T>
class Array
{
public:
        Array(int size) { mptr = new T[size]; sorted = false; }
        ~Array()        { delete[] mptr; }
        
        void Sorting(uint left, uint right)
        {
            if(!sorted)
            {
                sort(mptr, left, right);
                sorted = true;
            }
        }
private:
        T * mptr;
        bool sorted;
};
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru