Write a program to enter the id and price of a number of products, store them all in a user defined file, and search the product when particular id is entered.

Sep 22, 2018

Program Source Code:

#include<iostream>
// for file operations
#include<fstream>

// defining macro for global file name
// though better to make member of class Product
// and initialize using constructor
#define file_name "products.txt"

using namespace std;
class Product{
	private:
		int id;
		float price;
	public:
		void read_data(){
			cout<<"Enter ID:"<<endl;
			cin>>id;
			cout<<"Enter Price:"<<endl;
			cin>>price;
		}
		void write_to_file(){
			Product prod;
			ofstream file(file_name,ios::app);
			prod.read_data();
			file.write(reinterpret_cast(&prod), sizeof(prod));
		}
		void read_from_file(){
			Product prod;
			ifstream file(file_name);
			while(!file.eof()){
				if (file.read(reinterpret_cast<char*>(&prod), sizeof(prod))){
					prod.show_data();
				}
			}	
		}
		void show_data(){
			cout<<"ID : "<<id<<endl;
			cout<<"Price : "<<price<<endl;
		}
		void search_record(){
			Product prod;
			int search_id;
			cout<<"Enter the ID to search :"<<endl;
			cin>>search_id;
			ifstream file(file_name);
			for (int i = 0; !file.eof(); i++)
			{
				file.seekg(i * sizeof(prod));
				file.read(reinterpret_cast(&prod), sizeof(prod));
				if (prod.id == search_id )
				{
					cout<<"#### Your search information ####"<<endl;
					prod.show_data();
					break;
				}
			}
		}
};


int main(){
	int record_number;
	cout<<"Enter Record Number :"<<endl;
	cin>>record_number;
	Product product;
	for (int i = 0; i < record_number; i++)
	{
		product.write_to_file();
	}
	product.search_record();
	return 0;
}

 

Sample Run:

Enter Record Number :
7
Enter ID:
123
Enter Price:
2000
Enter ID:
124
Enter Price:
3000
Enter ID:
4444
Enter Price:
200000
Enter ID:
6767
Enter Price:
900000
Enter ID:
4545
Enter Price:
64646
Enter ID:
67777
Enter Price:
464646
Enter ID:
787878
Enter Price:
353535
Enter the ID to search :
6767
#### Your search information ####
ID : 6767
Price : 900000

 

Note: file name can be made as entered by the user; to do so make file name, a data member of the class and initialize it through constructor. Please refer previous programs on file handling to achieve the mechanism.

Related


31 Write a program to enter the name and salary for a number of employees, store them all in a file, and finally search and display the salary...............
Date: Sep 22, 2018
32 Write a program, using a class to read the contents of the text file and convert all upper case letters to lower case and vice-versa and write the result in to another file.
Date: Sep 22, 2018
33 Write a program to enter the id and price of a number of products, store them all in a user defined file, and search the product when particular id is entered.
Date: Sep 22, 2018
34 Write a program using class template to sort two lists of numbers, one integer list and another floating point list.
Date: Sep 23, 2018
35 Write a program using function template to sort two lists of numbers, one integer list and another floating point list.
Date: Sep 23, 2018
36 Write a program using function template to find the sum of first and last element of an array.
Date: Sep 23, 2018
37 Write a template function to find the maximum number from the template array of size N.
Date: Sep 23, 2018
38 Write a function template to swap the numbers.
Date: Sep 23, 2018
39 Write a program using class template to swap two set of numbers.(one integer set and another floating point set)
Date: Sep 23, 2018
40 Exception handling in C++
Date: Aug 11, 2019
41 Explain the concept of encapsulation and information hiding In an object oriented paradigm with the help of an example.
Date: Sep 2, 2019
42 Write a program to find sum of first and last element of an array demonstrating use of new and delete operator.
Date: Sep 2, 2019
43 Write a program to compare two integer numbers and two single character using function overloading.
Date: Sep 2, 2019
44 Write an oop to create a class named “Time” with data objects and two member functions to add two member functions to add two times and display the resultant time.
Date: Sep 2, 2019
45 Write a program to define a class “string” using constructor initialize two string objects with given strings and write necessary functions to concatenate and display the strings.
Date: Sep 2, 2019

Tools/Apps





© Nepal Exchange Rates