Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

تحديات برمجيةالتحدي السادس - حل التمرين الثالث بلغة C++

المطلوب

أكتب برنامج يطلب من المستخدم إعطائه عدد يمثل عدد عناصر مصفوفة إسمها arr و يخزنه في متغير إسمه n.
ملاحظة: عدد عناصر المصفوفة يجب أن يكون أكبر من صفر.
بعدها ينشئ المصفوفة arr و يحدد أن عدد عناصرها هو العدد الذي أدخله المستخدم.
بعدها يقوم بإعطاء قيمة عشوائية بين 1 و 10 لكل عنصر فيها.
في الأخير, سيعرض للمستخدم جميع القيم المخزنة فيها على سطر واحد مع وضع فاصلة بين كل قيمتين و من ثم ناتج جمع جميع العناصر.


الحل بلغة C++

#include <iostream>
#include <cstdlib>
#include <ctime>

int main() {

    // هنا قمنا بجعل الرقم العشوائي يتم توليده بالإعتماد على وقت جهاز المستخدم كنقطة بداية
    // C++ ملاحظة: هذه الطريقة, هي الطريقة المعتمدة في التحضير لتوليد أرقام عشوائية في لغة
    srand((unsigned) time(0));

    int n;
    int s = 0;
    int *arr;

    do
    {
        std::cout << "Enter array length: ";
        std::cin >> n;
    }
    while (n <= 0);

    arr = new int[n];

    for (int i = 0; i < n; i++)
    {
        arr[i] = (rand() % 10) + 1;
    }

    std::cout << "\nArray values: ";

    for (int i = 0; i < n; i++)
    {
        std::cout << arr[i];

        if (i < n - 1)
        {
            std::cout << ", ";
        }
    }

    for (int i = 0; i < n; i++)
    {
        s += arr[i];
    }

    std::cout << "\nSum of all elements: " << s;

    char end; std::cin >> end;
    return 0;

}

في حال تم إدخال الرقم 10 عند التشغيل سنحصل على نتيجة تشبه النتيجة التالية و ليس مثلها لأنه في كل مرة نقوم فيها بتشغيل البرنامج سيتم توليد أرقام عشوائية مختلفة.

Enter array length: 10

Array values: 3, 8, 3, 6, 1, 4, 9, 9, 6, 4
Sum of all elements: 53