×
Reviews 4.9/5 Order Now

Java Program to Create Hospital Management System Assignment Solution

July 11, 2024
Dr. Natalie Austin
Dr. Natalie
🇦🇪 United Arab Emirates
Database
Dr. Natalie, a highly regarded academician with a Ph.D. from the University of London, brings over 8 years of exemplary experience in SQL assignments. With a remarkable track record of completing over 800 assignments, Dr. Natalie is celebrated for her proficiency and dedication to delivering top-quality solutions in SQL.
Key Topics
  • Instructions
  • Requirements and Specifications
Tip of the day
Break your Python assignment into smaller tasks and test each part separately. Use meaningful variable names, write comments for clarity, and leverage built-in functions to simplify your code.
News
In 2025, JetBrains Fleet 2.0 introduced AI-powered code completion, while VS Code added advanced AI-driven bug detection and coding assistants, enhancing programming efficiency.

Instructions

Objective

Write a java assignment program to create hospital management system.

Requirements and Specifications

Advanced Java Assignment #6 – 100 points

Due date – Wednesday March 23 11:59pm (nothing late)

  • You are to rewrite the program “read_file_data.java” that uses the data file “hospital.txt”
  • The program opens the data file and reads the data into parallel arrays. It also prints the data from the parallel arrays.
  • You are to change the program to read the data into a linked list along with printing the data from the linked list.

What to submit:

  • Copy your code to a word document
  • Copy the screen print of the final output to the word document
  • Submit the work document to blackboard

Source Code

package read_file_data; import javax.swing.JOptionPane; import java.io.*; import java.util.*; import java.text.*; public class read_file_data { public static void main(String[] args) { // Variable to hold the selection given by user int selection; // Create instance of surgery_info surgery_info surgery = new surgery_info(); // Start app surgery.start_system(); // Display selection menu and get option given by user selection = surgery.menu(); // Show Menu until user enters option 3 which is "Exit" while(selection !=3) { if(selection == 1) // user selected "Add Data" surgery.add_data(); else if(selection==2) // user selected "Print all data" surgery.report_data(); //surgery.report_data(); selection = surgery.menu(); // display menu again }//while loop System.exit(0); } } class surgery_info { // LinkedList object LinkedList list; void start_system() { // Instantiate linkled list list = new LinkedList(); // String variable to store each line read from file String newLine; // Variable to store attributes for each Node int Pnumber; String Pname; String Dname; String Type; double Cost; try { //define a file variable for Buffered read BufferedReader Surgery_file = new BufferedReader(new FileReader("hospital.txt")); //read lines in file until there are no more lines in the file to read while ((newLine = Surgery_file.readLine()) != null) { //there is a "#" between each data item in each line StringTokenizer delimiter = new StringTokenizer(newLine,"#"); // Get all attributes Pnumber = Integer.parseInt(delimiter.nextToken()); Pname =delimiter.nextToken(); Dname =delimiter.nextToken(); Type =delimiter.nextToken(); Cost = Double.parseDouble(delimiter.nextToken()); // insert into the linked list list.insert(new Node(Pnumber, Pname, Dname, Type, Cost)); }//while loop Surgery_file.close(); }//end try catch (IOException error) { //there was an error on the file writing System.out.println("Error on file read " + error); }//error on read }//end start_system // Function that shows the menu and gets the option from user int menu() { String snum; int selection; String Output = "Surgery Info" + "\n" +"1. Add New Data" + "\n" + "2. Print all Data" + "\n" + "3. Exit System" + "\n" + " " + "\n" + "Enter your selection >"; snum = JOptionPane.showInputDialog(null, Output, "",JOptionPane.QUESTION_MESSAGE); selection=Integer.parseInt(snum); return selection; }//end menu // This function adds new data to the linked list void add_data() { //add new patient, doctor, and surgery information String svalue,Output; // Variable to hold patient's attributes int Pnumber; String Pname; String Dname; String Type; double Cost; // Ask for name Output = "Enter the Patient Number (5 digits)"; svalue =JOptionPane.showInputDialog(null,Output, "",JOptionPane.QUESTION_MESSAGE); Pnumber = Integer.parseInt(svalue); // Ask for last name Output = "Enter the Patient Last Name"; Pname =JOptionPane.showInputDialog(null,Output, "",JOptionPane.QUESTION_MESSAGE); // Ask for Doctor last Name Output = "Enter the Doctor Last Name (Atkins, Johnson or Brown)"; Dname =JOptionPane.showInputDialog(null,Output, "",JOptionPane.QUESTION_MESSAGE); // Ask for type of surgery Output = "Enter the Type of Surgery (knee hip or heart)"; Type =JOptionPane.showInputDialog(null,Output, "",JOptionPane.QUESTION_MESSAGE); // Ask for cost of surgery Output = "Enter the Cost of Surgery"; svalue =JOptionPane.showInputDialog(null,Output, "",JOptionPane.QUESTION_MESSAGE); Cost = Double.parseDouble(svalue); // Insert into the linked list list.insert(new Node(Pnumber, Pname, Dname, Type, Cost)); }//end add_data void report_data() { list.print(); }//end report_data }//end class /** * Class that represents a linkedlist node */ class Node { // The data store by each node is a Patient's data // Basically, we can see a node as a patient int Pnumber; String Pname; String Dname; String Type; double Cost; // Variable to store the next Node Node next; // overloaded constructor public Node(int Pnumber, String Pname, String Dname, String Type, double Cost) { this.Pnumber = Pnumber; this.Pname = Pname; this.Dname = Dname; this.Type = Type; this.Cost = Cost; this.next = null; } } /** * This class represents a linked list with a head */ class LinkedList { // head of the list Node head; // Size int size; // Default constructor. Creates an Empty Linked List public LinkedList() { head = null; size = 0; } // Insert new node into the list public void insert(Node node) { // If the head is null, it is because the list is empty. if(head == null){ head = node; } else { // linked list not null, so search for last node and then insert the new node // after that one Node temp = head; while(temp.next != null) { temp = temp.next; } temp.next = node; } size++; } // Function used to print all the nodes in the list public void print() { Node current = head; System.out.println("All Patient Information"); while(current != null) { System.out.println(current.Pnumber + " " + current.Pname + " " + current.Dname + " " + current.Type + " " + current.Cost); current = current.next; } } }

Related Samples

Explore our free database assignment samples for valuable insights and examples. See how we tackle various database challenges and concepts to help you excel in your studies.