SHARE
TWEET

Untitled

a guest Jun 12th, 2019 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /**
  2.  * @(#)FinalExamJG.java
  3.  *
  4.  * FinalExamJG application
  5.  *
  6.  * @author
  7.  * @version 1.00 2019/6/11
  8.  */
  9.  
  10. public class FinalExamJG {
  11.     int finalExamIDNum;
  12.     int month;
  13.     boolean Leap;
  14.     int day;
  15.     int year;
  16.  
  17.     public FinalExamJG(int IDNum, int mon, int d, int y) {
  18.         // Assigns ID num
  19.         if (IDNum < 2000)
  20.             finalExamIDNum = 22;
  21.         else
  22.             finalExamIDNum = IDNum;
  23.  
  24.         // Assigns month
  25.         if ((mon < 1) || (mon > 12)) {                // resets month if invalid along with day
  26.             mon = 0;
  27.             day = 0;
  28.         } else
  29.             month = mon;
  30.         // Assigns Day
  31.         if ((d < 1) || (d > 31))
  32.             day = 0;
  33.         else
  34.             day = d;
  35.  
  36.         // assigns year
  37.         if ((y < 2011) || (y > 2019))
  38.             year = 0;
  39.         else
  40.             year = y;
  41.  
  42.         // Calculates when it's a leap year
  43.         if (year % 4 == 0) {
  44.             Leap = true;
  45.         /*  if (month == 2) {               //Old leap year february code
  46.                 if (day > 29) {
  47.                     day = 29;
  48.                 }
  49.             }
  50.         }*/
  51.         } else {                                // New leap year code
  52.             Leap = false;
  53.         }
  54.         switch (month) {
  55.             case 1:
  56.                 if (day > 31)                // Limit days per month
  57.                     day = 31;
  58.                 break;
  59.             case 2:
  60.                 if (Leap == true) {
  61.                     if (day > 29)
  62.                         day = 29;
  63.                 } else if (day > 28) {
  64.                     day = 28;
  65.                 }                                    // completed leap year code
  66.                 break;
  67.             case 3:
  68.                 if (day > 31)
  69.                     day = 31;
  70.                 break;
  71.             case 4:
  72.                 if (day > 30)
  73.                     day = 30;
  74.                 break;
  75.             case 5:
  76.                 if (day > 31)
  77.                     day = 31;
  78.                 break;
  79.             case 6:
  80.                 if (day > 30)
  81.                     day = 30;
  82.                 break;
  83.             case 7:
  84.                 if (day > 31)
  85.                     day = 31;
  86.  
  87.                 break;
  88.             case 8:
  89.                 if (day > 31)
  90.                     day = 31;
  91.                 break;
  92.             case 9:
  93.                 if (day > 30)
  94.                     day = 30;
  95.                 break;
  96.             case 10:
  97.                 if (day > 31)
  98.                     day = 31;
  99.                 break;
  100.             case 11:
  101.                 if (day > 30)
  102.                     day = 30;
  103.                 break;
  104.             case 12:
  105.                 if (day > 31)
  106.                     day = 31;
  107.                 break;
  108.             default:
  109.                 System.out.println("Invalid month, Restart & try again");
  110.         }
  111.     }
  112. }
  113. ==============================================================
  114. public class TestFinalExamJG {
  115.     public static void main(String[] args) {
  116.         FinalExamJG t1 = new FinalExamJG(1999,2,29,2016); // Proves Leap year gets detected, IDNum
  117.         FinalExamJG t2 = new FinalExamJG(2001, 2, 29,2019); // Further proves leap year, IDNum
  118.         FinalExamJG t3 = new FinalExamJG(2001, 3, 32, 2021); // Day and year resets to 0
  119.         FinalExamJG t4 = new FinalExamJG(2001, 13, 12, 2019); // Month cap resets to 0
  120.  
  121.         System.out.println(t1.finalExamIDNum + " " + t1.month + " " + t1.day + " " + t1.year);
  122.         System.out.println(t2.finalExamIDNum + " " + t2.month + " " + t2.day + " " + t2.year);
  123.         System.out.println(t3.finalExamIDNum + " " + t3.month + " " + t3.day + " " + t3.year);
  124.         System.out.println(t4.finalExamIDNum + " " + t4.month + " " + t4.day + " " + t4.year);
  125.     }
  126. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top