대학교_1학년/문제해결과 SW프로그래밍

문제해결과 SW프로그래밍 - 문자열

대학기록 2024. 12. 27. 10:48

1. 연산자 

  • 산술 연산자 : +, -, *, /, %, //, **
  • 복합대입 연산자: =, +=, -=, *=, /=
  • 비교 연산자: ==, !=, >, >=, <, <=
  • 논리 연산자(True와 False 판별) : and, or, not

 
 
 
2. 덧셈

  • 정수 + 정수 = 정수형(int)
  • 실수 + 실수 = 실수형(float)
  • 정수 + 실수 = 실수형(float)

 
 
 
3. 문자열의 덧셈
: 피연산자에 해당하는 문자열의 연결 

 
 
 
 
4. 뺄셈 

 
 
 
 
 
5. 문자열의 곱셈

  • '안녕', '안녕 ' 문자열을 사용자가 입력한 숫자만큼 출력하기

 
 
 
예제) 방의 넓이

 
 
 
 
 
6. 나눗셈 

  • 정수 % 정수 = 실수
  • 숫자 '0' 은 어떤 수로 나누어도 결과는 항상 0임. 

 

  • '자료형 변환' 을 하면 소수점 이하의 데이터는 손실됨. 

 
 
예제) BMI 구하기 

  • bmi 를 구할 때, float를 앞에 붙여야한다. 

 
 
 
 
7. 나머지 구하기

  • 나머지를 구하는 연산자로 '%' 를 사용.
  • ex) 데이터의 홀, 짝을 구분하거나 숫자의 배수를 확인하기.

 
 
예제) 홀짝 게임하기 
짝수=0, 홀수=1 출력하기 

 
 
 
 
 
8. 몫 구하기

  • 몫 연산자 : // 
  • ex : 10 // 3 >> 3

 
예제) 빵을 나누어 줄 수 있는 학생 수 구하기
Q) 97개의 빵을 3개씩 최대 몇 명에게 나누어 줄 수 있는지 구하고, 남는 빵 개수도 구하자. 

 
 
 
 
9. 거듭제곱 구하기 

  • 거듭제곱을 구하는 연산자로 '**'를 사용함.
  • ex) 2 ** 3 >> 8

 
예제) 전염병 예산 감염자 수 구하기
Q) 전염병 감염 확산 추세를 파악한 결과, 하루에 한 사람이 한명씩 감염시키는 것으로 나타났다. 
     확진자 한 사람이 나오면, 30일 이후 몇 명의 감염자가 나올지 계산해보자. 
 

  • 첫 날에 2명이 감염되었고 가정하자. (p1, p2)
  • 둘쨋날에는 p1 사람이 2명을 더 감염시키고, p2가 두명을 더 감염시켜서 총 4명이 감염된다. 
  • 셋쨋날에는 4 x 2 로 총 8명이 감염된다. 
  • 이런 방식으로 30일 후에는 2**30 명이 감염된다. 

 
 
 
10. 복합대입 연산자

  • '=' : num = 10 : num 에 10을 대입한다. 
  • '+=' : num += 10 : num = num + 10 : num에 10을 더한 값을 다시 num에 대입한다. 
  • '-=' : num -= 10 : num = num - 10 : num에 10을 뺀 값을 다시 num에 대입한다. 
  • '*=' : num *= 10 : num = num * 10 : num에 10을 곱한 값을 다시 num에 대입한다. 
  • '/=' : num /= 10 : num = num / 10 : num에 10을 나눈 값을 다시 num에 대입한다. 

 
예제) 복리 계산기 만들기
Q) 예금계획 세우고 있다. 3년 정기 예금을 복리로 했을 때 가장 큰 목돈을 만들 수 있다. 500만원씩 3년 만기인 정기 예금 상품을 가입했었을 때, 3년 후 받게 될 총 수령액을 계산해보자.(이자율 : 연 5%)

 
 
 
 
 
11. 비교 연산자 

  • 연산의 결과값은 True 또는 False로 나타냄
  • '==' 또는 '!=' 

 
예제) 놀이동산 탑승 가능 판별하기 
Q) 놀이동산은 120cm 이상 어린이만 탑승할 수 있다. 신장을 입력하면 범퍼카를 탈 수 있는지 여부를 알려주는 프로그램을 만들어 보자. 

 
 
 
 
12. 
예제) 키가 120이상 170미만 이면 놀이기구 탑승가능.
--> 비교 연산자 : 120 <= height and height < 170 가 참이면 True

 
 
 
예제) 1분기 매출액 구하기 

  • 위에 세줄이 1월 매출 ~ 3월 매출까지 입력 받는 것이다. 

 
 
 
 
예제) 학점 계산하기

  • 비교 연산자 : (score < 60) or (absence >= 5) --> 가 참이면 True, 거짓이면 False

 
 
 
 
예제) 아이디와 비밀번호로 로그인하기

  • 비교 연산자 : (score < 60) or (absence >= 5) --> 가 참이면 True, 거짓이면 False

 
 
 
예제) 1분기 매출액 구하기

  • print('수익 : ', profit, '원') --> 수익 : (profit) 원