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

шаблон функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ алгоритмы сортировки массивов http://www.cyberforum.ru/cpp-beginners/thread522199.html
помогите пожалуйста решить задачу на с++... Если у массива А(50) есть элемент, равный квадрату последнего элемента, то все элементы, следующие за ним, упорядочить по возрастанию методом вставки.
C++ Инвертировать все биты в старшем байте числа. Инвертировать все биты в старшем байте числа. http://www.cyberforum.ru/cpp-beginners/thread522197.html
C++ Написать программу на С++
Разработать интерфейс для работы с файлами, позволяющий читать и писать в произвольную позицию в файле, и выполнить его реализацию. Предусмотреть события, оповещающие об ошибках.
C++ Написать многопоточное приложение
Один поток используется для вычисления x по формуле x=t*t+3t+4, где t-величина, зависящая от системного времени, а второй поток— для вычисления y по формуле y=2x+6, где x— вычислен в первом потоке
C++ Объясните код программы http://www.cyberforum.ru/cpp-beginners/thread522179.html
Объясните пожалуйста программу!!! Добавлено через 44 секунды #include <iostream> #include <math.h> #include <iomanip> using namespace std; class MyClass {
C++ Посмотрите ошибки STL #include <iostream> #include <map> #include <utility> #include <string> #include <fstream> #include <queue> #include <algorithm> using namespace std; ifstream in("input.txt"); подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
19.03.2012, 14:00
Код ниже создаёт целочисленную и вещественную матрицу заполненных случ числам
Потом посредством шаблона функции вывода мы светим эти массивы(одна функция работает с целыми и вещественными), а затем шаблоном getSum(int size, T ** arr, T &sum) находим сумму элементов выше главной диагонали и их число, затем поделив sum/count получаем ср арифметическое
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
//http://www.cyberforum.ru/cpp-beginners/thread522205.html#post2811596
#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;
 
template <class T>
long getSum(int size, T ** arr, T &sum)
{
    int i, j;
    sum = 0;
    long count = 0;
    for(i = 0; i < size; i++) 
    for(j = 0; j < size; j++)
    {
        if(i < j)
        {
            sum += arr[i][j];
            count++;
        }
    }
    return count;
}
 
template <class T>
void outvec(int size, T * vec)
{
    for(int i = 0; i < size; i++)
        cout<<setw(4)<<vec[i]<<" ";
    cout<<endl;
}
 
template <class T>
void outarr(int size, T ** arr)
{
    for(int i = 0; i < size; i++)
        outvec(size, arr[i]);
}
 
int main()
{
    int i,j,size;
    cout<<"Enter size : ";cin>>size;
    int ** i_mas    = new int   *[size];
    double ** d_mas = new double*[size];
    int    i_sum = 0;
    double d_sum = 0;
    srand(time(NULL));
    for(i = 0; i < size; i++)
    {
        i_mas[i] = new int[size];
        d_mas[i] = new double[size];
        for(j = 0; j < size; j++)
        {
            i_mas[i][j] = rand()%10 - 5;
            d_mas[i][j] = (rand()%100 - 50)/10.0;
        }
    }
    cout<<"Int    array :\n";
    outarr(size,i_mas);
    cout<<"Double array :\n";
    outarr(size,d_mas);
    long count = getSum(size, i_mas, i_sum);
    cout<<"srArifm    int Array = "<<(1.0*i_sum)/count<<endl;
    count = getSum(size, d_mas, d_sum);
    cout<<"srArifm double Array = "<<(1.0*d_sum)/count<<endl;
    delete [] i_mas;
    delete [] d_mas;
    system("pause");
    return 0;
}
Миниатюры
шаблон функции  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru