Artikel ini akan memperkenalkan cara menggunakan C++ untuk menulis program perakaunan yang mudah Memandangkan kos sara hidup terus meningkat, semakin ramai orang mula memberi perhatian keadaan kewangan mereka sendiri. Menggunakan lejar boleh merekodkan pendapatan dan perbelanjaan serta meningkatkan keupayaan pengurusan kewangan Kelebihan bahasa C++ ialah kecekapan dan kemudahalihannya, yang sangat sesuai untuk menulis program sedemikian.
1. Tentukan fungsi dan keperluan program
Sebelum menulis program, kita perlu menjelaskan terlebih dahulu fungsi dan keperluan yang ingin dicapai oleh program perakaunan mempunyai Fungsi berikut:
(1) Dapat merekodkan jumlah dan jenis setiap perbelanjaan dan pendapatan, serta merekodkan masa
(2) Dapat mengira keseluruhan pendapatan dan perbelanjaan, termasuk pendapatan dan jumlah perbelanjaan;
(3) boleh menjana laporan dan mengira jumlah perbelanjaan dan pendapatan setiap jenis; tambah, padam, ubah suai dan semak rekod.
Reka bentuk struktur dan algoritma data(1) Nombor ID unik rekod; ) Cap masa yang direkodkan;
(3) Jenis rekod, termasuk pendapatan dan perbelanjaan; .
Untuk algoritma, kita perlu mereka bentuk fungsi untuk melaksanakan pelbagai operasi, seperti menambah, memadam, mengemas kini, pertanyaan dan statistik Operasi ini memerlukan akses kepada data yang direkodkan, dan juga perlu mengira jumlah hasil dan perbelanjaan.
Menulis kodSebelum kita mula menulis kod, kita perlu membuat beberapa persediaan, antaranya:
#🎜#(🎜 1) Pilih persekitaran pembangunan bersepadu (IDE), seperti Visual Studio; Reka bentuk kelas dan fungsi program. Dalam C++, kita boleh menggunakan kelas untuk mewakili program perakaunan Kelas ini boleh mengandungi pelbagai fungsi ahli dan pembolehubah ahli, serta aksara kawalan akses yang sepadan.#include <iostream> #include <vector> using namespace std; class Record { public: int id; string date; string type; double amount; string description; Record(int _id, string _date, string _type, double _amount, string _description) { id = _id; date = _date; type = _type; amount = _amount; description = _description; } }; class AccountBook { public: vector<Record> records; void addRecord(int id, string date, string type, double amount, string description) { records.push_back(Record(id, date, type, amount, description)); } void deleteRecord(int id) { for (vector<Record>::iterator it = records.begin(); it != records.end(); it++) { if (it->id == id) { records.erase(it); break; } } } void updateRecord(int id, double amount) { for (vector<Record>::iterator it = records.begin(); it != records.end(); it++) { if (it->id == id) { it->amount = amount; break; } } } void searchRecords(string type) { for (vector<Record>::iterator it = records.begin(); it != records.end(); it++) { if (it->type == type) { cout << "ID: " << it->id << endl; cout << "Date: " << it->date << endl; cout << "Type: " << it->type << endl; cout << "Amount: " << it->amount << endl; cout << "Description: " << it->description << endl; } } } void generateReport() { vector<double> income(5, 0); vector<double> expense(5, 0); for (vector<Record>::iterator it = records.begin(); it != records.end(); it++) { if (it->type == "Income") { income[0] += it->amount; if (it->description == "Salary") income[1] += it->amount; else if (it->description == "Bonus") income[2] += it->amount; else if (it->description == "Investment") income[3] += it->amount; else if (it->description == "Gift") income[4] += it->amount; } else if (it->type == "Expense") { expense[0] += it->amount; if (it->description == "Food") expense[1] += it->amount; else if (it->description == "Clothing") expense[2] += it->amount; else if (it->description == "Housing") expense[3] += it->amount; else if (it->description == "Transportation") expense[4] += it->amount; } } cout << "Total income: " << income[0] << endl; cout << "Salary: " << income[1] << endl; cout << "Bonus: " << income[2] << endl; cout << "Investment: " << income[3] << endl; cout << "Gift: " << income[4] << endl; cout << "Total expense: " << expense[0] << endl; cout << "Food: " << expense[1] << endl; cout << "Clothing: " << expense[2] << endl; cout << "Housing: " << expense[3] << endl; cout << "Transportation: " << expense[4] << endl; } double calculateBalance() { double income = 0, expense = 0; for (vector<Record>::iterator it = records.begin(); it != records.end(); it++) { if (it->type == "Income") { income += it->amount; } else if (it->type == "Expense") { expense += it->amount; } } return income - expense; } }; void printMenu() { cout << "1. Add record" << endl; cout << "2. Delete record" << endl; cout << "3. Update record" << endl; cout << "4. Search records" << endl; cout << "5. Generate report" << endl; cout << "6. Calculate balance" << endl; cout << "7. Quit" << endl; } int main() { AccountBook accountBook; int choice; while (true) { printMenu(); cout << "Enter your choice: "; cin >> choice; if (choice == 7) { cout << "Goodbye!" << endl; break; } switch (choice) { case 1: { int id; string date, type, description; double amount; cout << "Enter ID: "; cin >> id; cout << "Enter date (YYYY-MM-DD): "; cin >> date; cout << "Enter type (Income/Expense): "; cin >> type; cout << "Enter amount: "; cin >> amount; cout << "Enter description: "; cin >> description; accountBook.addRecord(id, date, type, amount, description); cout << "Record added." << endl; break; } case 2: { int id; cout << "Enter ID: "; cin >> id; accountBook.deleteRecord(id); cout << "Record deleted." << endl; break; } case 3: { int id; double amount; cout << "Enter ID: "; cin >> id; cout << "Enter amount: "; cin >> amount; accountBook.updateRecord(id, amount); cout << "Record updated." << endl; break; } case 4: { string type; cout << "Enter type (Income/Expense): "; cin >> type; accountBook.searchRecords(type); break; } case 5: { accountBook.generateReport(); break; } case 6: { cout << "Balance: " << accountBook.calculateBalance() << endl; break; } default: { cout << "Invalid choice." << endl; break; } } } return 0; }
Program ujian
Selesai kod ditulis, kita perlu menguji atur cara. Kaedah khusus untuk menguji program termasuk: (1) Masukkan data dan operasi, seperti menambah, memadam, mengemas kini, bertanya, melaporkan, dll. (2) Semak sama ada program mengeluarkan Hasil yang betul diperolehi (3) Semak sama ada program boleh keluar seperti biasa. Semasa ujian, kami boleh menggunakan data yang berbeza untuk ujian bagi memastikan ketepatan dan kestabilan program. Jika masalah ditemui dalam program, kod tersebut perlu diubah suai dan nyahpepijat.Atas ialah kandungan terperinci Bagaimana untuk menulis program perakaunan mudah dalam C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!