Likes

Java Lab_10_Ans_1

Write a program to accept two numbers and perform division, the program should provide the functionality such that if a usertries to divide the number by 0, the program should terminate with a customized message.

SOLUTION





import java . util . Scanner;

public class Divison {

 public static void main (String args []) {
   
  int num1, num2, result;
  Scanner input = new Scanner (System . in);
  System.out.println ("Enter the 1st number");
  num1 = input . nextInt ();

 System.out.println ("Enter the 2nd number");

 num2 = input . nextInt ();

 try {

   result = num1 / num2;
   System.out.println ("The result is " + result);

 } catch (ArithmeticException e) {

 System,out.println ("Divison by zero not Possible! ");
  }

 }

}

java Lab09_Solution2.

David has been assigned a task of creating an application to store the employee details. For this, David decided to display the following menu when the application starts:

1.  Entry Data
2.  Display Data
3.  Exit

Thereafter, he decides to implement the following functionalities:

-When a user selects the option to entry data, the employee details. such as employee ID, employee name, department, designation, date of joining, date of birth, marital status, and date of marrige, should be captured. In addition, a functionality to add more records should be implemented.

-When a user selects the option to display the data, the stored data muust be displayed.

-When a user selects the option to exit, the application must be terminated. Further, David needs to implement user- defined exceptions for the following cases:

- If the menu input entered by the user is other than1,2,or3, an appropriate message should be displayed to the user and the application must restart.

- If the employee ID does not start with the aplhabet, e or E, an appropriate message should be displayed to the user and the application must terminate.

Help David to implement the preceding functionalities.


SOLUTION


1- Create a Java application, Lab09_Solution2.
2- Create a class, SelectionExeption, in the Java application, Lab09_Solution2.
3- Replace the exiting code in the SelectionException.java file with the following code:

class SelectionException extands Exception  {

selectionException ()   {
System.out.println("Invalid input, Please select a valid menu option");

}
}
4- Create a class, PatternException, in the Java application, Lab09_Solution2.
5- Replace the exisiting code in the PatternException.java file with the following code:

public class PatternException extends RuntimeException  {

public PatternException()  {

System.out.println("Invalid pattern for Employee ID...");
}

public PatternException(String msg)   {
super(msg);
}
}
6- Create a class, EmployeeDetails, in the Java application,Lab09_Solution2.
7- Replace the existing code in the EmployeeDetails.java file with the following code:

import java.until.Scanner;

