2021 04 07 - 0409의 코딩 일지

2021 0407 - 20210409

까지는 새롭게 배우게된 문자열과 반복문에 대해서 공부를 했엇는데

조건문 보다 조금 더 어려운 것 같은 느낌이 들었다 그래서 주말동안 우선적으로 반복문만 반복해서 ^^ 풀어 봤는데 이 블로그를 쓰고 있는 4월13일 현재에는 77%정도는 이해를 한것 같다

그래도 아직 만족스럽지 않으니 나머지 잡히지 않는 33%는 저녁시간이나 주말 시간을 이용해서 좀 더 연습해봐야겠다

내가 풀어봤을때 어려웠던 문자열과 반복문 문제를 포스팅
해보려고 한다

문자열

function makeLastSeenMsg(name, period) {
  let day = 60 * 24; //hour * 24 = day.
  let hour = 60; //시간단위를 분으로 보고 hour = 60으로 선언
 //우선 첫번째 if 문에서 분이 day 보다 같거나 크면 name:과 내림된 (period/day) 일전에 접속함이 return 되어야함
 //그리고 else if 문을 써서 만약 period가 day 보다 작으면 이어지는 else if 문에 period가 hour 보다 같거나 
 //크면 똑같이 내림으로 하는 name: (period / hour)시간 전에 접속함을 return 해야함
 //그리고 else 를 써서 위에 모두 해당하지 않으면 name: period 분전에 접속함을 리턴해줌
 //
  if (period >= day) {
    return `${name}: ${Math.floor(period / day)}일 전에 접속함`
  }else if(period >= hour){
    return `${name}: ${Math.floor(period / hour)}시간 전에 접속함`
  }else{
    return `${name}: ${period}분 전에 접속함`
  }

}

문제를 풀면서 느낀점

이 문제를 처음 접했을때는 도대체 어디서 부터 접근을 해야 할지 감이 잘 오지 않았는데(그래서 2일 동안 이 문제만 못풀고 있었음 ㅜㅜ ) 우선 생각이 든건 시간과 관련된 거니까 시간을 선언해보자 였다 그리고 차츰 코드를 써내려가는데
문자열로 바꿔쓰는 ${}의 개념과 '' 의 개념이 다른건 알지만 아직까지 명확하게 어떤 부분에서 다른지는 오늘 저녁의 숙제중의 하나인것 같다

문자열을 풀면서 느낀점은 문자열을 풀어나갈 때에 먼저 어떤걸 기준으로 문제를 풀어가냐가 중요한것 같다
기준이 하나가 잡히면 그래도 나머지 함수는 구글링을 하던 문법을 구글링을 하던 나름 술술 풀린다.

내가 생각하는 내가 부족한점

아직 문제 해결 능력 자체가 아직은 많이 부족한 것 같다 더 많은 문제를 풀어보면서 더 다양한 레파토리를 보고 문제해결 능력을 길러나가야 할 것 같다

반복문

function makePermutations(str) {
  let result = '' ///숫자열을 문자열로 만들어 줘야 함

 for(let left = 0 ; left < str.length; left++){
   for(let right = 0 ; right < str.length ; right++ ){
    result = result + `${str[left]}${str[right]},`;
  }
 }
 return result.slice(0,result.length -1) //인덱스 범위를 0부터 중복되는 끝단은 잘라서 생성
}
///숫자열을 문자열로 만들어 줘야 함
//왼쪽을 기준으로 반복되는 반복문 작성 (구구단의 단 역활)
//오른쪽에  왼쪽에 반복되는 반복문 작성 (구구단의 곱해지는 수 역활)
// 출력값으로 문자열로 만들어주는 result로 그 둘을 더해줌 
//인덱스 범위를 0부터 중복되는 끝단은 잘라서 생성

이 문제는 왼쪽에 있는 수를 반복해주는 for문 안에
오른쪽에 반복되는 for 문을 넣은 2중 반복문이다.
2중반복문에서는 내가 문제를 어떻게 풀어나갈 것인가에 대한 설계가
중요한 것 같은데 아직 그 설계를 하는게 익숙하지 않아서 좀 해맨 것 같다
그래도 페어의 도움으로 차근차근 코드를 써내려가면서 조금씩 익숙해 졌다
반복문은 말 그대로 반복해서 풀어야 이해가 잘 가는 것같다

Todo

반복문과 문자열 더 풀어보기
블로그에 포스팅하기
다음주에 배울것 찾아보기

좋은 웹페이지 즐겨찾기