Toplam hesaplama
- Dart kursu
- Başlangıç
- Ders 50/116
- 6 dk
Subtotal ve vergi dahil toplamı hesaplamayı öğrenirsin.
Toplam hesaplama
Sepetteki ürünlerin ara toplamı (subtotal), vergi ve ek ücretler hariç tutardır. getSubtotal metodu prices listesindeki tüm fiyatları toplar ve bir double olarak döndürür.
Toplama için bir sum değişkeni başlatıp for-in ile her fiyatı gezeriz: double sum = 0; for (var p in prices) { sum += p; } return sum;. += işleci, sol taraftaki değişkene sağ tarafı ekler. Döngü sonunda sum, tüm fiyatların toplamıdır.
Vergi ve toplam
Ara toplam vergi ve ek ücretler öncesi tutardır. Vergi dahil toplam için subtotal * (1 + vergiOranı) kullanılır; örneğin %20 vergi için subtotal * 1.20 çarpanı uygulanır.
Bu projede getSubtotal yalnızca ara toplamı döndürür; vergili toplam main içinde hesaplanır. İkisini ayırmak, vergi oranı değiştiğinde yalnızca çarpanı güncellemeyi kolaylaştırır. Bu ayrım, vergi oranlarının ülkeden ülkeye değişmesi yüzünden önem taşır.
Uygulama getSubtotal metodunu yaz
Cart sınıfına bir getSubtotal metodu ekle. İmzası: double getSubtotal(). Gövdede double sum = 0; ile başla, for (var p in prices) ile her fiyatı gez, sum += p; ile topla ve return sum; ile döndür. main iki ürün ekleyip getSubtotal'ı yazdırıyor. Çıktı tek satırda 35.0 olmalı.
Başlangıç kodu
class Cart {
List<String> names = [];
List<double> prices = [];
void addItem(String name, double price) {
names.add(name);
prices.add(price);
}
}
// getSubtotal metodunu buraya yaz
}
void main() {
var cart = Cart();
cart.addItem("Defter", 25.0);
cart.addItem("Kalem", 10.0);
print(cart.getSubtotal());
}Örnek çözüm
class Cart {
List<String> names = [];
List<double> prices = [];
void addItem(String name, double price) {
names.add(name);
prices.add(price);
}
double getSubtotal() {
double sum = 0;
for (var p in prices) {
sum += p;
}
return sum;
}
}
void main() {
var cart = Cart();
cart.addItem("Defter", 25.0);
cart.addItem("Kalem", 10.0);
print(cart.getSubtotal());
}Beklenen çıktı
35.0
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Parçayı işlevine eşle
| Kavram | Anlamı |
|---|---|
double sum = 0 |
Toplamı başlatır |
for (var p in prices) |
Her fiyatı gez |
sum += p |
Fiyatı ekle |
return sum |
Toplamı döndür |
2 getSubtotal ne döndürür?
double getSubtotal() { ... }- Vergisiz ara toplamı Doğru cevap
- Vergi dahil toplamı
- Ürün adedini
- İlk ürünün fiyatını
Açıklama: getSubtotal vergi öncesi ara toplamı döndürür.
3 return satırını yaz
double getSubtotal() {
double sum = 0;
for (var p in prices) {
sum += p;
}
____
}
double getSubtotal() {
double sum = 0;
for (var p in prices) {
sum += p;
}
return sum;
}
Açıklama: return sum; hesaplanan toplamı döndürür.