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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Slafira
1 / 1 / 0
Регистрация: 18.10.2010
Сообщений: 113
#1

Время выполнения - C++

18.10.2010, 00:25. Просмотров 1220. Ответов 1
Метки нет (Все метки)

Я здесь в первый раз и ещё не разобралась с форумом, дико извиняюсь если что не так.

Мне нужно чтобы определялось время выполнения программы. Программа на си++ в консоли. И нужно чтоб выводилось сколько времени выполнялась программа, чтоб потом график сделать зависимость количества шагов от времени выполнения.
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
#include <vcl.h>
#pragma hdrstop
 
#include <tchar.h>
#include <iostream.h>
#include <stdio.h>
#include<conio.h>
#include <string.h>
 
//---------------------------------------------------------------------------
 
#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
 int A[10][10];
 int B[10];
 int n;
 int m;
 int f; f=0;
 int min;
     cout << "Vvedite massiv ";
 for (n = 0; n < 3; n++) {
 for (m = 0; m < 3; m++) {
   cin >> A[n][m];
 }
 
 }
     cout << "Poluchennyj massiv\n";
 for (n = 0; n < 3; n++) {
 for (m = 0; m < 3; m++) {
   cout << A[n][m]<<" ";
 }
      cout << "\n";
 }
 
     cout << "Massiv iz summ elementov strok\n";
 for (n = 0; n < 3; n++) {
 for (m = 0; m < 3; m++) {
     f=A[n][m]+f;
 }
  B[n]=f;  f=0;
 }
 for (n = 0; n < 3; n++) {
       cout << B[n]<<" ";
 }
   cout << "\n";
 cout << "Massiv iz proizvedenij elementov strok\n";
 f=1;
 for (n = 0; n < 3; n++) {
 for (m = 0; m < 3; m++) {
     f=A[n][m]*f;
 }
  B[n]=f;  f=1;
 }
 for (n = 0; n < 3; n++) {
       cout << B[n]<<" ";
 }
   cout << "\n";
 cout << "Massiv iz srednih arifeticheskih elementov strok\n";
 
 for (n = 0; n < 3; n++) {
 for (m = 0; m < 3; m++) {
     f=A[n][m]+f;
 }
  B[n]=f/3;  f=0;
 }
 for (n = 0; n < 3; n++) {
       cout << B[n]<<" ";
 }
    for (n = 0; n < 3; n++) {
       if (B[n]<B[n+1]) min=B[n]; else min=B[n+1];
     }
   for (n = 0; n < 3; n++) {
     B[n]=min;
 }
  cout << "\n";
     cout << "Massiv iz naimenshih srednih arifeticheskih elementov strok\n";
       for (n = 0; n < 3; n++) {
       cout << B[n]<<" ";
 }
  char t;
  t = getch();
}
Проблема в том, что я плохо знаю синтаксис, а чтоб в поисковике спросить сформулировать не могу.
у меня задан, что массив три на три, а надо чтоб менялось от 2 до 1000 и чтоб массив заполнялся рандомно. и вот допустим выполнилась программа с массивом 2 на 2 в конце написалось время выполнения там доли секунды должны быть, потом выполнилась с массивом 3 на 3 и в конце опять время выполнения и так далее. необязательно чтоб шаг был 1, можно 100. то есть сначала считается с массивом 2 на 2 потом 102 на 102. Надеюсь понятно выразилась
Очень прошу помочь, буду благодарна!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2010, 00:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Время выполнения (C++):

Время выполнения - C++
Скажите, как я могу сравнить время выполнения 2 функций? Желательно сразу готовый код.

Время выполнения алгоритма - C++
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;time.h&gt; using namespace std; void heapSort(int *a, int size) ; //...

Ошибка во время выполнения - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;fstream&gt; #include &lt;vector&gt; using namespace std; ifstream fin(&quot;input.txt&quot;);...

Время выполнения функции - C++
Вопрос - как можно измерить время выполнения функции? clock() не подходит, т.к функции выполняются быстрее миллисекунды. есть способ как...

Время выполнения(сложность) - C++
Как вычислить время выполнения программы? и что такое NlogN?

Ошибка во время выполнения - C++
есть такой вот кусочек кода, компилириуются без ошибок, а в процессе выполнения ругает int t = 0; ifstream fin; fin.open...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
18.10.2010, 05:57 #2
Вот пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
 
#define N 100000
 
int main(void)
{
    clock_t start = clock();
    size_t i, j, a;
    for(i = 0; i < N; ++i)
        for(j = 0; j < N; ++j)
            a = pow(2, 20);
            
    clock_t finish = clock();
    printf("The program worked %.2f seconds...\n",
             (finish - start) / (double) CLOCKS_PER_SEC);   
    return EXIT_SUCCESS;
}
Как ты наверно догадываешься, эта программа замеряет время выполнения части программы между строками 10 и 16

Вот собственно и оно:
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
 
#define a -100
#define b 100
#define size1 2
#define size2 1000
#define n 15
#define step (size2 - size1) / n
 
int main(void)
{
    srand((size_t) time(NULL));
    size_t i, j, k;
    int matrix[size2][size2];
    clock_t start, finish;
    double t;
    for(i = size1; i <= size2; i += step)
    {
        start = clock();
        
        for(j = 0; j < i; ++j)
            for(k = 0; k < i; ++k)
                matrix[j][k] = rand() % (b - a + 1) + a;
        
        finish = clock();
        t = (finish - start) / (double) CLOCKS_PER_SEC;
        printf("Size = %4u, time = %f\n", i, t);
    }
    
    i = size2;
    
    start = clock();
        
    for(j = 0; j < i; ++j)
        for(k = 0; k < i; ++k)
            matrix[j][k] = rand() % (b - a + 1) + a;
        
    finish = clock();
    t = (finish - start) / (double) CLOCKS_PER_SEC;
    printf("Size = %4u, time = %f\n", i, t);
    return EXIT_SUCCESS;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.10.2010, 05:57
Привет! Вот еще темы с ответами:

Вычислить время выполнения - C++
Помогите пожалуйста вычислить время выполнения данной программы. Уже что только не вставляла, но программа просто не выводит время,...

Время выполнения процедуры в С++ 3.1 - C++
Столкнулся с проблемой. Нужно подсчитать за сколько тактов процессора(времени) выполняется код процедуры. Стандартные функции С++ выдают...

Время выполнения функции - C++
Здравствуйте! Посмотрите пожалуйста, почему у меня время всегда равно 0? #include &quot;stdlib.h&quot; #include &quot;stdio.h&quot; #include &quot;conio.h&quot;...

Время выполнения сортировки - C++
Всем доброго времени суток. Дело такое: задача стоит оценить сортировки по критерию время. Ну я написал нужные сортировки и пытаюсь...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru