المبرمج العربي نشر 20 مايو 2016 أرسل تقرير نشر 20 مايو 2016 أريد كتابة برنامج يحسب لي أكبر وأصغر قيمة في مجموعة 10 أعداد، فكيف أستطيع فعل ذلك في لغة سي بلاس بلاس؟ اقتباس
0 هشام رزق الله نشر 20 مايو 2016 أرسل تقرير نشر 20 مايو 2016 البرنامج بسيط، فيكفي إنشاء مصفوفة من 10 أعداد صحيحة حيث سنستخدم حلقة التكرار for لملئ هذه المصفوفة بالأعداد المطلوبة ومن ثم سنستخدم نفس حلقة التكرار لمقارنة الأعداد واستخراج اكبر واصغر عدد. اعتبرنا في البداية أن أول عدد في المصفوفة هو أكبر وأصغر عدد ثم بدأنا بالمقارنة مع بقية الأعداد فإذا وجدنا عدد اكبر/اصغر منه غيّرنا قيمة المتغير mi أو ma (متغيرات اكبر واصغر قيمة). #include <iostream> using namespace std; int main() { int T[10]; int i, mi, ma; for (i=0;i<10;i++) { cout<<"Enter a number "; cin>>T[i]; } mi = T[0]; ma = T[0]; for (i=1;i<10;i++) { if (T[i]<mi) mi=T[i]; if (T[i]>ma) ma=T[i]; } cout<<"The Max is "<<ma<<endl; cout<<"The Min is "<<mi<<endl; } 2 اقتباس
0 سعيد نشر 21 مايو 2016 أرسل تقرير نشر 21 مايو 2016 إذا لم تكن مهتمًا بالتفاصيل فأنصحك بالشكل التالي الذي يسمح باستخدام الدالة max_element والتي تتطلّب وسيطين: الأوّل مؤشّر إلى العنصر الأوّل في المصفوفة المراد إيجاد القيمة الأكبر ضمنها، والوسيط الثاني هو مؤشّر العنصر الأخير من نفس المصفوفة. انظر إلى الشيفرة التالية: #include <iostream> #include <algorithm> int main() { int list[4] = {10, 40, 7, 8}; std::cout << *std::max_element(list, list+4); return 0; } الدالة max_element موجودة ضمن المكتبة algorithm.h. لاحظ أنّه يكفينا تمرير متغيّر المصفوفة list كوسيط أوّل للإشارة إلى العنصر الأوّل ضمنها، أمّا العنصر الأخير فهو العنصر الرّابع (في مثالنا هذا) ونحصل على مؤشّره بالصيغة التالية: list + 4 بعد تنيفذ البرنامج السابق، ستحصل في الخرج على القيمة 40. (لاحظ وجود الرمز * في السطر السادس قبل الاستدعاء إلى الدالة max_element). هذه الطريقة أسرع وأكثر فعاليّة، وخصوصًا في المصفوفات ذات عدد العناصر الكبير. 1 اقتباس
0 عزالدين قدري جمال محمد نشر 28 سبتمبر 2019 أرسل تقرير نشر 28 سبتمبر 2019 @سعيدهل هناك داله اخرى في المصفوفه ذات بعدين لحاسب عدد العناصر الموجبه والسالبه وطباعتها اقتباس
0 Yossef Alsaid نشر 26 مايو أرسل تقرير نشر 26 مايو بتاريخ On 21/5/2016 at 10:06 قال سعيد: #include <iostream> #include <algorithm> int main() { int list[4] = {10, 40, 7, 8}; std::cout << *std::max_element(list, list+4); return 0; } اقتباس
السؤال
المبرمج العربي
أريد كتابة برنامج يحسب لي أكبر وأصغر قيمة في مجموعة 10 أعداد، فكيف أستطيع فعل ذلك في لغة سي بلاس بلاس؟
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.