تحديات برمجيةالتحدي السادس - حل التمرين الثالث بلغة C++
المطلوب
أكتب برنامج يطلب من المستخدم إعطائه عدد يمثل عدد عناصر مصفوفة إسمها arr
و يخزنه في متغير إسمه n
.
ملاحظة: عدد عناصر المصفوفة يجب أن يكون أكبر من صفر.
بعدها ينشئ المصفوفة arr
و يحدد أن عدد عناصرها هو العدد الذي أدخله المستخدم.
بعدها يقوم بإعطاء قيمة عشوائية بين 1 و 10 لكل عنصر فيها.
في الأخير, سيعرض للمستخدم جميع القيم المخزنة فيها على سطر واحد مع وضع فاصلة بين كل قيمتين و من ثم ناتج جمع جميع العناصر.
الحل بلغة C++
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 عند التشغيل سنحصل على نتيجة تشبه النتيجة التالية و ليس مثلها لأنه في كل مرة نقوم فيها بتشغيل البرنامج سيتم توليد أرقام عشوائية مختلفة.
Array values: 3, 8, 3, 6, 1, 4, 9, 9, 6, 4
Sum of all elements: 53