Программирование или Как не нужно делать тестовое задание
|
|
Пятница, 18 Мая 2007 г. 01:20
+ в цитатник
Как не нужно делать тестовое задание:
http://machine3000.livejournal.com/592.html
Решил попробовать решить эту задачку: (потребовалось минут 10)
/*
1 day = 24.0 hour
1 minute = 60 second
60 minute = 1 hour
10.0 glob = 1 decaglob
*/
#define TT_DAY 0
#define TT_HOUR 1
#define TT_MINUTE 2
#define TT_SECOND 3
#define TT_GLOB 4
#define TT_DECAGLOB 5
int tpr[]={1, 24, 60, 60, 1, 10};
double Convert(double val, BYTE type, BYTE totype){
if(type<4 && totype>3 || totype<4 && type>3) return 0;
if(type<totype){
for(type; type<totype; type++){val*=tpr[type+1];}
}else {
for(type; type>totype; type--){val/=tpr[type];}
}
return val;
}
Работает это так:
double ret=1440;
ret=Convert(ret, TT_MINUTE, TT_DAY);
double здесь, ну так, на всякий случай, скорее она здесь и нафиг не нужна.
При несоответствии типов возвращается 0. (Я не понимаю что за тип glob. и как он связан со временем)
вот так.
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-