일단 문제 그대로 보여드리면
#1
모닝과 소나타가 자동차 경주를 하는데 모닝의 속도는 시속 110km이고 소나타의 속도는 시속 50km이다.
그리고 소나타는 모닝보다 800m 앞에서 출발한다.
모닝이 소나타를 앞지르는 것은 출발 후 몇 초 후부터 인지 계산하여 출력하는 프로그램을 작성하시오
#답
morning_dis <- 0
sonata_dis <- 800
sec <- 0
while(TRUE) {
sec <- sec + 1
morning_dis <- morning_dis + 110,000/3600 * sec
sonata_dis <- sonata_dis + 50,000/3600 * sec
if (morning_dis > sonata_dis )
break
}
print(sec)
여기서 morning_dis , sonata_dis 에 이전sec 이동거리에 각 속력*루핑되는 sec 를 곱해서 더하는게 이해가 안되네요
그러니까
위와 같은 구조에선 단위시간1초의 이동거리가 누적되는게 아니라 1,2,3...(n+1)초의 이동거리가 누적되서 더해진다고 생각되서요
그래서
sec <- 0
morning_dis <- 0
sonata_dis <- 0
while(T){
sec <- sec + 1
morning_dis <- 110,000/3600 * sec
sonata_dis <- 50,000/3600 * sec + 800
if (morning_dis > sonata_dis )
break
}
print(sec)
가 되어야 하는게 아닌가요???
응 R은 전혀 모르지만 니 말이 맞는 것 같아
되서->돼서 [리듬 맞춤법 봇♬]