Mengurangi Stok
Termasuk bagian Logika dan Alur dalam perjalanan C++ di Coddy. Pelajaran 33 dari 56.
Tantangan
MudahLengkapi sistem pelacakan inventarismu dengan menerapkan fungsi untuk mengurangi stok barang yang sudah ada. Pelajaran ini menunjukkan cara mengurangi jumlah inventaris dengan aman, mencegah jumlah stok menjadi kurang dari nol, dan menangani barang yang tidak ada dalam inventaris.
Mulai dengan inventaris awal berikut:
apples: 50bananas: 30oranges: 25
Input berikut akan diberikan:
- Bilangan bulat
nyang menunjukkan jumlah operasi pengurangan stok yang harus dilakukan - Lalu
npasang input:- String yang menunjukkan nama barang
- Bilangan bulat yang menunjukkan jumlah yang akan dikurangi
Programmu harus:
- Dimulai dengan inventaris awal yang tercantum di atas
- Membaca jumlah operasi pengurangan stok
- Untuk setiap operasi, membaca nama barang dan jumlah yang akan dikurangi
- Menggunakan method
.count()untuk memeriksa apakah barang tersebut ada di map inventaris - Jika barang tersebut tidak ada, mencetak pesan error
- Jika barang tersebut ada, memeriksa apakah pengurangan jumlah akan membuat stok menjadi negatif
- Jika pengurangan akan membuat stok menjadi negatif, mencetak pesan error
- Jika pengurangan valid, mengurangi jumlah dari stok saat ini dan mencetak pesan konfirmasi
- Setelah semua operasi, mencetak inventaris akhir yang menampilkan semua barang dan jumlahnya yang sudah diperbarui
Gunakan format output persis berikut:
Untuk pengurangan stok yang berhasil:
Removed [quantity] [item_name]. New total: [new_total]Untuk barang yang tidak ditemukan:
Error: [item_name] not found in inventoryUntuk stok yang tidak mencukupi:
Error: Cannot remove [quantity] [item_name]. Only [current_stock] in stockInventaris akhir:
Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...Inventaris akhir harus dicetak berdasarkan urutan alfabet nama barang. Gunakan inventory.count(itemName) untuk memeriksa apakah barang tersebut ada sebelum mencoba mengurangi stok. Kurangi inventaris hanya jika barang tersebut ada dan stok saat ini lebih besar dari atau sama dengan jumlah yang akan dikurangi. Gunakan inventory[itemName] -= quantity untuk mengurangi jumlah dari stok yang tersedia.
Coba sendiri
#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;
}Semua pelajaran di Logika dan Alur
1Pointer dan Memori
Apa Itu Pointer?Operator Address-OfOperator DereferencePointer NullPointer dan ArrayMemori Dinamis dengan 'new'Membebaskan Memori dengan 'delete'Rangkuman: Latihan Pointer2Vektor (array Dinamis)
Memperkenalkan std::vectorMembuat VektorMenambahkan ElemenMengakses ElemenUkuran VektorIterasi dengan for loopFor loop Berbasis RentangMenghapus ElemenRangkuman: Operasi Vektor5Proyek: Alat Inventaris
Menyiapkan ProyekMenambahkan dan Memperbarui BarangLatihan sendiri: Compiler C++ online