Group PAG / Mbed OS PAG-CourseWork-NicksEdits

Dependencies:   LPS25H hts221

Fork of Coursework by Group PAG

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Clock.cpp Source File

Clock.cpp

00001 #include "Clock.h"
00002 
00003 Clock::Clock(int y, int mo, int d, int h,int mi,int s){
00004     year = y;
00005     month = mo;
00006     day = d;
00007     hour = h;
00008     minute = mi;
00009     second = s;
00010 }
00011 Clock::Clock(){
00012     year = 2017;
00013     month = 01;
00014     day = 01;
00015     hour = 12;
00016     minute = 0;
00017     second = 0;
00018 }
00019     
00020 void Clock::TickTock(){
00021     //Adds a second every second
00022     second = second +1;
00023     if (second == 60){
00024         second = 0;
00025         minute = minute +1;
00026         if (minute == 60){
00027             minute = 0;
00028             hour = hour +1;
00029             if (hour == 24){
00030                 hour = 0;
00031                 day = day +1;
00032                     //check for month length - leap years to be added
00033                     if (month == 1||month == 3||month == 5||month == 7||month == 8||month == 10||month == 12){
00034                         if (day == 31){
00035                             day = 1;
00036                             month = month +1;
00037                             if (month == 12){
00038                                 month = 1;
00039                                 year = year +1;
00040                             }
00041                         }
00042                     }
00043                     else if (month == 4||month == 6||month == 9||month == 11){
00044                         if (day == 30) {
00045                         day = 1;
00046                         month = month +1;
00047                             if (month == 12){
00048                                 month = 1;
00049                                 year = year +1;
00050                             }
00051                         }
00052                     }       
00053                     else if (month == 2){//FEB LEAP YEAR TO ADD!
00054                         if (day == 28){
00055                         day = 1;
00056                         month = month +1;
00057                             if (month == 12){
00058                                 month = 1;
00059                                 year = year +1;
00060                             }
00061                         }       
00062                     } 
00063                 }
00064             }
00065     }
00066 }
00067   
00068 void Clock::setClock(Clock *dt){
00069     year = dt->year;
00070     month = dt->month;
00071     day = dt->day;
00072     hour = dt->hour;
00073     minute = dt->minute;
00074     second = dt->second;
00075 }