import java.io.*;class Date_DDMMYY{ public static void main(String args[])throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); int l, y, d, m; String dd, mm, yy; //array storing the maximum days of every month int maxdays[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; //array storing the month names String month[]={ "", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }; System.out.print("Enter any date in 8 digits (ddmmyyyy) format: "); String date = br.readLine(); //inputting the date in String format l = date.length(); //finding number of digits in the given input if(l==8) //performing the task only when number of digits is 8 { dd = date.substring(0,2); //extracting the day in String format mm = date.substring(2,4); //extracting the month in String format yy = date.substring(4); //extracting the year in String format d = Integer.parseInt(dd); //day in Integer format m = Integer.parseInt(mm); //month in Integer format y = Integer.parseInt(yy); //year in Integer format if((y%400==0) || ((y%100!=0)&&(y%4==0))) // condition for leap year { maxdays[2]=29; } /* checking whether the day, month and year are within acceptable range i.e. there cannot be an input like 35012013 because 35/01/2013 is unacceptable*/ if(m<0 || m>12 || d<0 || d>maxdays[m] || y<0 || y>9999) // Performing Date Validation { System.out.println("The day, month or year are outside acceptable limit"); } else { /* First Part */ System.out.println("Date in dd/mm/yyyy format = "+dd+"/"+mm+"/"+yy); /* Second Part */ System.out.print("Date in dd, month name, yyyy format = "+dd+" "+month[m]+", "+yy); } } else System.out.println("Wrong Input"); }} |
Output:
1) Enter any date in 8 digits (ddmmyyyy) format: 02052013
Date in dd/mm/yyyy format = 02/05/2013
Date in dd, month name, yyyy format = 02 May, 2013
Date in dd/mm/yyyy format = 02/05/2013
Date in dd, month name, yyyy format = 02 May, 2013
2) Enter any date in 8 digits (ddmmyyyy) format: 12111963
Date in dd/mm/yyyy format = 12/11/1963
Date in dd, month name, yyyy format = 12 November, 1963
Date in dd/mm/yyyy format = 12/11/1963
Date in dd, month name, yyyy format = 12 November, 1963
3) Enter any date in 8 digits (ddmmyyyy) format: 252013
Wrong Input
Wrong Input
4) Enter any date in 8 digits (ddmmyyyy) format: 29022013
The day, month or year are outside acceptable limit
The day, month or year are outside acceptable limit
No comments:
Post a Comment
any problem in any program comment:-