Python #27 l 파이썬 프로그래밍_3과 5의 배수 합하기

신승호·2021년 3월 29일
0

Python

목록 보기
28/35
post-custom-banner

List

  • 파이썬 프로그램
    • gugudan
    • 3과 5의배수 합하기
    • 게시판 페이징
    • 간단한 메모장 생성
    • 탭을 4개의 공백으로 바꾸기
    • 하위 디렉터리 검색하기
    • 파이보
    • 코딩도장

파이썬 날개달기_3과 5의 배수 합하기


3과 5의 배수 합하기

10 미만의 자연수에서 3과 5의 배수를 구하면 3, 5, 6, 9이다. 이들의 총합은 23이다.

1000 미만의 자연수에서 3의 배수와 5의 배수의 총합을 구하라.

need to consider

  • 입력 받는 값은?
    • 1부터 999까지(1000 미만의 자연수)
  • 출력하는 값은?
    • 3의 배수와 5의 배수의 총합
  • 생각해 볼 것은?
    • 3의 배수와 5의 배수는 어떻게 찾지?
    • 3의 배수와 5의 배수가 겹칠 때는 어떻게 하지?

1. 1000 미만의 자연수 구하자

  • while반복문 사용
n = 1
while n < 1000:
    print(n)
    n += 1		# n = n + 1 과 동일
  • for 반복문 사용
numbers = list(range(1,1000))

for number in numbers:
    print(number)

2. 3과 5의 배수 구하자

  • for문곱하기 사용
    • 하지만 이건 1000이하 숫자로 맞추기 쉽지않다.
def baesu(n):
    result = []
    numbers = list(range(1,1000))
    for number in numbers:
        result.append(number*n)		# number(1~1000까지의 숫자)를 n(입력될 인수)와 곱해서 result값에 추가 
    return result

print(baesu(3))
  • for문if문 사용
numbers = list(range(1,1000))
for number in numbers:
    if number % 3 == 0:		# number로 입력되는 숫자중 3으로 나누었을 때 0이 되는 숫자는 3의 배수
        print(number)
  • 위의for문if문or을 추가로 사용해서 3과 5의 배수를 구해보자
    • or는 합집합을 구하는 방법이다
    • 3의 배수 또는 5의 배수에 속하는 숫자 모여락~!
numbers = list(range(1,1000))
for number in numbers:
    if number % 3 == 0 or number % 5 == 0:
        print(number)

여기서 5의 배수를 찾기위해 if문을 또 사용한다면, 3의 배수5의 배수에 겹치는 "15"같은 숫자들이 발생한다.

result = 0
for n in range(1, 1000):
    if n % 3 == 0:
        result += n
    if n % 5 == 0:
        result += n
print(result)

3. 마지막으로 이 3과 5의 배수의 합을 구해보자

  • for문 사용하여 1부터 999까지 더하기
numbers = list(range(1,1000))
result = 0

for number in numbers
    result = result + number	# 추가되는 값을 계속 누적으로 더해준다 999까지

print(result)
  • 위의 방법을 통해 3과 5의 배수를 합해보자
numbers = list(range(1,1000))
result = 0

for number in numbers:
    if number % 3 == 0 or number % 5 == 0:
        result = result + number

print(result)		# 이 값을 result = result + number 바로 밑에 두면 누적 값이 전부 뜨고 / 현재 위치에 놓아야만 최종 값만 딱 뜬다.
233168
profile
신승홉니다
post-custom-banner

0개의 댓글