Skip to main content

Define a class MyDate (day, month, year) with methods to accept and display a MyDate object. Accept date as dd, mm, yyyy. Throw user defined exception “InvalidDateException” if the date is invalid. Examples of invalid dates : 03 15 2019, 31 6 2000, 29 2 2021


 import java.io.*;

import java.util.*;

class InvalidDateException extends Exception
{
      InvalidDateException()
      {
             System.out.println("Invalid Date");
      }
}

class MyDate
{
      int day,mon,yr;
      void accept(int d,int m,int y)
      {
           day=d;
           mon=m;
           yr=y;
      }
      void display()
      {
           System.out.println("Date is valid : "+ day+ "/"+ mon+ "/"+ yr);
      }
}

class Date
{
      public static void main(String args[]) throws Exception
      {
            Scanner sc=new Scanner(System.in);
            System.out.println("Enter Date : dd mm yyyy");
            int day=sc.nextInt();
            int mon=sc.nextInt();
            int yr=sc.nextInt();
            int flag=0;
            try
            {
                 if(mon<=0 || mon>12)
                      throw new InvalidDateException();
                 else
                 {
                      if(mon==1 || mon==3 || mon==5 || mon==7 || mon==8 || mon==10 || mon==12)
                      {
                            if(day>=1 && day<=31)
                                 flag =1;
                            else
                                 throw new InvalidDateException();
                      }
                      else if(mon==2)
                      {
                            if(yr%4==0)
                            {
                                 if(day>=1 && day<=29)
                                     flag=1;
                                 else
                                     throw new InvalidDateException();
                            }
                            else
                            {
                                  if(day>=1 && day<=28)
                                       flag=1;
                                  else
                                     throw new InvalidDateException();
                            }
                       }  
                            else
                            {
                                  if(mon==4 || mon==6 || mon==9 || mon==11)
                                  {
                                        if(day>=1 && day<=30)
                                             flag=1;
                                        else
                                             throw new InvalidDateException();
                                  }
                            }
                      }
                      if(flag==1)
                      {
                            MyDate dt=new MyDate();
                            dt.accept(day,mon,yr);
                            dt.display();
                      }
                 }
                 catch(InvalidDateException mm)
                 {
                        System.out.println("Invalid Date");
                 }
         }
}

Comments

Popular posts from this blog

Write a program to read book information (bookid, bookname, bookprice, bookqty) in file “book.dat”. Write a menu driven program to perform the following operations using Random access file: i. Search for a specific book by name. ii. Display all book and total cost

  import java . io .*; import java . util .*; class Book {       String name , id ;       int qty ;       double price , total ;       Book ( String i , String n , String p , String q )      {               name = n ;               id = i ;               qty = Integer . parseInt ( q );               price = Double . parseDouble ( p );               total = qty * price ;      }       public String toString ()      {               System . out . println ( "name\t id\t qty\t price\t total" );               String s = name + "\t" + id + "\t" + qty + "\t" + price + "\t" + total ;           ...

Write a Java program to design a screen using Awt that will take a user name and password. If the user name and password are not same, raise an Exception with appropriate message. User can have 3 login chances only. Use clear button to clear the TextFields.

  import java . awt .*; import java . awt . event .*; import javax . swing .*; class InvalidPasswordException extends Exception {       InvalidPasswordException ()       {             System . out . println ( "Username and password is not same" );       } } public class Password extends Frame implements ActionListener {       Label uname , upass ;       TextField nametext ;       TextField passtext , msg ;       Button login , Clear ;       Panel p ;       int attempt = 0 ;       char c = '*' ;             public void login ()       {             p = new Panel ();             uname = new Label ( "Username : " , Label . CENTER );             upass = n...