إضافة مصروف
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 81 من 88.
التحدي
سهلقم بالبناء على متتبع النفقات الخاص بك من الدرس السابق عن طريق إضافة وظيفة "Add Expense".
يجب أن يقوم برنامجك بما يلي:
- تهيئة مصفوفة فارغة تسمى
expenses - إنشاء
loop doيعرض القائمة ويقرأ مدخلات المستخدم - عندما يدخل المستخدم
"1"، اطلب اسم النفقة والمبلغ، وأنشئ hash بمفاتيح:nameو:amount، وأضفه إلى مصفوفةexpenses، واطبعExpense added! - عندما يدخل المستخدم
"5"، اطبعGoodbye!واخرج من الحلقة
يجب أن تظهر القائمة تماماً كما في السابق:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: عند اختيار الخيار "1"، اعرض هذه المطالبات:
Expense name: ثم بعد قراءة الاسم:
Amount: استخدم print لجميع المطالبات (حتى يبقى المؤشر في نفس السطر). قم بتحويل المبلغ إلى float باستخدام to_f.
سيتلقى البرنامج مدخلات متعددة بالتتابع: خيار القائمة، وإذا كان الخيار "1"، فسيتبع ذلك اسم النفقة والمبلغ.
على سبيل المثال، إذا كانت المدخلات هي 1، Coffee، 4.50، ثم 5، يجب أن يكون المخرج:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!إذا كانت المدخلات هي 1، Lunch، 12.99، 1، Bus fare، 2.50، ثم 5، يجب أن يكون المخرج:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!جرّب بنفسك
expenses = []
loop do
puts "\n--- Expense Tracker ---"
puts "1. Add Expense"
puts "2. View Expenses"
puts "3. Total & Average"
puts "4. Clear All"
puts "5. Exit"
print "Choose an option: "
choice = gets.chomp
if choice == "5"
puts "Goodbye!"
break
end
endجميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ9الدوال (Methods)
تعريف الدالةمعاملات الدالةقيم الإرجاعمراجعة - دالة Sigmaمراجعة - دالة Validationالقيم الافتراضية للمعاملات15متتبع المصاريف اليومية
نظرة عامة على المشروعالخروج من البرنامج