알고리즘

내일배움캠프 여섯번째 발걸음

choijming21 2024. 7. 9. 18:02

1. CODEKATA

 

ⓐ 약수의 합 문제: 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.

 

<제한 사항>

- n은 0 이상 3000이하인 정수입니다.

 

<입출력 예>

n return
12 28
5 6

 

 

<입출력 예 설명>

입출력 예 #1

12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.

입출력 예 #2

5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다.

 

먼저, for구문 이란?

가장 일반적인 for문의 형태는 다음과 같다. console.log(i)를 총 10번 반복하는 반복문이다.

for(let i = 0; i<10; i++){
	console.log(i);
}

 

for문 안의 구성이 각각 의미하는 바를 살펴보면,
let i=0 : 변수 let i를 선언하고 0으로 할당 (반복문 초기값 설정)
i<10 : for문을 얼마나 돌릴 것인지 조건을 적는 부분(조건이 참이면 실행)
i++ : 루프가 한번 돌때마다 변수 증감식 (1씩 증가한다는 뜻)
여기에서는 i가 0부터 시작해서 10보다 작을 때까지 이므로 0~9. 총 10번 반복할 것이다.
i의 값은 루프가 한 번 돌때마다 1씩 증가하여 console.log는 1, 2, 3, .... 9를 순서대로 출력하고 for문은 종료된다.

 

 

풀이: 우선 sum이라는 변수에 0으로 초기화 한다. 그리고 for구문을 사용해 1부터 n까지 도는데 1씩 증가하면서 돌게한다.

그다음 약수를 찾아내기 위해 if구문을 사용해 n을 i로 나눴을 때 몫이 0인 숫자만 고르고, sum에 그 i를 더해준다.

마지막으로 sum을 리턴한다.

 

 

 

 

2. 강의 내용

 

◆ 배포란 뭘까?

배포는 소프트웨어 개발 과정에서 개발한 애플리케이션, 웹사이트, 서비스 등을 실제 사용자들에게 제공하는 과정을 말한다. 즉, 배포는 만든 작업물을 외부에 공개하는 일이다. 링크가 생겨서 요청하면 결과를 볼 수 있는 서비스를 세상에 내놓는 일이다.

 

깃허브(Github)란 뭘까?

깃허브는 인터넷에서 개발자들이 자신의 코드를 저장하고 다른 사람들과 공유하는 곳이다. 예를 들어, 게임이나 앱을 만들고 그 코드를 깃허브에 올리면 다른 사람들도 그 코드를 볼 수 있다. 현업에서는 깃허브를 통해 다양한 사람들과 함께 일하고 프로젝트를 진행할 수 있는 강력한 협업 틀로 사용되고 있다. 깃허브를 안쓰는 개발자는 거의 없다고 봐도 될 정도이다.