Система управления книжным магазином с использованием файловой системы
Опубликовано: 5 Января, 2022
Задача состоит в том, чтобы построить систему управления книжным магазином с использованием обработки файлов на C ++, которая помогает отслеживать все книжные записи в файле. Ниже перечислены функции, которые необходимо реализовать:
- Добавьте новую книгу, и подробности о книге:
- Идентификатор книги
- Название книги
- Имя автора
- Количество книг
- Удалить книгу
- Обновить книгу
- Посмотреть все книги
- Выход
Подход:
- Все функции будут реализованы в корпусах переключателей.
- Концепция обработки файлов будет использоваться для записи данных в текстовый файл, а также для чтения записанных данных.
- Требуемая функция будет записана под переключателями, которые будут выполняться в соответствии с вводом пользователя.
- Для разработки кода используются простые концепции передачи файлов, такие как открытие файла, закрытие файла, запись в файл и чтение файла и т. Д.
- IDE для компиляции кода языка C ++.
Ниже представлена реализация описанного выше подхода:
C ++
// C++ program to illustrate bookshop // management system using File Handling #include <fstream> #include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; // Bookshop Class class bookshope { public : void control_panel(); void add_book(); void show_book(); void check_book(); void update_book(); void del_book(); }; // Function to display the menus void bookshope::control_panel() { system ( "cls" ); cout << "
CONTROL PANEL" ; cout << "
1. ADD BOOK" ; cout << "
2. DISPLAY BOOKS" ; cout << "
3. CHECK PARTICULAR BOOK" ; cout << "
4. UPDATE BOOK" ; cout << "
5. DELETE BOOK" ; cout << "
6. EXIT" ; } // Function to add book void bookshope::add_book() { system ( "cls" ); fstream file; int no_copy; string b_name, a_name, b_id; cout << "
ADD BOOKS" ; cout << "
Book ID : " ; cin >> b_id; cout << "
Book Name : " ; cin >> b_name; cout << "
Author Name : " ; cin >> a_name; cout << "
No. of Books : " ; cin >> no_copy; // Open file in append or // output mode ios::out | ios::app); file << " " << b_id << " " << b_name << " " << a_name << " " << no_copy << "
" ; file.close(); } // Function to display book void bookshope::show_book() { system ( "cls" ); fstream file; int no_copy; string b_name, b_id, a_name; cout << "
All BOOKS" ; // Open the file in input mode if (!file) cout << "
File Opening Error!" ; else { cout << "
Book ID Book" << " Author No. of " "Books
" ; file >> b_id >> b_name; file >> a_name >> no_copy; // Till end of file is reached while (!file.eof()) { cout << " " << b_id << " " << b_name << " " << a_name << " " << no_copy << "
" ; file >> b_id >> b_name; file >> a_name >> no_copy; } system ( "pause" ); // Close the file file.close(); } } // Function to check the book void bookshope::check_book() { system ( "cls" ); fstream file; int no_copy, count = 0; string b_id, b_name, a_name, b_idd; cout << "
Check " << "Particular Book" ; // Open the file in input mode if (!file) cout << "
File Opening Error!" ; else { cout << "
Book ID : " ; cin >> b_idd; file >> b_id >> b_name; file >> a_name >> no_copy; while (!file.eof()) { if (b_idd == b_id) { system ( "cls" ); cout << "
" << "Check Particular Book" ; cout << "
Book ID : " << b_id; cout << "
Name : " << b_name; cout << "
Author : " << a_name; cout << "
No. of Books : " << no_copy; cout << endl << endl; count++; break ; } file >> b_id >> b_name; file >> a_name >> no_copy; } system ( "pause" ); file.close(); if (count == 0) cout << "
Book ID Not" << " Found..." ; } } // Function to update the book void bookshope::update_book() { system ( "cls" ); fstream file, file1; int no_copy, no_co, count = 0; string b_name, b_na, a_name; string a_na, b_idd, b_id; cout << "
Update Book Record" ; ios::app | ios::out); if (!file) cout << "
File Opening Error!" ; else { cout << "
Book ID : " ; cin >> b_id; file >> b_idd >> b_name; file >> a_name >> no_copy; // Till end of file is reached while (!file.eof()) { if (b_id == b_idd) { system ( "cls" ); cout << " " << "Update Book Record" ; cout << "
New Book Name : " ; cin >> b_na; cout << "
Author Name : " ; cin >> a_na; cout << "
No. of Books : " ; cin >> no_co; file1 << " " << b_id << " " << b_na << " " << a_na << " " << no_co << "
" ; count++; } else file1 << " " << b_idd << " " << b_name << " " << a_name << " " << no_copy << "
" ; file >> b_idd >> b_name; file >> a_name >> no_copy; } if (count == 0) cout << "
Book ID" << " Not Found..." ; } cout << endl; system ( "pause" ); // Close the files file.close(); file1.close(); } // Function to delete book void bookshope::del_book() { system ( "cls" ); fstream file, file1; int no_copy, count = 0; string b_id, b_idd, b_name, a_name; cout << "
Delete a Book" ; // Append file in output mode ios::app | ios::out); ios::in); if (!file) cout << "
File Opening Error..." ; else { cout << "
Book ID : " ; cin >> b_id; file >> b_idd >> b_name; file >> a_name >> no_copy; while (!file.eof()) { if (b_id == b_idd) { system ( "cls" ); cout << "
" << "Delete a Book" ; cout << "
Book is Deleted " "Successfully...
" ; count++; } else file1 << " " << b_idd << " " << b_name << " " << a_name << " " << no_copy << "
" ; file >> b_idd >> b_name; file >> a_name >> no_copy; } if (count == 0) cout << "
Book ID " << "Not Found..." ; } system ( "pause" ); // Close the file file.close(); file1.close(); } // Function for book shop record void bookShopRecord() { int choice; char x; bookshope b; while (1) { b.control_panel(); cout << "
Enter your choice : " ; cin >> choice; switch (choice) { case 1: do { b.add_book(); cout << "
Want to add" << " another book? " "(y/n) : " ; cin >> x; } while (x == 'y' ); break ; case 2: b.show_book(); break ; case 3: b.check_book(); break ; case 4: b.update_book(); break ; case 5: b.del_book(); break ; case 6: exit (0); break ; default : cout << "
INVALID CHOICE
" ; } } } // Driver Code int main() { // Function Call bookShopRecord(); return 0; } |
Выход:
Хотите учиться на лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для языка и STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .