في هذا المقال، سنقدم 10 تمارين محلولة باستخدام لغة دارت (Dart). لغة برمجة حديثة تم تطويرها بواسطة جوجل. تهدف هذه التمارين إلى مساعدة المطورين المبتدئين في فهم وتعلم لغة دارت بشكل أفضل. سنقدم حلولًا مفصلة لكل تمرين، مع شرح الخطوات والمفاهيم المستخدمة. تغطي التمارين مواضيع متنوعة مثل المتغيرات والدوال والتعامل مع القوائم والمصفوفات وغيرها. يهدف هذا المقال إلى أن يكون مرجعًا قيمًا للمطورين الجدد الذين يرغبون في استكشاف قدرات لغة دارت في عام 2024.
تمرين رقم 1:
قم بكتابة برنامج بلغة دارت لحساب مجموع عددين.
الحل:
// السؤال: حساب مجموع عددين // الإجابة: void main() { int num1 = 5; int num2 = 3; int sum = num1 + num2; print('مجموع العددين هو $sum'); } // النتيجة: // مجموع العددين هو 8
“اقرأ أيضاً: تمارين محلولة على لغة دارت الجزء الأول“
تمرين رقم 2:
قم بكتابة برنامج بلغة دارت لإيجاد أكبر عدد في قائمة.
الحل:
// السؤال: إيجاد أكبر عدد في قائمة // الإجابة: void main() { List<int> numbers = [12, 45, 67, 23, 9]; int max = numbers.reduce((curr, next) => curr > next ? curr : next); print('أكبر عدد في القائمة هو $max'); } // النتيجة: // أكبر عدد في القائمة هو 67
“اقرأ أيضاً: شرح أنواع الدوال functions في لغة دارت (Dart)“
تمرين رقم 3:
قم بكتابة برنامج بلغة دارت للتحقق مما إذا كان العدد عددًا أوليًا.
الحل:
// السؤال: التحقق مما إذا كان العدد عددًا أوليًا // الإجابة: void main() { int number = 17; bool isPrime = true; for (int i = 2; i <= number / 2; i++) { if (number % i == 0) { isPrime = false; break; } } print('هل العدد $number عدد أولي؟ $isPrime'); } // النتيجة: // هل العدد 17 عدد أولي؟ true
“اقرأ أيضاً: شرح مفهوم الـ Asynchronous في لغة دارت (Dart)“
تمرين رقم 4:
قم بكتابة برنامج بلغة دارت لعكس سلسلة نصية.
الحل:
// السؤال: عكس سلسلة نصية // الإجابة: void main() { String str = 'مرحباً، العالم!'; String reversed = String.fromCharCodes(str.runes.toList().reversed); print('السلسلة المعكوسة: $reversed'); } // النتيجة: // السلسلة المعكوسة: !ملاعلا ،ًابحرم
تمرين رقم 5:
قم بكتابة برنامج بلغة دارت لحساب مضروب العدد.
الحل:
// السؤال: حساب مضروب العدد // الإجابة: void main() { int number = 5; int factorial = 1; for (int i = 1; i <= number; i++) { factorial *= i; } print('مضروب العدد $number هو $factorial'); } // النتيجة: // مضروب العدد 5 هو 120
“اقرأ أيضاً: شرح المتغيرات في لغة دارت (Variables in Dart)“
تمرين رقم 6:
قم بكتابة برنامج بلغة دارت للتحقق مما إذا كانت سلسلة نصية بالنحو المعكوس. يعني لو عكسنا حروف الكلمة يعطي نفس الكلمة مره أخرى مثل كلمة رادار وكلمة سلس.
الحل:
// السؤال: التحقق مما إذا كانت سلسلة نصية بالنحو المعكوس // الإجابة: void main() { String str = 'رادار'; String reversed = String.fromCharCodes(str.runes.toList().reversed); bool isPalindrome = str.toLowerCase() == reversed.toLowerCase(); print('هل سلسلة النص "$str" بالنحو المعكوس؟ $isPalindrome'); } // النتيجة: // هل سلسلة النص "رادار" بالنحو المعكوس؟ true
تمرين رقم 7:
قم بكتابة برنامج بلغة دارت لتحليل نصوص المستخدم واستخراج الكلمات الأكثر تكرارًا.
الحل:
// السؤال: تحليل نصوص المستخدم واستخراج الكلمات الأكثر تكرارًا // الإجابة: void main() { String text = "This is a sample text to analyze. This text contains some words that may repeat."; List<String> words = text.split(' '); Map<String, int> wordCount = {}; for (String word in words) { if (wordCount.containsKey(word)) { wordCount[word] = wordCount[word]! + 1; } else { wordCount[word] = 1; } } print('Most common words:'); wordCount.forEach((word, count) { if (count > 1) { print('$word: $count'); } }); } // النتيجة: //Most common words: //This: 2 //text: 2
“اقرأ أيضاً: شرح تصفية البيانات في لغة دارت (Where in Dart)“
تمرين رقم 8:
قم بكتابة برنامج بلغة دارت لتحويل درجة حرارة من مئوية إلى فهرنهايت.
الحل:
// السؤال: تحويل درجة حرارة من مئوية إلى فهرنهايت // الإجابة: void main() { double celsius = 25; double fahrenheit = (celsius * 9 / 5) + 32; print('تحويل درجة حرارة من $celsius مئوية = $fahrenheit فهرنهايت'); } // النتيجة: //تحويل درجة حرارة من 25 مئوية = 77 فهرنهايت
تمرين رقم 9:
قم بكتابة برنامج بلغة دارت لإنشاء سلسلة فيبوناتشي. دي طريقة تقوم بجمع الرقم السابق مع الرقم الحالي.
الحل:
// السؤال: إنشاء سلسلة فيبوناتشي // الإجابة: void main() { int n = 10; List<int> fibonacci = [0, 1]; for (int i = 2; i < n; i++) { fibonacci.add(fibonacci[i - 1] + fibonacci[i - 2]); } print('$fibonacci'); } // النتيجة: // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
“اقرأ أيضاً: شرح مفهوم الـ Named Constructor في لغة دارت“
تمرين رقم 10:
قم بكتابة برنامج بلغة دارت لحساب مساحة مثلث.
الحل:
// السؤال: حساب مساحة مثلث // الإجابة: void main() { double base = 5; double height = 8; double area = 0.5 * base * height; print('مساحة المثلث: $area'); } // النتيجة: // مساحة المثلث: 20.0
في نهاية هذا المقال، قدمنا 10 تمارين محلولة باستخدام لغة دارت (Dart)، مع توفير حلول مفصلة وشرح للمفاهيم المستخدمة في كل تمرين. هذه التمارين تساعدك على تعزيز مهاراتك في لغة دارت وزيادة فهمك لها، مما يمكنك من بناء تطبيقات قوية وموثوقة. ننصحك بمواصلة التعلم والتطوير في لغة دارت من خلال المزيد من التمارين والمشاريع العملية. استمتع برحلتك في عالم تطوير البرمجيات باستخدام لغة دارت في عام 2024 وما بعده.