impressive_i

Поиск и время работы алгоритма C++

Sep 20th, 2020 (edited)
129
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Поиск элемента в большом одномерном массиве
  2. // Время работы алгоритма простого поиска
  3. // by impressive
  4.  
  5. #include "stdafx.h"
  6. #include "iostream"
  7. #include "ctime"
  8.  
  9. using namespace std;
  10.  
  11. int main() {
  12.     setlocale(LC_ALL, "Rus");
  13.     /* чтобы начальное число, к которому привязан метод rand(),
  14.        менялось с каждым запуском программы */
  15.     srand(time(0));
  16.    
  17.     const int array_size = 200;    // размер одномерного массива
  18.     int arr[array_size];          // объявление одномерного массива
  19.  
  20.     for (int counter = 0; counter < array_size; counter++) {
  21.         // заполняем массива случайными числами в диапазоне от -49 до 49
  22.         arr[counter] = rand() % 50 - rand() % 50;
  23.         cout << arr[counter] << " ";
  24.     }
  25.  
  26.     unsigned int start_time = clock(); // начальное время
  27.    
  28.     int min = arr[0];
  29.     for (int counter = 1; counter < array_size; counter++) {
  30.         if (arr[counter] < min) {
  31.             min = arr[counter];
  32.         }
  33.     }
  34.     cout << " min = " << min << endl;
  35.  
  36.     unsigned int end_time = clock(); //конечное время
  37.     unsigned int search_time = end_time - start_time;
  38.     cout << "Число тактов в секунду: " << CLOCKS_PER_SEC << endl;
  39.     cout << " Время работы программы: " << search_time / (double) CLOCKS_PER_SEC << " сек" << endl;
  40.  
  41.     //Ожидание, позволяющее увидеть результат программы
  42.     cout << " Нажмите Enter для продолжения ... " << endl;
  43.     cin.ignore(10, '\n');
  44.     cin.get();
  45.  
  46.     return 0;
  47. }
RAW Paste Data