Update vaccine quantities. The system should allow the employees to select a particular vaccine and indicate either received or distributed quantity. In either case, the quantity of the selected vaccine needs to be updated accordingly in the vaccine.txt

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Update vaccine quantities. The system should allow the employees to select a
particular vaccine and indicate either received or distributed quantity. In either case,
the quantity of the selected vaccine needs to be updated accordingly in the vaccine.txt
file.
E.g. Assume that the initial quantity of Pfizer vaccine in vaccine.txt file is 1 million.
When the company receives a new stock, this quantity has to be added to the existing
quantity of 1 million in the vaccine.txt file. In the case where the vaccines are distributed
to hospitals for vaccination, the distributed quantity has to be subtracted from the
quantity available in the vaccine.txt file.
Note: Whenever a vaccine is distributed to hospitals, its code and the quantity
distributed need to be recorded into a text file named as dist.txt. Each vaccine is
expected to be distributed more than once. Hence, while testing the program, there
should be at least 10 records created in the dist.txt file.
3. Search vaccine and its available quantity by using vaccine code. The system should
have a feature for employees to query a particular vaccine’s existing quantity from the
vaccine.txt file using vaccine code.
4. Produce a list of all vaccines and their distributed quantities . The system should allow
the employees to list all distributed vaccines and their accumulated quantities read from
the dist.txt file.
Note: The vaccines and their distributed quantities need to be sorted ascendingly (with
highest quantity listed first followed by second highest and so on) using Bubble sort
before displaying on the screen.

 

MY C Programming CODE:

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

// Function Declarations

void create_inventory();

void update_vacc_qty();

int search_vaccine();

void display_vaccine();

// Main Function starts here

int main()

{

create_inventory();

display_vaccine();

search_vaccine();

//update_vacc_qty();

return 0;

}

//Function to Create Vaccine.txt as per the given table

void create_inventory()

{

int option = 1;

// variables to collect data as per table given

char vaccName[15];

char vaccCode[2];

char country[15];

int qty;

float populaion;

//File definition

FILE *infile;

infile = fopen("Vaccine.txt","w"); // file opening for writing

if(infile == NULL) // Checking for the file creation

{

printf("Vaccine.txt file not found\n");

}

//Accepting data from user from keyboard till user enters 0 to close

while(option != 0)

{

printf("Enter Vaccine Name : ");

scanf("%s",vaccName);

printf("Enter Vaccine Code : ");

scanf("%s",vaccCode);

printf("Enter Counry : ");

scanf("%s",country);

printf("Enter Dosage Required : ");

scanf("%d",&qty);

printf("Enter Population Covered : ");

scanf("%f",&populaion);

//writing to the file using fprintf command

fprintf(infile,"%s %s %s %d %3.2f\n",

vaccName,vaccCode,country,qty,populaion);

printf("\nEnter 1 to continue and 0 to exit : ");

scanf("%d",&option);

if(option == 0)

fclose(infile); // closing the file when user wants to exit

}

}

//Function to display the file contents in a formatted way

void display_vaccine()

{

// variables to collect data as per table given

char vaccName[15];

char vaccCode[2];

char country[15];

int qty;

float populaion;

FILE *infile;

infile = fopen("Vaccine.txt","r"); // file opening for reading

if(infile == NULL) //checking for file exists or not

{

printf("Vaccine.txt file not found\n");

}

//printing the header line

printf("%15s\t%2s\t%15s\t%6s\t%10s\n","Vaccine Name","Vaccine Code","Country","Dosage","Population");

// Reading the file

while(fscanf(infile,"%s %s %s %d %f\n",vaccName,vaccCode,country,&qty,&populaion) !=EOF)

{

//printing the read data in a formatted way

printf("%15s\t%13s\t%15s\t%d\t%3.2f\n",vaccName,vaccCode,country,qty,populaion);

}

fclose(infile); // closing the file

}

void update_vacc_qty()

{

// to be coded

}

int search_vaccine()

{

// variables to collect data as per table given

char vaccName[15];

char vaccCode[2];

char country[15];

int qty;

float populaion;

FILE *infile;

char vcode[2];

char temp[2];

int value;

infile = fopen("Vaccine.txt","r"); // file opening for reading

//getting the vaccine code from user through keyboard to search

printf("Enter Vaccine Code to Search : ");

scanf("%s",vcode);

if(infile == NULL) // checking for file existence

{

printf("Vaccine.txt file not found\n");

}

strcpy(temp,vcode);

//Reading the file

while(fscanf(infile,"%s %s %s %d %f\n",vaccName,vaccCode,country,&qty,&populaion) !=EOF)

{

//checking user entered vaccine code and available in the file is same

if(vaccCode[0] == temp[0] && vaccCode[1] == temp[1])

{

// Printing the matched record

printf("%15s\t%2s\t%15s\t%6s\t%10s\n","Vaccine Name"," Vaccine Code","Country","Dosage","Population");

printf("%15s\t%13s\t%15s\t%d\t%3.2f\n",vaccName,vaccCode,country,qty,populaion);

}

}

fclose(infile);// closing the file

}//end of Program

Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY