System

[CodeUp/Python] Python언어 기초 100제

오호츠크해 기단 2023. 1. 12. 00:21
728x90

1.

6006 : [기초-출력] 출력하기06,

6007 : [기초-출력] 출력하기07,

6008 : [기초-출력] 출력하기08

https://codeup.kr/problem.php?id=6006
https://codeup.kr/problem.php?id=6007
https://codeup.kr/problem.php?id=6008


[출력]
"!@#$%^&*()'
"C:\Download\'hello'.py"
print("Hello\nWorld")

print("\"!@#$%^&*()'")
print('"!@#$%^&*()\'')

print("\"C:\\Download\\'hello'.py\"")

print('print("Hello\\nWorld")')

2. 6019 : [기초-입출력] 연월일 입력받아 순서 바꿔 출력하기

https://codeup.kr/problem.php?id=6019

"연도.월.일"을 입력받아 "일-월-연도" 순서로 바꿔 출력해보자.

y,m,d=input().split('.')
print(d,m,y,sep='-')

3. 6022 : [기초-입출력] 연월일 입력받아 나누어 출력하기

https://codeup.kr/problem.php?id=6022

6자리의 연월일(YYMMDD)을 입력받아 나누어 출력해보자.

[0:2]는 0부터 1번째까지 출력

day=input()
print(day[0:2],day[2:4],day[4:6])

3. 6026 : [기초-값변환] 실수 2개 입력받아 합 계산하기

https://codeup.kr/problem.php?id=6026

수 2개를 입력받아 합을 출력하는 프로그램을 작성해보자.

a=float(input())
b=float(input())
print(a+b)

4. 6028 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기2

https://codeup.kr/problem.php?id=6028

10진수를 입력받아 16진수(hexadecimal)로 출력해보자.

n=int(input())
print('%X' %n)

5. 6033 : [기초-산술연산] 문자 1개 입력받아 다음 문자 출력하기

https://codeup.kr/problem.php?id=6033

문자 1개를 입력받아 그 다음 문자를 출력해보자.

  • ord: 문자를 이용해서 해당 문자에 해당하는 유니코드 정수 반환
  • chr: 숫자를 이용해서 숫자에 해당하는 문자를 반환
s=ord(input())
print(chr(s+1))

6. 6042 : [기초-값변환] 실수 1개 입력받아 소숫점이하 자리 변환하기

https://codeup.kr/problem.php?id=6042

실수 1개를 입력받아 소숫점 이하 두 번째 자리까지의 정확도로 반올림한 값을 출력해보자.

n=float(input())
print(format(n,".2f"))

7.

