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

Время доступа к элементам вектора. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Функция pow и график http://www.cyberforum.ru/cpp-beginners/thread573453.html
Всем привет! Пишу программу, которая аппроксимирует функцию разной степенью полинома и по полученному графику делает прогноз. Так вот, в ходе работы пока что возникли 2 ошибки, которые никак не пойму. 1) Функция pow постоянно выдает ошибку pow: DOMAIN error, хотя программа продолжает работать и все нормально вычисляет. Что вообще за ошибка и как от нее можно избавиться? 2) Когда получаю...
C++ Задача на С++ подскажите Составить программу, в которой сформировать динамический двумерный массив В, состоящий из k строк и p столбцов, в отдельной функции вычислить произведение элементов, имеющих значение, кратные 3. http://www.cyberforum.ru/cpp-beginners/thread573447.html
C++ Дружественные функции
создать класс работы с единицами измерения, создать дружественную функцию для дружественного класса, переводя меры жидких тел из Бария в Британскую пинту.
C++ Поиск методом "золотого сечения"
Ребят, скоро сдавать ргр, в ней нужен алгоритм поиска элемента методом золотого сечения. Подкиньте пожалуйста этот алгоритм, столько в инете страниц перекопал и ничего не смог найти
C++ Открытие сторонней программы с кодом C++ http://www.cyberforum.ru/cpp-beginners/thread573407.html
У меня идея пришла в голову открыть с++ кодом сторонную программу, как с bat-файла с текстом start C:путь файла.ехе . Весь гугл облазил, элементарного способа не нашел. Есть идеи?
C++ Читаем ID3V2 теги в MP3 файлах Добрый день программисты! Я тут занялся ID3V1 тегами public byte TAGID = new byte; public byte Title = new byte; public byte Artist = new byte; public byte Album = new byte; public byte Year = new byte; public byte Comment = new byte; public byte Genre = new byte; подробнее

Показать сообщение отдельно
PhotonDT
 Аватар для PhotonDT
1 / 1 / 0
Регистрация: 11.05.2012
Сообщений: 5
14.05.2012, 09:42  [ТС]     Время доступа к элементам вектора.
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
#include<iostream>
#include<fstream>
#include<vector>
#include<time.h>
#pragma comment(linker, "/STACK:1000000000")
#define forn(i,n) for(int i=0;i<n;i++)
const int n=1000;
using namespace std;
int main()
{
    setlocale(LC_ALL,"Russian");
    fstream f,g;
    f.open("out.txt",fstream::out);
    g.open("time.txt",fstream::app);
    clock_t clock();
    srand ( time(NULL) );
    int aT1,aT2,dT1,dT2,vT1,vT2,x;
    vector<vector<int>> v(n,vector<int>(n));
    int aa[n][n];
    int **dda=new int*[n];
    forn(i,n)
        dda[i]=new int[n];
    forn(i,n)
        forn(p,n)
    {
        x=rand()%100+1;
        aa[i][p]=x;
        dda[i][p]=x;
        v[i][p]=x;
    }
    aT1=clock();
    forn(i,n)
        forn(p,n)
        f<<aa[i][p];
    aT2=clock();
    dT1=clock();
    forn(i,n)
        forn(p,n)
        f<<dda[i][p];
    dT2=clock();
    forn(i,n)
        delete[]dda[i];
    delete[]dda;
    vT1=clock();
    forn(i,n)
        forn(p,n)
        f<<v[i][p];
    vT2=clock();
    g<<aT2-aT1<<endl;
    g<<dT2-dT1<<endl;
    g<<vT2-vT1;
    g.close();
    g.open("time.txt",fstream::in);
    int k1=0,k2=0,k3=0;
    float t1=0,t2=0,t3=0;
    while(!g.eof())
    {
        g>>x;
        t1+=x;
        k1++;
        g>>x;
        t2+=x;
        k2++;
        g>>x;
        t3+=x;
        k3++;
    }
    g.close();
    g.open("time.txt",fstream::app);
    g<<endl;
    t1/=k1;
    t2/=k2;
    t3/=k3;
    cout<<aT2-aT1<<" это последнее приблизительное время доступа к элементам двумерного статического массива"<<endl;
    cout<<dT2-dT1<<" это последнее приблизительное время доступа к элементам двумерного динамического массива"<<endl;
    cout<<vT2-vT1<<" это последнее приблизительное время доступа к элементам двумерного вектора"<<endl<<endl;
    cout<<t1<<" это среднее время доступа к элементам статического массива"<<endl;
    cout<<t2<<" это среднее время доступа к элементам динамического массива"<<endl;
    cout<<t3<<" это среднее время доступа к элементам вектора"<<endl;
    system("PAUSE");
    return 0;
}
Вот тоже, только для двумерного случая.
 
Текущее время: 02:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru