Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk menulis program perakaunan mudah dalam C++?

Bagaimana untuk menulis program perakaunan mudah dalam C++?

PHPz
Lepaskan: 2023-11-03 09:52:51
asal
1134 orang telah melayarinya

Bagaimana untuk menulis program perakaunan mudah dalam C++?

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. Dalam program, kita perlu menggunakan struktur data untuk menyimpan setiap struktur data yang biasa digunakan ialah Linear meja, susunan dan baris gilir, dsb. Di sini, kami memilih untuk menggunakan jadual linear untuk menyimpan setiap rekod Setiap rekod termasuk maklumat berikut:

(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 kod

Sebelum 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.
  1. Berikut ialah contoh kod program perakaunan mudah:
  2. #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;
    }
    Salin selepas log masuk

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.
  1. Ringkasan

Artikel ini memperkenalkan cara menggunakan C++ untuk menulis program perakaunan mudah, termasuk menentukan fungsi dan keperluan program serta mereka bentuk struktur data dan algoritma, menulis kod dan program ujian. Program ini mempunyai fungsi seperti menambah, memadam, mengemas kini, menyoal, melaporkan dan mengira baki, yang boleh membantu orang ramai mengurus status kewangan mereka dengan lebih baik. Dengan mengkaji kandungan artikel ini, pembaca boleh mempunyai pemahaman yang lebih mendalam tentang aplikasi bahasa C++ dan kaedah asas pengaturcaraan, dan meningkatkan kemahiran pengaturcaraan mereka.

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan