[챗GPT로 코딩 공부] 알고리즘 공부하기

내일배움캠프 수료생들은 챗GPT를 어떻게 개발 공부에 활용할까요?
Jun 28, 2024
[챗GPT로 코딩 공부] 알고리즘 공부하기
✍🏼
챗GPT, 개발 공부에 있어서 든든한 친구 같은 존재이죠. 내일배움캠프의 수강생들도 혼자 공부할 때에는 챗GPT의 도움을 받고 있는데요. 오늘은 내일배움캠프 수료생들의 챗GPT 경험담을 보고, 여러분의 개발 공부에 적용해봅시다.
 
여러분들이 IT 회사에 취직하려 할 때에 코딩 테스트를 치르게 되고, 그 코딩 테스트 준비를 위해서 알고리즘 문제를 풀어야 합니다. 이런 알고리즘 문제를 풀기 위해서는 조금 더 깊은 수준의 Kotlin 문법 지식을 요합니다. 챗GPT에서도 알고리즘 공부 도움을 받을 수 있습니다.
보통, 알고리즘 문제를 풀면서 챗GPT를 찾게되는 경우는 2가지입니다.
  • 모르는 Kotlin 문법을 알고싶을 때
  • 수학 공식을 Kotlin 문법으로 어떻게 표현하는지 알고싶을 때
조금 더 자세히 알아보도록 합시다.
 

1. 모르는 Kotlin 문법 알기

앞서 말했다시피, 저희가 배우는 Kotlin 문법은 알고리즘 문제보다는 앱 개발 위주로 배우게 됩니다. 그렇기 때문에 알고리즘 문제에서 접하는 문법은 저희가 배우는 문법의 범위 바깥에 있을 확률이 높습니다. 저 또한 이런 경우가 심심찮게 있었습니다.
예를 들면 아래와 같습니다.
notion image
이런 알고리즘 문제가 있습니다. 단어의 길이가 홀수면 가운데 글자를, 짝수면 가운데 두글자를 추출하면 된다는 것까지 이해했습니다. 하지만, 막상 그 단어를 추출하는 기능이 있는 함수를 모르면 정답을 맞출 수 없습니다.
 
이럴 때 저는 챗GPT를 사용했었습니다.
 
기원: Kotlin에서 단어의 글자 일부분을 추출하는 기능이 있어?
챗GPT: 네, Kotlin에서 문자열의 일부분을 추출하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 substring() 함수를 사용하는 것입니다. substring() 함수는 주어진 시작 및 끝 인덱스를 사용하여 문자열의 일부분을 추출합니다.
저는 이 때에 substring() 이라는 함수를 처음 알게 되었고, 이 substring() 함수를 사용하여 알고리즘 문제를 해결하였습니다.
 
 

2. 수학 공식을 Kotlin 문법으로 표현하기

알고리즘 문제 중에서는 수학에서 배운 공식을 써먹어야하는 문제 또한 있는데, 공식 자체는 알지만 이걸 컴퓨터 언어로 어떻게 표현해야할지 모를 때에도 이 챗GPT를 사용하게 됩니다. 예를 들자면 이런 것들이 있죠. 두 수의 최대공약수 & 최소공배수 찾기, 제곱근(√), 행렬의 곱셈 등… 수학을 공부하신 분들이라면 이걸 푸는 방법, 사용하는 방법 정도는 알고 있지만, 막상 이걸 컴퓨터에서 어떻게 구현해야할지 막막하게 느껴집니다. 그럴 때에도 역시 챗GPT를 사용하게 됩니다.
 
기원: Kotlin에서 제곱근은 어떻게 구현할 수 있어?
챗GPT: Kotlin에서 제곱근을 구하는 방법은 매우 간단합니다. Kotlin 표준 라이브러리에서 제공하는 sqrt 함수를 사용하면 됩니다. 이 함수는 kotlin.math 패키지에 포함되어 있습니다. sqrt 함수는 Double 타입의 값을 받아 제곱근을 계산한 후 결과를 반환합니다.
 

예제 1. 기본적인 제곱근 계산

import kotlin.math.sqrt fun main() { val number = 16.0 val result = sqrt(number) println("The square root of $number is $result") }
 

예제 2. 사용자 입력을 통한 제곱근 계산

import kotlin.math.sqrt fun main() { print("Enter a number: ") val input = readLine() ?: "0.0" val number = input.toDoubleOrNull() if (number != null && number >= 0) { val result = sqrt(number) println("The square root of $number is $result") } else { println("Please enter a valid non-negative number") } }
 

예제 3: 함수를 이용한 제곱근 계산

import kotlin.math.sqrt fun calculateSquareRoot(number: Double): Double { return sqrt(number) } fun main() { val number = 25.0 val result = calculateSquareRoot(number) println("The square root of $number is $result") }
 

정리

  • kotlin.math.sqrt 함수를 사용하여 제곱근을 계산할 수 있습니다.
  • 입력 값이 음수인 경우 NaN(Not a Number)을 반환하므로, 필요하면 입력 값 검증을 추가할 수 있습니다.
  • sqrt 함수는 Double 타입을 인자로 받으며 결과도 Double 타입으로 반환합니다.
자, 여기서 저희는 kotlin.math라는 명령어를 알게 됐습니다. 이외에도, 본인이 푼 문제가 알고리즘 상으로 오류가 없는지, 또는 알고리즘 문제를 푸는 다양한 방법을 알기 위해서 챗GPT를 사용하기도 합니다.
 
 

내일배움캠프가 여러분의 러닝메이트가 되어드리겠습니다

내일배움캠프의 많은 수강생들이 부트캠프 생활을 수료하고 현업에서 개발자로 활약하고 있습니다. 내일배움캠프는 모든 운영진이 교육, 특강, 12시간 밀착 케어, 찐한 관리, 인재 채용까지 열과 성을 다해 수강생들의 꿈을 지원하고 있습니다. 수많은 장애물을 넘을 수 있도록 내일배움캠프가 든든한 러닝메이트가 되어드리겠습니다. 내일배움캠프과 함께 여러분의 개발자 여정을 시작하세요.
 
 
CREDIT
글 | 김기원 내일배움캠프 수료생 편집 | 정효재 팀스파르타 에디터
Share article
Subscribe to our newsletter
RSSPowered by inblog