Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <ctime>
- #include <Windows.h>
- using namespace std;
- void SortArray(int Array[], int size);
- bool SearchArray(int Array[], int size, int ValueToFind);
- int RandomNumberGen(int NumbersToGenerate);
- int main()
- {
- const int size = 50;
- int Array[size];
- int NumbersToGenerate = 50,
- NumberToSearchFor = 0;
- cout << "Generating numbers...." << endl;
- for (int i = 0; i < size; i++)
- {
- Array[i] = RandomNumberGen(NumbersToGenerate);
- NumbersToGenerate--;
- }
- SortArray(Array, size);
- for (int i = 0; i < size; i++)
- {
- cout << "#" << i + 1 << " = " << Array[i] << endl;
- }
- cout << "Which number would you like to search for?" << endl;
- cin >> NumberToSearchFor;
- bool Found = SearchArray(Array, size, NumberToSearchFor);
- if (Found)
- {
- cout << "Number Found!" << endl;
- }
- else
- {
- cout << "Search Failed" << endl;
- }
- return EXIT_SUCCESS;
- }
- void SortArray(int Array[], int size)
- {
- for (int i = 0; i < size; i++)
- {
- for (int l = 0; l < size - 1; l++)
- {
- int temp;
- if (Array[l] > Array[l + 1])
- {
- temp = Array[l];
- Array[l] = Array[l + 1];
- Array[l + 1] = temp;
- }
- }
- }
- }
- bool SearchArray(int Array[], int size, int ValueToFind)
- {
- bool Found = false;
- int Low = 0,
- Mid = size / 2,
- High = size - 1;
- while (!Found)
- {
- if (Array[Mid] == ValueToFind)
- {
- Found = true;
- return true;
- }
- else if (ValueToFind > Array[Mid])
- {
- Low = Mid + 1;
- Mid = (Low + High) / 2;
- }
- else if (ValueToFind < Array[Mid])
- {
- High = Mid - 1;
- Mid = (Low + High) / 2;
- }
- else
- {
- cout << "Unknown Error" << endl;
- return EXIT_FAILURE;
- }
- }
- }
- int RandomNumberGen(int NumbersToGenerate)
- {
- srand(time(NULL));
- int RandomNum = rand() % 255 + 1;
- Sleep(600);
- return RandomNum;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement