Toplam ve Ortalama
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası. Ders 83 / 88.
Görev
Kolay"Total & Average" işlevselliğini ekleyerek gider takip programınızı geliştirin.
Programınız şunları yapmalıdır:
expensesadında boş bir dizi başlatın- Menüyü görüntüleyen ve kullanıcı girdisini okuyan bir
loop dooluşturun - Kullanıcı
"1"girdiğinde gider adını ve tutarını isteyin,:nameve:amountanahtarlarına sahip bir hash oluşturun, bunuexpensesdizisine ekleyin veExpense added!yazdırın - Kullanıcı
"2"girdiğinde tüm giderleri veya hiç gider yoksa bir mesaj görüntüleyin - Kullanıcı
"3"girdiğinde tüm giderlerin toplamını ve ortalamasını hesaplayıp görüntüleyin veya hiç gider yoksa bir mesaj görüntüleyin - Kullanıcı
"5"girdiğindeGoodbye!yazdırın ve döngüden çıkın
Menü, daha önce olduğu gibi tam olarak şu şekilde görüntülenmelidir:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: "3" seçeneği seçildiğinde:
- Hiç gider yoksa şunu yazdırın:
No expenses to calculate. - Giderler varsa toplamı ve ortalamayı şu biçimde yazdırın:
Total: $XAverage: $Y
Toplamı tüm :amount değerlerini toplayarak hesaplayın. Ortalamayı, toplamı gider sayısına bölerek hesaplayın.
Örneğin girdiler 3 ve ardından 5 (boşken hesaplama) ise çıktı şu şekilde olmalıdır:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: No expenses to calculate.
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!Girdiler 1, Coffee, 5.0, 1, Lunch, 15.0, 3 ve ardından 5 ise çıktı şu şekilde olmalıdır:
--- 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: Total: $20.0
Average: $10.0
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!Kendin dene
# Harcamalar dizisini başlat
expenses = []
# YAPILACAKLAR: Kodunuzu aşağıya yazın
# Şunları yapan bir döngü oluşturun:
# - Menüyü görüntüler
# - Kullanıcı girdisini okur
# - 1, 2, 3 ve 5 numaralı seçenekleri işler
#
# "1" seçeneği için: isim ve miktar isteyin, hash oluşturun, harcamalara ekleyin
# "2" seçeneği için: tüm harcamaları veya yoksa bir mesaj görüntüleyin
# "3" seçeneği için: toplamı ve ortalamayı hesaplayıp görüntüleyin veya yoksa bir mesaj gösterin
# "5" seçeneği için: "Goodbye!" yazdırın ve çıkınTemeller bölümündeki tüm dersler
4Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşımı Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcı Girdisi Alma13İleri Seviye Diziler
Aralıklar ile Dizi Dilimlemeİndeksler ile Dizi DilimlemeDizi OperatörleriInclude? Metodu2Değişkenler ve Veri Tipleri
Sayılar ve DeğişkenlerString Veri TipiBoolean Veri TipiSymbol Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıÖzet - Değişken Oluşturma8Döngüler
Aralıklar ile For DöngüsüWhile DöngüsüBreakNextÖzet - FaktöriyelTimes DöngüsüUntil Döngüsüİç İçe DöngülerÖzet - Dinamik Girdi3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel IO
puts ile Çıktı Almaprint ve p ile Çıktı AlmaDeğişkenlerle Çıktı Almagets ile Girdi AlmaChomp MetoduTip DönüşümüÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Metotlar
Metot TanımlamaMetot ParametreleriDönüş DeğerleriÖzet - Sigma MetoduÖzet - Doğrulama MetoduVarsayılan Parametre Değerleri12Koleksiyonlar Üzerinde Yineleme
Each Yineleyicisiİndeks ile EachStringler Üzerinde YinelemeMap ve Collect15Günlük Gider Takipçisi
Projeye Genel BakışProgramdan ÇıkışKendi başına pratik yap: Online Ruby derleyicisi