×
Samples Blogs Make Payment About Us 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
Define types and interfaces early in your TypeScript assignments to improve code clarity and prevent errors. Always enable strict mode in your tsconfig.json for enhanced type safety and debugging ease.
News
In 2024, PyCharm introduced enhanced Docker and GitHub integrations for smoother production-like development, while Visual Studio Code improved real-time remote collaboration features, boosting productivity for programming students

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.