Stoktan Çıkarma
Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası — ders 33 / 56.
Görev
KolayMevcut ürünlerden stok çıkarma işlevini uygulayarak envanter takip sisteminizi tamamlayın. Bu ders, stok seviyelerinin sıfırın altına düşmesini engelleyerek ve envanterde bulunmayan ürünleri yöneterek envanter miktarlarını nasıl güvenli bir şekilde azaltacağınızı gösterir.
Aşağıdaki başlangıç envanteri ile başlayın:
apples: 50bananas: 30oranges: 25
Aşağıdaki girdiler sağlanacaktır:
- Gerçekleştirilecek stok çıkarma işlemi sayısını temsil eden bir tam sayı
n - Ardından
nadet girdi çifti:- Ürün adını temsil eden bir dize (string)
- Çıkarılacak miktarı temsil eden bir tam sayı
Programınız şunları yapmalıdır:
- Yukarıda listelenen başlangıç envanteri ile başlayın
- Stok çıkarma işlemi sayısını okuyun
- Her işlem için bir ürün adı ve çıkarılacak miktarı okuyun
- Ürünün envanter haritasında (map) var olup olmadığını kontrol etmek için
.count()metodunu kullanın - Ürün mevcut değilse, bir hata mesajı yazdırın
- Ürün mevcutsa, miktarı çıkarmanın stoğu negatife düşürüp düşürmeyeceğini kontrol edin
- Çıkarma işlemi negatif stokla sonuçlanacaksa, bir hata mesajı yazdırın
- Çıkarma işlemi geçerliyse, miktarı mevcut stoktan çıkarın ve bir onay mesajı yazdırın
- Tüm işlemlerden sonra, tüm ürünleri ve güncellenmiş miktarlarını gösteren nihai envanteri yazdırın
Aşağıdaki tam çıktı formatını kullanın:
Başarılı stok çıkarma için:
Removed [quantity] [item_name]. New total: [new_total]Bulunamayan ürünler için:
Error: [item_name] not found in inventoryYetersiz stok için:
Error: Cannot remove [quantity] [item_name]. Only [current_stock] in stockNihai envanter:
Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...Nihai envanter, ürün adına göre alfabetik sırayla yazdırılmalıdır. Stok çıkarmaya çalışmadan önce bir ürünün var olup olmadığını kontrol etmek için inventory.count(itemName) kullanın. Yalnızca ürün mevcutsa ve mevcut stok çıkarılacak miktardan büyük veya eşitse envanterden çıkarma yapın. Mevcut stoktan miktarı çıkarmak için inventory[itemName] -= quantity kullanın.
Kendin dene
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
// Initialize inventory with existing items
map<string, int> inventory;
inventory["apples"] = 50;
inventory["bananas"] = 30;
inventory["oranges"] = 25;
inventory["grapes"] = 40;
int n;
cin >> n;
for (int i = 0; i < n; i++) {
string itemName;
cin >> itemName;
if (inventory.count(itemName)) {
cout << itemName << ": " << inventory[itemName] << " in stock" << endl;
} else {
cout << itemName << ": Item not found" << endl;
}
}
cout << "Total items in inventory: " << inventory.size() << endl;
return 0;
}Mantık & Akış bölümündeki tüm dersler
1İşaretçiler ve Bellek
İşaretçi Nedir?Adres OperatörüDereference OperatörüNull İşaretçilerİşaretçiler ve Diziler'new' ile Dinamik Bellek'delete' ile Belleği Serbest BırakmaÖzet - İşaretçi Pratiği2Vektörler (Dinamik Diziler)
std::vector'a GirişBir Vektör OluşturmaEleman EklemeElemanlara ErişmeVektör BoyutuFor Döngüsü ile YinelemeAralık Tabanlı For DöngüsüEleman SilmeÖzet - Vektör İşlemleri5Proje: Envanter Aracı
Proje KurulumuÖğe Ekleme ve Güncelleme3Proje: Görev Listesi Aracı
Projeye Genel BakışGörev Ekleme