المبرمج العربي نشر 31 ديسمبر 2015 أرسل تقرير نشر 31 ديسمبر 2015 (معدل) في الشيفرة البرمجية التالية: c = 0 items.each { |i| puts i.to_s # if c > 9 escape the each iteration early - and do not repeat c++ } أريد التكرار 10 مرات فقط وبعدها أغادر الحلقة، فبماذا أستبدل التعليق الموجودة في الشيفرة البرمجية؟ هل هنالك حل أفضل من الحل الذي وضعته؟ تم التعديل في 31 ديسمبر 2015 بواسطة المبرمج العربي اقتباس
0 هشام رزق الله نشر 31 ديسمبر 2015 أرسل تقرير نشر 31 ديسمبر 2015 هنالك طرق عديدة في لغة روبي للخروج من حلقة تكرار each فيمكنك على سبيل المثال استخدام do و end في تعريف حلقة التكرار ومن ثم وضع شرط الخروج باستخدام break والجملة الشرطية if كما في المثال التالي:c = 0 items.each do |i| puts i.to_s break if c > 9 c += 1 end أو يمكنك اختصار السطور السابقة إلى التالي:items.each_with_index do |i, c| puts i.to_s break if c > 9 end أو يمكنك أيضا اختصارها إلى سطر واحد فقط وذلك عن طريق استخدام take حيث ستأخذ أول 10 عناصر فقط:items.take(10).each { |i| puts i.to_s }ملاحظة: لا يوجد عامل ++ في روبي ويمكنك كتابة c += 1 بدلا من ذلك. اقتباس
السؤال
المبرمج العربي
في الشيفرة البرمجية التالية:
أريد التكرار 10 مرات فقط وبعدها أغادر الحلقة، فبماذا أستبدل التعليق الموجودة في الشيفرة البرمجية؟ هل هنالك حل أفضل من الحل الذي وضعته؟
تم التعديل في بواسطة المبرمج العربي1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.