PlotnikovPhilipp

Untitled

Apr 1st, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. using namespace std;
  4.  
  5. int main() {
  6. setlocale(LC_ALL, "ru");
  7. cout << "Привет, ты написал, наконец, первую программу, как-то связанную с алгоритмами!"<<endl;
  8. cout << "Введи кол-во элементов в массиве: ";
  9. int amount;
  10. cin >> amount;
  11. double inter = clock();
  12. int* array = new int[amount];
  13. for (int i = 0; i < amount; i++) {
  14. srand(time(NULL));
  15. array[i] = rand() % 100;
  16. }
  17.  
  18. int low = 101;
  19. int* array2 = new int[amount];
  20.  
  21. for (int j = 0; j < amount; j++) {
  22. for (int i = 0; i < amount; i++) {
  23. if (low > array[i]) low = array[i];
  24. }
  25. array2[j] = low;
  26. }
  27.  
  28. double inter2 = clock();
  29. inter2 -= inter;
  30. cout << "Введи число, которое ты хочешь найти: ";
  31. int number;
  32. cin >> number;
  33.  
  34. double inter3 = clock();
  35. int result = 0, last = amount-1, mid = 0;
  36. low = 0;
  37.  
  38. while (low <= last) {
  39. mid = (low+last)/2;
  40. if (array2[amount] > number) last = mid - 1;
  41. else if (array2[amount] < number) low = mid + 1;
  42. else break;
  43. }
  44. double inter4 = clock();
  45. inter4 -= inter3;
  46. cout << "Твое число: " << result << endl;
  47. delete[] array;
  48. delete[] array2;
  49. cout << "Время работы программы: " << (inter2+inter4)/CLOCKS_PER_SEC << endl;
  50. system("pause");
  51. return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment