خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

11 قطعه کد C++ برای مشکلات برنامه نویسی روزمره

اگر در C++ تازه کار هستید، این کدهایی که برنامه نویسان هر روز از آن استفاده می کنند می توانند مفید باشند.

C++ یکی از پرکاربردترین زبان های برنامه نویسی است. هر روز توسط میلیون ها برنامه نویس استفاده می شود و ترجیح داده شده ترین زبان برای برنامه نویسی رقابتی است.

در اینجا، 11 قطعه کد C++ را فهرست می کنیم که می توانند به شما در رفع مشکلات برنامه نویسی روزمره کمک کنند. بنابراین، بدون بحث بیشتر، بیایید شروع کنیم.

1. اندازه یک بردار را پیدا کنید

با استفاده از تابع size() می توانید اندازه یک بردار را پیدا کنید.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector <int> arr1 = {1, 2, 3, 4};
    vector <int> arr2 = {};
    vector <float> arr3 = {1.2, 3.8, 3.0, 2.7, 6.6};
 
    cout << "Size of arr1: " << arr1.size() << endl;
    cout << "Size of arr2: " << arr2.size() << endl;
    cout << "Size of arr3: " << arr3.size() << endl;
 
    return 0;
}

خروجی:

Size of arr1: 4
Size of arr2: 0
Size of arr3: 5

2. یک آرایه را به هم بزنید

می توانید با استفاده از تابع shuffle() یک آرایه را در C++ به هم بزنید.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector <int> arr = {1, 2, 3, 4};
    unsigned seed = 0;
 
    cout << "Original array:";
 
    for (int ele: arr)
    {
        cout << ele << " ";
    }
 
    cout << endl;
 
    shuffle(arr.begin(), arr.end(), default_random_engine(seed));
 
    cout << "Shuffled array:";
 
    for (int ele: arr)
    {
        cout << ele << " ";
    }
 
    return 0;
}

خروجی:

Original array:1 2 3 4
Shuffled array:2 3 1 4

3. دو متغیر را در C++ عوض کنید

می توانید با استفاده از تابع swap() داخلی کتابخانه C++ STL دو متغیر را در C++ عوض کنید.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int x = 5, y = 10;
    string str1 = "MakeUseOf", str2 = "MUO";
 
    cout << "Before Swapping: " << endl;
    cout << "x: " << x << endl;
    cout << "y: " << y << endl;
    cout << "str1: " << str1 << endl;
    cout << "str2: " << str2 << endl;
 
    swap(x, y);
    swap(str1, str2);
 
    cout << "After Swapping: " << endl;
    cout << "x: " << x << endl;
    cout << "y: " << y << endl;
    cout << "str1: " << str1 << endl;
    cout << "str2: " << str2 << endl;
 
    return 0;
}

خروجی:

Before Swapping:
x: 5
y: 10
str1: MakeUseOf
str2: MUO
After Swapping:
x: 10
y: 5
str1: MUO
str2: MakeUseOf

4. مجموع ارقام یک عدد را بیابید

با استفاده از روش زیر می توانید مجموع ارقام یک عدد را پیدا کنید:

  • برای ذخیره نتیجه، یک متغیر مجموع را مقداردهی کنید.
  • با انجام عمل مدول با 10 باقیمانده عدد را بیابید.
  • باقی مانده را با جمع اضافه کنید.
  • عدد را بر 10 تقسیم کنید.
  • در حالی که تعداد بیشتر از 10 است، روند مرحله 2 را تکرار کنید.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int num = 4635, sum = 0, temp;
 
    while (num != 0)
    {
        temp = num%10;
        sum = sum+temp;
        num = num/10;
    }
 
    cout << "Sum: " << sum << endl;
    return 0;
}

خروجی:

Sum: 18

5. یک وکتور را در بردار دیگر کپی کنید

راه های متعددی برای کپی کردن یک وکتور به بردار دیگر در C++ وجود دارد. برای انجام همین کار می توانید از عملگر انتساب استفاده کنید یا بردار را به عنوان سازنده ارسال کنید.

#include <bits/stdc++.h>
using namespace std;
 
void printVector(vector <int> vec)
{
    for (auto ele: vec)
    {
        cout << ele << " ";
    }
 
    cout << endl;
}
 
int main()
{
    vector <int> vec = {1, 2, 3, 4, 5};
    printVector(vec);
 
    // Method 1: Using Assignment Operator
    vector <int> newVec1 = vec;
    printVector(newVec1);
 
    // Method 2: By passing vector as constructor
    vector <int> newVec2(vec);
    printVector(newVec2);
 
    return 0;
}

خروجی:

1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

6. حداکثر و حداقل عناصر یک آرایه را پیدا کنید

شما می توانید حداکثر و حداقل عناصر را از یک آرایه با استفاده از توابع max_element() و min_element() پیدا کنید.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int arr[] = {23, 56, 87, 12, 56};
    int size = sizeof(arr)/sizeof(arr[0]);
 
    cout << "Max element: " << *max_element(arr, arr+size) << endl;
    cout << "Min element: " << *min_element(arr, arr+size) << endl;
 
    return 0;
}

خروجی:

Max element: 87
Min element: 12

7. عناصر را در یک مجموعه قرار دهید

با استفاده از تابع insert() می توانید عناصر را در یک مجموعه وارد کنید. این تابع عنصر را به عنوان پارامتری که در مجموعه درج می شود می پذیرد.

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    set<string> st;
 
    st.insert("Make");
    st.insert("Use");
    st.insert("Of");
    st.insert("Of");
 
    for (auto it = st.begin(); it != st.end(); it++)
    {
        cout << *it << " ";
    }
 
    return 0;
}

خروجی:

Make Of Use

8. Duplicate را از رشته حذف کنید

با استفاده از روش زیر می توانید کاراکترهای تکراری را از یک رشته حذف کنید:

#include <bits/stdc++.h>
using namespace std;
 
void removeDuplicateCharacters(char str[], int size)
{
    int newIndex=0;
 
    // Traversing through all the characters
    for (int i = 0; i < size; i++)
    {
        int j;
 
        // Traversing loop from the first character to current character
        for (j = 0; j < i; j++)
        {
            if (str[i] == str[j])
            {
                break;
            }
        }
 
        if (j == i)
        {
            str[newIndex++] = str[i];
        }
    }
 
    // After removing duplicates, we make
    // the vacant part of string to null
    str[newIndex] = '\0';
}


int main()
{
    char str[] = "MakeUseOf";
    int size = strlen(str);
 
    cout << "Original String: " << endl;
    cout << str << endl;
 
    removeDuplicateCharacters(str, size);
 
    cout << "New String: " << endl;
    cout << str << endl;
    return 0;
}

خروجی:

Original String:
MakeUseOf
New String:
MakeUsOf

9. طول رشته C++ را پیدا کنید

با استفاده از تابع length() می توانید طول یک رشته C++ را پیدا کنید. همچنین می توانید از تابع size() نیز استفاده کنید (این نام مستعار تابع length() است).

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    string str1 = "MakeUseOf";
    cout << "Length of " << str1 << " : " << str1.length() << endl;
 
    string str2 = "lorem ipsum";
    cout << "Length of " << str2 << " : " << str2.size() << endl;
 
    return 0;
}

خروجی:

Length of MakeUseOf : 9
Length of lorem ipsum : 11

10. یک عنصر را از آرایه حذف کنید

با استفاده از روش زیر می توانید یک عنصر را از آرایه حذف کنید:

#include <bits/stdc++.h>
using namespace std;
 
int deleteElementFromArray(int arr[], int size, int elementToBeDeleted)
{
    int i, j;
 
    // Search if elementToBeDeleted is present
    // in the array or not
    for (i = 0; i < size; i++)
    {
        if (arr[i] == elementToBeDeleted)
        {
            break;
        }
    }
 
    // If elementToBeDeleted is found in the array
    if (i < size)
    {
        // We need to reduce the size of the array
        // and shift the rest elements
        size = size - 1;
 
        for (j = i; j < size; j++)
        {
            arr[j] = arr[j+1];
        }
    }
 
    // New array size is returned
    return size;
}
 
void printArrayElements(int arr[], int size)
{
    for (int i = 0; i < size; i++)
    {
        cout << arr[i] << " ";
    }
 
    cout << endl;
}


int main()
{
    int arr[] = {1, 2, 3, 4, 5};
    int size = sizeof(arr)/sizeof(arr[0]);
 
    cout << "Original Array: " << endl;
    printArrayElements(arr, size);
 
    int elementToBeDeleted = 3;
    size = deleteElementFromArray(arr, size, elementToBeDeleted);
 
    cout << "New array: " << endl;
    printArrayElements(arr, size);
 
    return 0;
}

خروجی:

Original Array:
1 2 3 4 5
New array:
1 2 4 5

گاهی اوقات درک مستقیم یک کد پیچیده آسان نیست. شما باید برخی از اصول اولیه برنامه نویسی مانند مستندسازی کد، refactoring و غیره را دنبال کنید تا کد خود را قوی تر کنید.

مطلب مرتبط:   چگونه با استفاده از پایتون یک پخش کننده موسیقی بسازیم

11. تکرار از طریق یک بردار

شما می توانید از طریق یک بردار به روش های مختلف تکرار کنید. در زیر سه مورد از پرکاربردترین روش‌های تکرار از طریق یک برداری آورده شده است:

استفاده از محدوده برای

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector <int> vec = {1, 2, 3, 4, 5};
 
    // Method 1: Using range for
    for (auto element: vec)
    {
        cout << element << " ";
    }
 
    return 0;
}

با استفاده از نمایه سازی

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector <int> vec = {1, 2, 3, 4, 5};
 
    // Method 2: Using indexing
    for (int i = 0; i < vec.size(); i++)
    {
        cout << vec[i] << " ";
    }
 
    return 0;
}

با استفاده از Reference of Iterator

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    vector <int> vec = {1, 2, 3, 4, 5};
 
    // Method 3: Using reference of the iterator
    for (auto it = begin(vec); it != end(vec); it++)
    {
        cout << *it << " ";
    }
 
    return 0;
}

سه کد بالا همان خروجی را نشان خواهند داد:

1 2 3 4 5

اگر می خواهید نگاهی به کد منبع کامل استفاده شده در این مقاله بیندازید، در اینجا مخزن GitHub است.

از کدهای C++ استفاده کنید

از این کدهای C++ برای مشکلات برنامه نویسی روزمره خود استفاده کنید. چه از ++C برای نوشتن برنامه های ساده و چه برای برنامه نویسی رقابتی استفاده کنید، این قطعه کد می تواند مفید باشد.

از طرف دیگر، اگر می‌خواهید دست‌های خود را با روباتیک، DevOps، برنامه‌نویسی ابری، علم داده یا هوش مصنوعی امتحان کنید، باید با Go شروع کنید. Go یک زبان برنامه نویسی متن باز و آسان برای یادگیری است که دارای چندین مزیت نسبت به سایر زبان های برنامه نویسی است.

مطلب مرتبط:   تفاوت بین URL نسبی و مطلق چیست؟