/**/
#include <stdio.h>
int ChangeTime(int*, int*);
int TimeInput(int*, int*);
int TimeCalc(int*, int*);
const int twelve = 720;
const int TOTAL = 1440;
int main(void)
{
int sleeptime = 0;
int hour, minutes = 0;
double result = 0;
int gotoschool = 0;
int gotohome = 0;
int schooltime = 0;
int select = 0;
int gotogoa = 0;
int gotogob = 0;
int gotoacademy = 0;
printf("하루 몇 시간 주무시나요?(1시간 30분 = 1 30): ");
scanf_s("%d %d", &hour, &minutes);
sleeptime = ChangeTime(&hour, &minutes);
printf("학교에 몇 시에 가서 몇 시에 끝나나요?\n");
printf("등교 시간: ");
scanf_s("%d %d", &hour, &minutes);
gotoschool = ChangeTime(&hour, &minutes);
printf("하교 시간: ");
scanf_s("%d %d", &hour, &minutes);
gotohome = ChangeTime(&hour, &minutes);
schooltime = TimeCalc(&gotoschool, &gotohome);
printf("학원은 몇 시에 가서 몇 시에 끝나나요?\n");
printf("1. 시간 입력\n2. 해당 없음\n\n");
printf("입력: ");
scanf_s("%d", &select);
if (select == 1)
{
printf("학원 가는 시간: ");
scanf_s("%d %d", &hour, &minutes);
gotogoa = ChangeTime(&hour, &minutes);
printf("학원 끝나는 시간: ");
scanf_s("%d %d", &hour, &minutes);
gotogob = ChangeTime(&hour, &minutes);
gotoacademy = TimeCalc(&gotogoa, &gotogob);
}
result = (TOTAL - sleeptime - schooltime - gotoacademy)/(double)60;
printf("남는 시간: %f\n", result);
return 0;
}
int ChangeTime(int* ptr, int* ptr2) // ptr은 시간, ptr2는 분
{
static int result = 0;
static int result1 = 0;
result = (*ptr *= 60) + *ptr2;
return result;
}
int TimeCalc(int* ptr, int* ptr2)
{
int result = 0;
result = (twelve - *ptr) + *ptr2;
return result;
}
사용법은 7시간이면 7 0
이런식으로 입력하시면 되고
7시간 30분이면 7 30
이렇게 입력하시면 됩니다
포인터 어렵지 않아요~
저도 해낸걸 보면 어렵지 않아요~