6046 : [기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기

6047 : [기초-비트시프트연산] 2의 거듭제곱 배로 곱해 출력하기

1. https://codeup.kr/problem.php?id=6046
2. https://codeup.kr/problem.php?id=6047

print(n<<1) #2배
print(n>>1) #1/2배
print(n<<2) #4배
print(n>>2) #1/4배

(a<<b): a를 2^b배 곱한 값
map: map(변환 함수, 순회 가능한 데이터)

n=int(input())
print(n<<1)

#2-1
a,b=input().split()
a=int(a)
b=int(b)
print(a<<b)

#2-2
a, b = map(int, input().split())
c = 2**b
print(a*c)

8. 6051 : [기초-비교연산] 정수 2개 입력받아 비교하기4

https://codeup.kr/problem.php?id=6051

두 정수(a, b)를 입력받아 a의 값이 b의 값과 서로 다르면 True 를, 같으면 False 를 출력하는 프로그램을 작성해보자.

#내 풀이
a,b=input().split()
a=int(a)
b=int(b)
if (a != b):
    print("True")
else:
    print("False")
    
#모범답안
a, b = input().split()
a = int(a)
b = int(b)
print(a!=b)

9. 6056 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기

https://codeup.kr/problem.php?id=6056

2개의 정수값이 입력될 때, 그 불 값(True/False) 이 서로 다를 때에만 True 를 출력하는 프로그램을 작성해보자.

a,b=input().split()
a=bool(int(a))
b=bool(int(b))
print((a and (not b)) or ((not a) and b))

10. 6062 : [기초-비트단위논리연산] 비트단위로 XOR 하여 출력하기

https://codeup.kr/problem.php?id=6062

NOT: ~
AND: &
OR: |
XOR: ^

a,b=input().split()
a=int(a)
b=int(b)
print(a^b)

11. 6064 : [기초-3항연산] 정수 3개 입력받아 가장 작은 값 출력하기

https://codeup.kr/problem.php?id=6064

3개의 요소로 이루어지는 3항 연산은 'x if C else y' 의 형태로 작성이 된다.
C: True 또는 False 를 평가할 조건식(conditional expression) 또는 값
x: C의 평가 결과가 True 일 때 사용할 값
y: C의 평가 결과가 True 가 아닐 때 사용할 값

조건식 또는 값이 True 이면 x 값이 사용되고, True가 아니면 y 값이 사용되도록 하는 코드이다.

a,b,c=input().split()
a=int(a)
b=int(b)
c=int(c)

print(((a if(a<b) else b) if ((a if(a<b) else b)<c) else c))

12. 6070 : [기초-조건/선택실행구조] 월 입력받아 계절 출력하기

https://codeup.kr/problem.php?id=6070

월이 입력될 때 계절 이름이 출력되도록 해보자.

season=int(input())
if (season//3==1):
    print("spring")
elif (season//3==2):
    print("summer")
elif (season//3==3):
    print("fall")
else:
    print("winter")

13.

6075 : [기초-반복실행구조] 정수 1개 입력받아 그 수까지 출력하기1

6076 : [기초-반복실행구조] 정수 1개 입력받아 그 수까지 출력하기2

https://codeup.kr/problem.php?id=6075
https://codeup.kr/problem.php?id=6076
#while 사용
n=int(input())
i=0
while i<=n:
    print(i)
    i+=1
#for 사용
n=int(input())
for i in range(n+1):
    print(i)

14. 6086 : [기초-종합] 거기까지! 이제 그만~

https://codeup.kr/problem.php?id=6086

1, 2, 3 ... 을 순서대로 계속 더해 합을 만드는데, 그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자.

n=int(input())
s=0
i=0
while(s<n):
    s+=i
    i+=1
print(s)

15. 6090 : [기초-종합] 수 나열하기3

https://codeup.kr/problem.php?id=6090

시작 값(a), 곱할 값(m), 더할 값(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때, n번째 수를 출력하는 프로그램을 만들어보자.

a,m,d,n=input().split()
a=int(a)
m=int(m)
d=int(d)
n=int(n)

for i in range(n-1):
    a=a*m+d
print(a)

16. 6092 : [기초-리스트] 이상한 출석 번호 부르기1

https://codeup.kr/problem.php?id=6092

n = int(input()) #개수를 입력받아 n에 정수로 저장
a = input().split() #공백을 기준으로 잘라 a에 순서대로 저장

for i in range(n) : #0부터 n-1까지...
a[i] = int(a[i]) #a에 순서대로 저장되어있는 각 값을 정수로 변환해 다시 저장

d = [] #d라는 이름의 빈 리스트 [ ] 변수를 만듦. 대괄호 기호 [ ] 를 사용한다.
for i in range(24) : #[0, 0, 0, ... , 0, 0, 0] 과 같이 24개의 정수 값 0을 추가해 넣음
d.append(0) #각 값은 d[0], d[1], d[2], ... , d[22], d[23] 으로 값을 읽고 저장할 수 있음.

for i in range(n) : #번호를 부를 때마다, 그 번호에 대한 카운트 1씩 증가
d[a[i]] += 1

for i in range(1, 24) : #카운트한 값을 공백을 두고 출력
print(d[i], end=' ')

range(시작, 끝, 증감) #시작 수는 포함, 끝 수는 포함하지 않음. [시작, 끝)
range(n-1, -1, -1) #n-1, n-2, ..., 3, 2, 1, 0
n = int(input())
a = input().split()

for i in range(n) :
  a[i] = int(a[i])

d = []
for i in range(24) :
  d.append(0)

for i in range(n) :
  d[a[i]] += 1

for i in range(1, 24) :
  print(d[i], end=' '