일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- JavaScript
- 장고 개발 순서
- 장고
- 북마크만들기
- join()
- Node.js
- 장고 프로젝트
- Bookmark
- Exercism
- 알고리즘
- 예술영화추천
- 타사인증
- passport.js
- MYSQL
- 독립영화플랫폼
- mongodb
- Algorithm
- 자바스크립트
- Django
- til
- 개발
- ART_Cinema
- Django Blog
- Blog
- 프로젝트
- 북마크앱
- 파이썬 웹프로그래밍 장고
- python
- 장고 프로젝트 순서
- MyPick31
- Today
- Total
Juni_Dev_log
(200126_TIL) 'Space Age' 본문
▶ Space Age
(Problem)
Given an age in seconds, calculate how old someone would be on:
- Mercury: orbital period 0.2408467 Earth years
- Venus: orbital period 0.61519726 Earth years
- Earth: orbital period 1.0 Earth years, 365.25 Earth days, or 31557600 seconds
- Mars: orbital period 1.8808158 Earth years
- Jupiter: orbital period 11.862615 Earth years
- Saturn: orbital period 29.447498 Earth years
- Uranus: orbital period 84.016846 Earth years
- Neptune: orbital period 164.79132 Earth years
So if you were told someone were 1,000,000,000 seconds old, you should be able to say that they're 31.69 Earth-years old.
If you're wondering why Pluto didn't make the cut, go watch this youtube video.
- 우주의 나이를 계산하는 문제이다.
- 행성마다의 궤도기간이 있다.
- 수성 : 궤도기간은, 0.2408467년이다.
- 금성 : 궤도기간은, 0.61519726년이다.
- 지구 : 궤도기간 1년 (365.25일 / 31,557,600 초)
- 화성 : 궤도기간 1.8808158년
- 목성 : 궤도기간 11.862615년
- 토성 : 궤도기간 29.447498년
- 천왕성 : 궤도기간 84.016846년
- 해왕성 : 궤도기간 164.79132년
- 그래서, 1,000,000,000초를 든다면, 31.69년이라고 볼 수 있다.
- 초를 년수로 계산해보자.
(Solution)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
//
// This is only a SKELETON file for the 'Space Age' exercise. It's been provided as a
// convenience to get you started writing code faster.
//
const earth_year = 31557600
export const age = (planet,second) => {
// 1년 = 31,557,600초
// 주어진 second를 년으로 계산하고, 소수점 3번째자리에서 올려줌.
if(planet == 'mercury'){
// 수성 1년 = 1year * 0.2408467
const mercury_year = earth_year * 0.2408467;
const convert_mercury_year = Math.round((second/mercury_year)*100)/100;
return convert_mercury_year;
}
if(planet == 'venus'){
// 금성 1년 = 1year * 0.61519726
const venus_year = earth_year * 0.61519726;
const convert_venus_year = Math.round((second/venus_year)*100)/100;
return convert_venus_year;
}
if(planet == 'earth'){
// 지구 1년
const convert_earth_year = Math.round((second/earth_year)*100)/100;
return convert_earth_year;
}
if (planet == 'mars'){
// 화성 1년 = 1year * 1.8808158
const mars_year = earth_year * 1.8808158;
const convert_mars_year = Math.round((second/mars_year)*100)/100;
return convert_mars_year;
}
if (planet == 'jupiter'){
// 목성 1년 = 1year * 11.862615
const jupiter_year = earth_year * 11.862615;
const convert_jupiter_year = Math.round((second/jupiter_year)*100)/100;
return convert_jupiter_year;
}
if (planet == 'saturn'){
// 토성 1년 = 1year * 29.447498
const saturn_year = earth_year * 29.447498;
const convert_saturn_year = Math.round((second/saturn_year)*100)/100;
return convert_saturn_year;
}
if (planet == 'uranus'){
// 천왕성 1년 = 1year * 84.016846
const uranus_year = earth_year * 84.016846;
const convert_uranus_year = Math.round((second/uranus_year)*100)/100;
return convert_uranus_year;
}
if (planet == 'neptune'){
// 해왕성 1년 = 1year * 164.79132
const neptune_year = earth_year * 164.79132;
const convert_neptune_year = Math.round((second/neptune_year)*100)/100;
return convert_neptune_year;
}
};
|
cs |
- 지구 1년을 기준으로, 행성마다의 1년을 계산한 변수들을 만든다.
(ex) earth_year , mercury_year, venus_year 등등
- 함수의 매개변수로 주어지는 second를 받아서 행성의 1년을 기준으로 변환한다.
(ex) convert_mercury_year : 수성을 기준으로 주어진 '초(second)'를 변환한 변수
- if 문으로 planet을 조건문으로 걸러서, 진행하고 return 으로 반환한다.
- (★) 제일 중요한 것은 소수점 셋째자리에서 반올림을 진행해야하기에, Math.round() 를 활용한다.
'CodingTest > Exercism' 카테고리의 다른 글
(200128_TIL) 'Bank Account' (0) | 2021.01.28 |
---|---|
(200127_TIL) 'Pangram' (0) | 2021.01.27 |
(200125_TIL) 'Gigasecond', 'RNA Transcription' (0) | 2021.01.25 |
(200124_TIL) 'Resistor Color', 'Resistor Color Duo' (0) | 2021.01.24 |
(210123_TIL) 'Hello World', 'Two Fer' (0) | 2021.01.23 |