public class EmployeeDetails  {

String employeeDetails[] [] = new String[100] [8];

public void showMenu () throws SelectionException  {
   int option;
Scanner sc = new Scanner (System.in);

System.out.println("----------Menu--------");
System.out.println("1. Entry Data");
System.out.println("2. Display Data");
System.out.println("3. Exit");
System.out.print("\nchoose the option: ");

option = sc.nextInt() ;

Java Lab_8_Ans_5

CREATE A PROGRAM THAT SEARCHES A TEXT FILE BY USING REGULAR EXPRESSIONS.


SOLUTION


Create a simple applications that will loop through a text file(gettys.html) and search for
text by using regular expresions. If the desired text found on a line, print out the line number
and the line text.
9 <h4>Abrahan Lincoln</h4>
10 <h4>Thrusday, November 19, 1863</h4>

Tasks
 The gettys.html file is located in the root of the project folder. To examine the file,
with the project open, click the file tab. Double-click the file to open it and exmaine its
content.
   1. Edit teh FindText.java file.
   2. Create a pattern and a Matcher field.
   3. Generate a Matcher based on the supplied Pattern object.
   4. Search each line for the pattern supplied.
   5. Print the line numver and the line that has matching text.
   6. Run the FindText.java file and search for these patterns.
              All lines that contain <h4>
              All the ines that contain the word "to" (For example, line 17 should
              not be selected.)
              All the lines that start with 4 spaces'
              Lines that bedin with "<p" or "<d"
              Lines that only contain HTML closing tags( for example, "</div>")
                 
Open the StringPractice02 project and make the followng changes. Please note that the
code to read a file has been supplied for you.
    1. Edit the FindText.java file.
    2. Create fields for a Pattern and a Matcher object
       private Pattern pattern;
       private Matcher m;
    3. Outside the search loop, create and initialize your pattern object.
       pattern = pattern.compile("<h4>");
    4. Inside the search loop, generate a Matcher based on the supplied Pattern
       object.
      m = pattern.matcher(line);
    5. Inside the search loop, search each line for the pattern supplied. print the line
       number and the line that has matching text.
       if (m.find() )  {
           System.out.println(" " + " "+ line);
       }
   6. Run the FindText.java file and search for these patterns.
              All the lines that contain <h4>
              pattern = Pattern.compile("<h4>");
             
             All the lines that contain the word "to" (For example, line 17 should
             not be selected.)
     
             pattern = Pattern.compile("\\bto\\b"0;
       
             All the lines that start with 4 spaces
             
            pattern = Pattern.compile("^\\s{4}");

            Lines that begin with "<p" or "<d"
 
            pattern = Pattern.compile("^<[p|d]");

            Lines that only contain HTML closin tags(For example, "</div>")
 
            pattern = Pattern.compile("^</.*?>$");

Java Lab_8_Ans_4

Paras comma-delimited text and convert the data into Shirt objects.

SOLUTION



you have been given some comma-delimated shirt data . parse the data . store it in shirt
objects and print the results. the output from the program should like the following.

=== Shirt List ===

Shirt ID: S001

Description: Black Polo Shirt

Color: Black

Size: XL

Shirt ID: S002

Description: Black Polo Shirt


Color: Black

Size: L

Shirt ID: S003

Description: Blue Polo Shirt

Color: Blue

Size: XL

Shirt ID: S004

Description: Blue Polo Shirt

Color: Blue

Size: M

Shirt ID: S005

Description: Tan Polo Shirt

Color: Tan

Size: XL

Shirt ID: S006

Description: Black T-Shirt

Color: Black

Size: XL

Shirt ID: S007

Description: White T-Shirt

Color: White

Size: L

Shirt ID: S008

Description: White T-Shirt

Color: White

Size:L

Open the StringPractice01 project and make the following changes.

1 Edit the main method of the StringSplitTest . java file.

2 Parse each line of the shirts array. Create a shirt object for each
  line and add the shirts to a List. A for loop tp perform
  these steps could be as follows.

   for (Stirng curLine:shirts){
     String[] e = curLine . split(",");
     shirtList . add(new Shirt(e[0], e[1], e[2], e[3] ) );
  }

3 Print out the list of shirts. A loop to do this could be like the
  following.

  System.out.println("=== Shirt List ===");
  for (Shirt shirt:shirtsList){
    System.out.println(shirt . toString() );
  }

4 Run the StringSplitList . java file and verify that your output is similar

Java Lab_8_Ans_3

Write a program to accept the date from the user and validateit according to the format, DD/MMYYYY or D/M/YYYY. In addition, the year should be from 1900 to 2099.


SOLUTION



import java . util . Scanner;
import java . util . regex . Matcher;
import java . util . regex . Pattern;

 public class DateValidator {

 private Pattern pattern;
 private Matcher matcher;
 private static final String DATE_PATTERN = " (0 ? [1-9] | [12] [0-9] | 3 [01] ) / (0 ? [1-9] | [012] ) /
             ( ( 19 | 20) \\ d\\d)";
     public DateValidator () {
       pattern = Pattern . compile (DATE _ PATTERN);
  }
   
     public boolen validate (final String date) {
 
     matcher = pattern . matcher(date);

     if (matcher . matches () ) {
   
        matcher . reset ();

     if (matcher . find () ) {

          String day = matches . group (1);
          String month = matcher . group (2);
          int year = Integer . parseInt (matcher . group
     (3) );
            if (day . equals ("31")
                   && (month . equals ("4") ||
   month . equals ("6") || month . equals ("9")
         
       || month . equals ("11") || month . equals ("04") || month . equals ("11") .
       
        || month . equals ("09") ) ) {
       return false; // only 1,3,5,7,8,10,12 has 31 days
        } else if (month . equals ("2") ||
   month . equals (:02") ) {
                              // leap year
                            if (year % 4 == 0) {
                            if (day . equals ("30") ||
           ("31") ) {
                          return false;
                      } else {
                                return true;
                      } else {
                             if (day . equals ("29") || day . equals
               ("30") || day . equals ("31") ) {
                                               return false;
                                             } else {
                                                   return true;
                                             } else {
                                          }
                                       }
                                 } else {
                                       return true;
                                    }
                               } else {
                            }
                                 return false;
                        }
                              } else {
                                  return false;
                           }
                       }
                             
                       public static void main (String [] args) {
                        DateValidator dv = new ateValidator ();
                         boolen status;
                          do {
                               Scanner sc = new Scanner (System. in);
                               String dt;

                               System.out.println ("Enter the date: ");
                               dt = sc . next ();
                       
                               status = dv . validate (dt);
                                if (status) {
                                      System.out.println ("Date is in correct format");
                                          } else {
                                              System.out.println ("Date is not in correct format");
                                            }
                                         } while (status == false);
                                    }
                                }      







                          

Java Lab_8_Ans_2

Write a program to accept a three letter word as an input from the message, Expression Matched, if the world starts with ,"a","b","c", and ends with, "at".Solution


import java . util . Scanner;
import java . util . regex . Matcher;
imort java  . util . regex . Pattern;

 public class TestRegx {

 public static void main (String [] args) {
 Scanner sc = new Scanner (System . in);
 String input;

 System.out..print ("Enter the string: ");
 input = sc . next ();
 Pattern myPattern = Pattern . compile (" [abc] at");
 Matcher myMatcher = myPattern . matcher (input);
 boolen  myBoolen  = myMatcher . matches ();
 if (myBoolen) {
      System.out.println ("Expression is Matched");
    } else {
      System.out.println ("Expression Not Matched");
    }
  }

}




Java Lab_8_Ans_1

Write a program that the URL of the Web portal from the user, such as http://www.xyx.com,or ftp://xyz.com,and validate the format of the URL with the following fields:
- Protocol, such as https or http
-Domin, such as google or yahoo
-Top level domain, such as.co or .com

SOLUTION



import java . util . Scanner;
import java . util . regex . Matcher;
import java . util . regex . Pattern;

class UrlChecker {

 public static void main (String [] args) {
   pattern Mypattern = Pattern . compile ("^ ( (https ? |
 ftp) : // | (www | ftp) \\ .) [ a-zO-9-] + [a-z] + ) + ( [/ ?] . *) ?$" );
      Scanner input = new Scanner (System . in);
      System.out.println ("Enter the Url  to be checked:
  ");
      String name = input . nextLine ();
      Matcher Mymatcher = Mypattern . matcher (name);
      Boolen Myboolen = Mymatcher . matches ();
      if (Myboolen == true) {
          System.out.println ("Url is correct");
       } else {
          System.out.println ("Url is incorrect");
     }
  }

}