본문 바로가기
728x90
반응형

알고리즘/Python15

6090 : 수 나열하기3(Python 기초 100제) 어떤 규칙에 따라 수를 순서대로 나열한 것을 수열(sequences)이라고 한다. 예를 들어 1 -1 3 -5 11 -21 43 ... 은 1부터 시작해 이전에 만든 수에 -2를 곱한 다음 1을 더해 다음 수를 만든 수열이다. 이런 이상한 수열을 알게 된 영일이는 또 궁금해졌다. "그럼.... 13번째 나오는 수는 뭘까?" 영일이는 물론 수학을 아주 잘하지만 이런 문제는 본 적이 거의 없었다... 그래서 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다. 시작 값(a), 곱할 값(m), 더할 값(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때, n번째 수를 출력하는 프로그램을 만들어보자. 시작 값(a), 곱할 값(m), 더할 값(d), 몇 번째 인지를 나타내는 정수(.. 2021. 3. 3.
6089 : 수 나열하기2(Python 기초 100제) 어떤 규칙에 따라 수를 순서대로 나열한 것을 수열(sequences)이라고 한다. 예를 들어 2 6 18 54 162 486 ... 은 2부터 시작해 이전에 만든 수에 3을 곱해 다음 수를 만든 수열이다. 이러한 것을 수학에서는 앞뒤 수들의 비율이 같다고 하여 등비(비율이 같다의 한문 말) 수열이라고 한다. (등비수열 : geometric progression/sequence) 등비 수열을 알게된 영일이는 갑자기 궁금해졌다. "그럼.... 13번째 나오는 수는 뭘까?" 영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다. 시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때 n번째 수를 출력하는 프로그램을 만들어보자. 시작 값(a), 등비의 값.. 2021. 3. 3.
6088 : 수 나열하기1(Python 기초 100제) 어떤 규칙에 따라 수를 순서대로 나열한 것을 수열(sequences)이라고 한다. 예를 들어 1 4 7 10 13 16 19 22 25 ... 은 1부터 시작해 이전에 만든 수에 3을 더해 다음 수를 만든 수열이다. 이러한 것을 수학에서는 앞뒤 수들의 차이가 같다고 하여 등차(차이가 같다의 한문 말) 수열이라고 한다. (등차수열 : arithmetic progression/sequence) 수열을 알게 된 영일이는 갑자기 궁금해졌다. "그럼.... 123번째 나오는 수는 뭘까?" 영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다. 시작 값(a), 등차(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때 n번째 수를 출력하는 프로그램을 만들어보자. 시작 값(a),.. 2021. 3. 3.
6087 : 3의 배수는 통과(Python 기초 100제) 1부터 입력한 정수까지 1씩 증가시켜 출력하는 프로그램을 작성하되, 3의 배수인 경우는 출력하지 않도록 만들어보자. 예를 들면, 1 2 4 5 7 8 10 11 13 14 ... 와 같이 출력하는 것이다. ... for i in range(1, n+1) : if i%2==0 : continue #다음 반복 단계로 넘어간다. print(i, end=' ') #i가 짝수가 아닐 때만 실행된다. ... 위 코드는 홀 수만 출력하는 예시이다. 조건문이나 반복문의 코드블록 안에서 continue 가 실행되면, 반복 블록 안에 있는 나머지 부분을 실행하지 않고, 다음 반복 단계로 넘어간다. 즉, 반복 블록의 나머지 부분은 실행되지 않고, 다음 단계의 반복을 계속(continue.. 2021. 3. 3.
6086 : 거기까지! 이제 그만~(Python 기초 100제) 1, 2, 3 ... 을 순서대로 계속 더해 합을 만드는데, 그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자. 즉, 1부터 n까지 정수를 하나씩 더해 합을 만드는데, 어디까지 더해야 입력한 수보다 같거나 커지는지 알아보고자 하는 문제이다. 하지만, 이번에는 그 때 까지의 합을 출력해야 한다. 예를 들어, 57을 입력하면 1+2+3+...+8+9+10=55에서 그 다음 수인 11을 더해 66이 될 때, 그 값 66이 출력되어야 한다. ex) while True : s += c c += 1 if s>=n : break print(s) 조건문이나 반복문의 코드블록 안에서 break 가 실행되면, 반복실행을 중단(break)하고, 가장 가까운 반복 블록의 밖으로 .. 2021. 3. 2.
6085 : 그림 파일 저장용량 계산하기(Python 기초 100제) 이미지가 컴퓨터에 저장될 때에도 디지털 데이터화 되어 저장된다. 가장 기본적인 방법으로는 그림을 구성하는 한 점(pixel, 픽셀)의 색상을 빨강(r), 초록(g), 파랑(b)의 3가지의 빛의 세기 값으로 따로 변환하여 저장하는 것인데, 예를 들어 r, g, b 각 색에 대해서 8비트(0~255, 256가지 가능)씩을 사용한다고 하면, 한 점의 색상은 3가지 r, g, b의 8비트+8비트+8비트로 총 24비트로 표현해서 총 2^24 가지의 서로 다른 빛의 색깔을 사용할 수 있는 것이다. 그렇게 저장하는 점을 모아 하나의 큰 이미지를 저장할 수 있게 되는데, 1024 * 768 사이즈에 각 점에 대해 24비트로 저장하면 그 이미지를 저장하기 위한 저장 용량을 계산할 수 있다. 이렇게 이미지의 .. 2021. 3. 2.
728x90
반응형