Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- void swapVal(int& a, int& b)
- {
- int tmp{};
- std::cout << "a = " << a << " b= " << b << '\n';
- tmp = a;
- a = b;
- b = tmp;
- std::cout << "a = " << a << " b= " << b << '\n';
- }
- void swapValPtr(int* a, int* b)
- {
- int tmp{};
- std::cout << "a = " << *a << " b= " << *b << '\n';
- tmp = *a;
- *a = *b;
- *b = tmp;
- std::cout << "a = " << *a << " b= " << *b << '\n';
- }
- int* createArr(int size)
- {
- int* ptr{ new int[size] };
- for (int i{ 0 }; i < size; ptr[i] = i++);
- return ptr;
- };
- void printArr(int* arr, int size)
- {
- for (int i{ 0 }; i < size; std::cout << arr[i++] << ' ');
- std::cout << '\n';
- }
- void deleteArr(int* ptr)
- {
- delete[] ptr;
- }
- //void calcElementsCount(int* arr, int arrSize, int* zero, int* pos, int* neg)
- //{
- //
- // for (int i{ 0 }; i < arrSize; ++i)
- // {
- // if (arr[i] == 0) { ++(*zero); continue; }
- // if (arr[i] > 0) { ++(*pos); continue; }
- // if (arr[i] < 0) { ++(*neg);}
- // }
- //}
- void calcElementsCount(int* arr, int arrSize, int& zero, int& pos, int& neg)
- {
- for (int i{ 0 }; i < arrSize; ++i)
- {
- if (arr[i] == 0) { ++zero; continue; }
- if (arr[i] > 0) { ++pos; continue; }
- if (arr[i] < 0) { ++neg; }
- }
- }
- void distributeElements(int* arr, int arrSize, int* zeroArr, int* posArr, int* negArr)
- {
- for (int i{ 0 }; i < arrSize; ++i)
- {
- if (arr[i] == 0) {*zeroArr++ = arr[i]; continue; }
- if (arr[i] > 0) { *posArr++ = arr[i]; continue; }
- if (arr[i] < 0) { *negArr++ = arr[i]; }
- }
- }
- void demo(int* res, char* chVal, float* fVal)
- {
- *res = 42;
- *chVal = 'a';
- *fVal = 36.6;
- }
- int maxS(int a, int b) { return a > b ? a : b; };
- int& max(int& a, int& b) { return a > b ? a : b; };
- int main()
- {
- int x{ 10 };
- int y{ 20 };
- //std::cout << "x = " << x << " y= " << y << '\n';
- //swapVal(x, y);
- //std::cout << "x = " << x << " y= " << y << '\n';
- int* ptr{ new int{42} };
- int& ref{ *ptr };
- std::cout << ref << ' ' << *ptr << '\n';
- delete ptr;
- std::cout << ref << '\n';
- int arr[5]{ 1,2,3,4,5 };
- int& ref{ arr[1] };
- ref = 10;
- //char symb{ 'Z' };
- //const int boxSize{ 334 };
- //int* ptr{ new int[5]{10,20,30,40,50} };
- //char& chRef{symb};
- //const int& ref{ boxSize };
- //arr[2] = 123;
- //std::cout << ref << ' ' << x << '\n';
- //delete[] ptr;
- ////int iVal{ 0 };
- ////char cVal{ 'z' };
- ////float fVal{ 42.42 };
- //std::cout << iVal << ' ' << cVal << ' ' << fVal << '\n';
- //demo(&iVal, &cVal, &fVal);
- //std::cout << iVal << ' ' << cVal << ' ' << fVal << '\n';
- //const int arrSize{ 10 };
- //int* arr{ createArr(arrSize) };
- //printArr(arr, arrSize);
- //const int arr1Size{ 15 };
- //int* arr1{ createArr(arr1Size) };
- //printArr(arr1, arr1Size);
- //deleteArr(arr1);
- //deleteArr(arr);
- //const int numSize{ 10 };
- //int num[numSize]{ -1,4,5,-2,0,5,-2,0,6,4 };
- //int zeroSize{ 0 };
- //int posSize{ 0 };
- //int negSize{ 0 };
- //calcElementsCount(num, numSize, zeroSize, posSize, negSize);
- //
- //std::cout << zeroSize << ' ' << posSize << ' ' << negSize << '\n';
- //int* zeroArr{ createArr(zeroSize)};
- //int* posArr{ createArr(posSize) };
- //int* negArr{ createArr(negSize) };
- //distributeElements(num, numSize, zeroArr, posArr, negArr);
- //printArr(zeroArr, zeroSize);
- //printArr(posArr, posSize);
- //printArr(negArr, negSize);
- //deleteArr(zeroArr);
- //deleteArr(posArr);
- //deleteArr(negArr);
- }
- //#include <iostream>
- //
- //
- //void fun() { std::cout << "Fun\n"; };
- //void fun1() { std::cout << "Fun1\n"; };
- //
- //void funVal(int val) { std::cout << "FunVal with val = " << val << '\n'; };
- //void funVal1(int val) { std::cout << "FunVal1 with val = " << val << '\n'; };
- //
- //int min(int a, int b) { return a < b ? a : b; };
- //int max(int a, int b) { return a > b ? a : b; };
- //
- //char fun(float* fPtr, int size);
- //
- //void zero() { std::cout << "Value is zero\n"; };
- //void above() { std::cout << "Value is above zero\n"; };
- //void beyond() { std::cout << "Value is beyond zero\n"; };
- //
- //bool sortUp(int a, int b) { return a < b; };
- //bool sortDown(int a, int b) { return a > b; };
- //bool sortOdd(int a, int b) { return (a%2 == 0) and (b % 2 !=0); };
- //bool sortEven(int a, int b) { return (a % 2 != 0) and (b % 2 == 0); };
- //
- //void printArrRow(int* arr, int arrSize)
- //{
- // for (int i = 0; i < arrSize; i++) { std::cout << arr[i] << ' '; }; std::cout << '\n';
- //}
- //
- //void printArrRowTab(int* arr, int arrSize)
- //{
- // for (int i = 0; i < arrSize; i++) { std::cout << arr[i] << '\t'; }; std::cout << '\n';
- //}
- //
- //void printArrCol(int* arr, int arrSize)
- //{
- // for (int i = 0; i < arrSize; i++) { std::cout << arr[i] << '\n'; }; std::cout << '\n';
- //}
- //
- //
- //void sortBuble(int* arr, int arrSize, bool(*sortCriteria)(int, int)=nullptr, void(*print)(int*, int)=nullptr)
- //{
- // if (print) { print(arr, arrSize); };
- // for (int head{ 0 }; head < arrSize; ++head)
- // {
- // for (int tail{ arrSize - 1 }; tail > head; --tail)
- // {
- // if ((sortCriteria and sortCriteria(arr[tail],arr[head])) or (!sortCriteria and (arr[tail] < arr[head])))
- // {
- // int tmp = arr[head];
- // arr[head] = arr[tail];
- // arr[tail] = tmp;
- // }
- // }
- // }
- // if (print) { print(arr, arrSize); };
- //}
- //
- //void printArr(int* arr, int arrSize)
- //{
- // for (int i = 0; i < arrSize; i++) { std::cout << arr[i] << ' '; }; std::cout << '\n';
- //}
- //
- //
- //int arrMin(int* arr, int arrSize)
- //{
- // int id{ 0 };
- // for (int i{ 0 }; i < arrSize; ++i)
- // {
- // id = arr[id] < arr[i] ? id : i;
- // }
- // return arr[id];
- //}
- //
- //int arrMax(int* arr, int arrSize)
- //{
- // int id{ 0 };
- // for (int i{ 0 }; i < arrSize; ++i)
- // {
- // id = arr[id] > arr[i] ? id : i;
- // }
- // return arr[id];
- //}
- //
- //
- //int arrSum(int* arr, int arrSize)
- //{
- // int sum{ 0 };
- // for (int i{ 0 }; i < arrSize; ++i)
- // {
- // sum += arr[i];
- // }
- // return sum;
- //}
- //void forEach(int* arr, int arrSize, int(*action)(int* arr, int id))
- //{
- // for (int i{ 0 }; i < arrSize; ++i)
- // {
- // if (action) { action(arr, i); };
- // }
- //}
- //
- //int randomElement(int* arr, int id)
- //{
- // arr[id] = rand() % 50;
- // return 0;
- //}
- //
- //int printElement(int* arr, int id)
- //{
- // std::cout << arr[id] << ' ';
- // return 0;
- //};
- //
- //int main()
- //{
- // int arrSize{ 15 };
- // int* arr{ new int[arrSize] { 6,1,4,2,8,9,11,26,2,7,8,11,2,2,3 } };
- //
- //
- // forEach(arr, arrSize, printElement);
- // forEach(arr, arrSize, randomElement);
- // std::cout << '\n';
- // forEach(arr, arrSize, printElement);
- //
- // //const int fptrSize{ 3 };
- // //int (*fptr[fptrSize])(int*, int) { arrMax, arrMin, arrSum};
- // //
- //
- // //for (int funNum{ 0 }; funNum < fptrSize; ++funNum)
- // //{
- // // std::cout << fptr[funNum](arr, arrSize) << '\n';
- // //}
- //
- // //int arrSize{ 15 };
- // //int* arr{ new int[arrSize] { 6,1,4,2,8,9,11,26,2,7,8,11,2,2,3 } };
- // ////printArr(arr, arrSize);
- // //sortBuble(arr, arrSize,nullptr,printArrRow);
- // //printArr(arr, arrSize);
- //
- // //void (*assetValue)() { nullptr };
- //
- // //int value{ 0 };
- // //std::cout << "Enter number\n";
- // //std::cin >> value;
- //
- // ////if (value == 0) { assetValue = zero; };
- // //if (value > 0) { assetValue = above; };
- // //if (value < 0) { assetValue = beyond; };
- //
- // //if (assetValue) { assetValue(); }
- // //else { std::cout << "assetValue is nullptr!\n"; };
- //
- // //char(*funPointer)(float*, int) {nullptr};
- // //void (*funPtr)() { fun };
- // //void (*funValPtr)(int) { funVal };
- // //int(*minMaxPtr)(int, int) { min };
- //
- // //funPtr();
- // //funValPtr(33);
- //}
Advertisement
Add Comment
Please, Sign In to add comment