8일차 TIL : 문법 편견 타파

꽃봉우리·2024년 4월 24일

❓ 가지고 있던 고정관념 ❓

배열 저장하는 방법에 대해서 고정관념 보다는 여태 코테를 준비하면서 푼 알고리즘 문제에서는 반복문(for문)을 통한 초기값; 조건식; 증감연산 이런식으로 배열에 값을 저장했었다. 이럴 때 주로 초기값에 int i = 0이나 i 대신에 j,k...을 사용하였다. 이렇게만 쓰니 이번 계산기를 만드는 과정에서 내가 내 스스로 생각을 확장시키지 못하였다.

📃고정관념으로 생긴 문제점

과제의 요구사항이 배열을 선언하고 index값을 저장할 수 있는 변수도 선언해야했다.

일단 바로 배열과 인덱스값을 저장할 변수를 만들었다.

그리고 result 값을 배열에 저장하기 위한 코드도 만들어 보았다.

문제는 여기서 발생했다. for문을 이용해 memory라는 배열에 result값을 하나씩 해당 인덱스에 넣고 count 값을 올리는 것을 구현하려고 했는데 이렇게 for문을 이용하니 result값이 memory[0]번부터 memory[9]까지 같은 값이 저장되고 출력을 할 때 되니 count값은 원하는 1이 아닌 10이 저장되어있다. 이것을 해결하기 위해 for문을 제거하고 다시 코드를 짜보았다.


이렇게 i를 초기화하고 해보았지만 증감연산이 반응하지 않아서 이것도 틀린 코드였다.

🛠 코드수정

생각을 해보니 난 count에다가 인덱스를 저장하고 있었다. 그래서 아래처럼 수정을 해보았다.

이렇게 count를 인덱스 값으로 쓰면 해결되는 너무나 간단한 문제였다!
매번 인덱스값을 i,j를 쓰다보니 이런식으로 생각을 확장시키는 것이 바로 되지 않았다. 하루하루 코드를 짜면서 배우고 있고 깨닫는거 보니까 아직은 할 만한 것 같다.

0개의 댓글