CodeUp 기초2(입출력문 및 연산자), 기초3(if ~ else)
1110 ~ 1119
1110 : 정수 그대로 출력하기
입력받은 정수를 그대로 출력한다.
n = int(input())
print(n)
5 5
1111 : %출력
어떤 정수가 입력되면 %를 붙여 출력하시오.
n = int(input())
print('{}%'.format(n))
35 35%
1112 : 두 정수 출력
입력 받은 두 정수를 출력한다.
a, b = map(int, input().split())
print(a, b)
5 7 5 7
1113 : 바꿔서 출력하기
두 정수를 입력받아 순서를 바꿔서 출력하시오.
a, b = map(int, input().split())
print(b, a)
1 2 2 1
1114 : 두 정수의 덧셈
두 정수를 입력받아 합을 출력한다.
a, b = map(int, input().split())
print(a + b)
5 7 12
1115 : 두 정수의 덧셈 (64비트)
두 정수의 덧셈의 결과를 출력한다.
두 수는 int 범위를 넘어선 64비트 정수형 값이다.
a, b = map(int, input().split())
print(a + b)
11111111111 22222222222 33333333333
1116 : 사칙연산 계산기
두 정수를 입력받아 아래와 같이 출력하시오.
a, b = map(int, input().split())
print('{}+{}={}'.format(a, b, a + b))
print('{}-{}={}'.format(a, b, a - b))
print('{}*{}={}'.format(a, b, a * b))
print('{}/{}={}'.format(a, b, a // b))
3 2 3+2=5 3-2=1 3*2=6 3/2=1
1117 : 두 실수의 곱
두 실수를 입력받아 두 실수의 곱을 출력하되 소수 둘째자리까지 출력하시오.
a, b = map(float, input().split())
print('%.2f' %(a * b))
1.23 4.56 5.61
1118 : 삼각형의 넓이 구하기
삼각형의 넓이를 구하는 프로그램을 작성한다.
삼각형의 넓이 = 밑변 * 높이 / 2
a, b = map(int, input().split())
print('%.1f' % (a * b / 2))
5 2 5.0
1119 : 일을 시간으로 변환
하루는 24시간이다.
일(day)이 입력으로 주어지면 시간으로 변환하시오.
day = int(input())
print(24 * day)
2 48
1120 ~ 1125
1120 : 세 수의 평균
세 정수가 입력되면 평균을 출력하시오.
a, b, c = map(int, input().split())
print('%.2f' % ((a + b + c) / 3))
1 2 3 2.00
1121 : 나머지 구하기
정수 계산에서 나머지를 구하시오.
a, b = map(int, input().split())
print(a % b)
7 5 2
1122 : 초를 분/초로 변환
초를 입력받아 분 / 초의 형태로 출력하시오.
second = int(input())
print(second // 60, second % 60)
70 1 10
1123 : 섭씨 온도를 화씨 온도로 변환
섭씨 온도가 입력되면 화씨 온도로 변환하시오.
화씨 온도 = 9 / 5 * 섭씨온도 + 32
C = int(input())
print('%.3f' % (9 / 5 * C + 32))
30 86.000
1125 : 8진수 16진수 변환
10진수 정수를 입력받아 8진수와 16진수로 출력한다.
n = int(input())
print('%o %X' % (n, n))
10 12 A
1131 ~ 1140
1131 : 문자 출력하기
입력된 문자를 그대로 출력한다.
w = input()
print(w)
a a
1132 : 문자열 출력하기
한 단어를 입력받아 출력한다.
w = input()
print(w)
cat cat
1133 : 공백이 있는 문자열 입출력
공백이 있는 문자열을 입력받아 출력해보자.
sen = input()
print(sen)
black sheep wall black sheep wall
1135 : 관계연산자 1
두 정수(a, b)를 입력받아 a가 b보다 크거나 같으면(이상) 1, a가 b보다 작으면(미만) 0을 출력하는 프로그램을 작성해보자.
a, b = map(int, input().split())
print(1 if a >= b else 0)
2 3 0
1136 : 관계연산자 2
두 정수(a, b)를 입력받아 a와 b가 같으면 1, 같지 않으면 0을 출력하는 프로그램을 작성하시오.
a, b = map(int, input().split())
print(1 if a == b else 0)
2 3 0
1137 : 관계연산자 3
두 정수(a, b)를 입력받아 a와 b가 같으면 0, 같지 않으면 1을 출력하는 프로그램을 작성하시오.
a, b = map(int, input().split())
print(0 if a == b else 1)
2 3 1
1138 : 논리 연산자(NOT)
1(true, 참) 또는 0(false, 거짓) 이 입력되었을 때 결과를 반대로 출력하는 프로그램을 작성해보자.
b = int(input())
print(int (not b))
0 1
1139 : 논리 연산자(AND)
두 가지의 참(1) 또는 거짓(0)이 입력될 때, 모두 참일 때는 1이, 그렇지 않으면 0이 출력되는 프로그램을 작성해보자.
a, b = map(int, input().split())
print(int(a and b))
1 0 0
1140, 1143, 1144, 1147 ~ 1150
1140 : 논리 연산자(OR)
두 가지의 참(1) 또는 거짓(0)이 입력될 때, 둘 중 하나라도 참일 경우 1이, 그렇지 않으면 0이 출력되는 프로그램을 작성해보자.
a, b = map(int, input().split())
print(int(a or b))
0 1 1
1143 : 비트 연산자(AND)
두 수를 입력받아 비트단위로 AND연산한 후 결과를 출력하시오.
a, b = map(int, input().split())
print(a & b)
3 5 1
1144 : 비트 연산자(OR)
두 수를 입력받아 비트단위로 OR연산한 후 결과를 출력하시오.
a, b = map(int, input().split())
print(a | b)
3 5 7
1147 : 비트 연산자(«)
정수 a, x를 입력받아 a의 값을 x만큼 SHIFT(«) 연산한 후 결과를 출력하시오.
a, x = map(int, input().split())
print(a << x)
3 3 24
1148 : 비트 연산자(»)
정수 a, x를 입력받아 a의 값을 x만큼 SHIFT(») 연산한 후 결과를 출력하시오.
a, x = map(int, input().split())
print(a >> x)
4 1 2
1149 : 두 수 중 큰 수
두 정수 중 큰 정수를 출력한다.
a, b = map(int, input().split())
print(a if a > b else b)
2 7 7
1150 : 세 수 중 가장 작은 수
세 정수가 주어지면 그 중 가장 작은 수를 출력한다.
a, b, c = map(int, input().split())
print((a if a < c else (c if c < b else b)) if a < b else (b if b < c else c))
3 5 2 2
1151 ~ 1160
1151 : 10보다 작은 수
10보다 작은 수가 입력되면 small 을 출력, 10이상이면 아무것도 출력하지 마시오.
n = int(input())
if n < 10:
print('small')
5 small
1152 : 10보다 작은 수 (else 버전)
10보다 작은 정수가 입력되면 small 을 출력, 그 이상의 수가 입력되면 big 을 출력하시오.
n = int(input())
print('small' if n < 10 else 'big')
15 big
1153 : 두 수의 대소 비교
두 정수가 입력된다. 두 정수의 크기를 비교하여 왼쪽 수가 크면 > 를 출력, 오른쪽 수가 크면 < 를 출력, 같으면 = 을 출력하시오.
a, b = map(int, input().split())
print('>' if a > b else ('<' if a < b else '='))
2 6 <
1154 : 큰수 - 작은수
정수 두개가 입력으로 들어오면 큰수 - 작은수의 값을 출력하시오.
a, b = map(int, input().split())
print(a - b if a > b else b - a)
5 7 2
1155 : 7의 배수
인학이는 숫자 7을 좋아한다.
어떤 정수가 입력되면 그 수가 7의 배수인지 확인하시오.
n = int(input())
print('multiple' if n % 7 == 0 else 'not multiple')
9 not multiple
1156 : 홀수 짝수 구별
어떤 자연수가 입력되면 홀수이면 “odd”을 출력하고, 짝수이면 “even”을 출력하시오.
n = int(input())
print('odd' if n % 2 == 1 else 'even')
5 odd
1157 : 특별한 공 던지기 1
슬기가 던진 공의 위치가 입력으로 주어지면 50이상 60이하이면 “win”을 출력하고, 그 외에는 “lose”를 출력하시오.
loc = float(input())
print('win' if 50 <= loc <= 60 else 'lose')
50.213 win
1158 : 특별한 공 던지기 2
-
공이 30m~40m나 60m~70m 에 들어오면 슬기가 이김.
-
그 외의 구간에 떨어지면 체육선생님이 이김.
슬기가 던진 공의 위치가 입력으로 주어지면 슬기가 이기는 구간에는 “win”을 출력하고, 그 외에는 “lose”를 출력하시오.
n = int(input())
print('win' if (30 <= n <= 40) or (60 <= n <= 70) else 'lose')
50 lose
1159 : 특별한 공 던지기 3
- 공의 위치가 50m~70m이면 슬기가 이김.
또는
- 공의 위치가 6의 배수이면 슬기가 이김.
슬기가 던진 공의 위치가 입력으로 주어지면 슬기가 이기는 구간에는 “win”을 출력하고, 그 외에는 “lose”를 출력하시오.
loc = int(input())
print('win' if (50 <= loc <= 70) or (loc % 6 == 0) else 'lose')
30 win
1160 : 아르바이트 가는 날
주원이는 월, 수, 금, 일 아르바이트를 간다.
다음은 요일의 순서이다.
-
월요일
-
화요일
-
수요일
-
목요일
-
금요일
-
토요일
-
일요일
요일의 번호가 입력으로 주어지면 그 날이 아르바이트 가는 날이면 “oh my god”를 가는 날이 아니면 “enjoy”를 출력하시오.
day = int(input())
print("oh my god" if day % 2 == 1 else "enjoy")
1 oh my god
1161 ~ 1173, 1180
1161 : 홀수와 짝수 그리고 더하기
정수 두개가 입력으로 들어온다.
만약 첫번째 정수가 홀수이면 “홀수”를 출력하고, 짝수이면 “짝수”를 출력한 후 “+”를 출력한다.
그리고 두번째 정수가 홀수이면 “홀수”를 출력하고, 짝수이면 “짝수”를 출력한 후 “=”을 출력하고 결과로 나오는 값이 홀수인지 짝수인지 출력한다.
a, b = map(int, input().split())
func = lambda x: "짝수" if x % 2 == 0 else "홀수"
print('{}+{}={}'.format(func(a), func(b), func(a+b)))
2 3 짝수+홀수=홀수
1162 : 당신의 사주를 봐 드립니다 1
태어난 해, 월, 일을 입력받아 사주팔자를 보는 프로그램을 작성하시오.
사주를 보는 방법)
세 수(년,월,일)가 주어지면, (년 - 월 + 일)에 마지막 숫자가 0이면 “대박”을 출력, 그렇지 않으면 “그럭저럭”을 출력하세요.
year, month, day = map(int, input().split())
print("대박" if (year - month + day) % 10 == 0 else "그럭저럭")
1902 2 10 대박
1163 : 당신의 사주를 봐 드립니다 2
태어난 해, 월, 일을 입력받아 사주팔자를 보는 프로그램을 작성하시오.
사주를 보는 방법)
세 수(년,월,일)가 주어지면, (년 + 월 + 일)에 100의 자리 숫자가 짝수이면 “대박”을 출력, 그렇지 않으면 “그럭저럭”을 출력하세요.
year, month ,day = map(int, input().split())
print("대박" if ((year + month + day) % 1000 // 100) % 2 == 0 else "그럭저럭" )
1502 2 10 그럭저럭
1164 : 터널 통과하기 1
어떤 차의 높이가 170cm 이다.
이 차는 3개의 터널을 차례대로 지나게 될 것이다.
터널의 높이가 차의 높이보다 같거나 낮다면 차는 터널과 충돌하여 사고가 날 것이다.
터널의 높이가 차례대로 3개 주어지면 터널을 무사히 잘 통과하면 PASS 를 출력하고, 사고가 난다면 CRASH 를 출력하시오.
t1, t2, t3 = map(int, input().split())
print("CRASH" if t1 <= 170 or t2 <= 170 or t3 <= 170 else "PASS")
170 168 175 CRASH
1165 : 축구의 신 1
지금 1반과 2반이 축구를 하고있다.
축구경기 타임은 총 90분이고,
현재 1반이 0점, 2반이 2점인 상황에서, 1반은 경남정보고 최고의 스트라이커인 성익이를 투입하기로 결정했다.
성익이는 5분마다 골을 넣을 수 있는 능력을 가지고 있다.
만약 80분에 투입이 되면 80분에 곧바로 골을 넣게되고 85분에 골을 넣음으로서 동점이 가능하게 된다.
(90분이되면 경기가 바로 종료되므로 골을 넣을 수 없다. 동내심판인 성빈이는 성익이가 잘 되는 것을 싫어하기 때문에 추가시간 따위는 주지 않는다. )
현재 경기타임과 우리팀의 득점이 입력으로 주어 질때, 성익이를 투입하면 우리팀의 최종 득점은 몇 점인지 출력하시오.
time, score = map(int, input().split())
print(score + (89 - time) // 5 + 1 )
74 2 6
1166 : 윤년 판별
한 자연수를 입력받아서 윤년인지 아닌지를 판단하는 프로그램을 작성하시오.
단, 윤년은 다음과 같은 성질을 지닌다고 한다.
(1) 400의 배수이면 무조건 윤년이다.
(2) (1)이 아닌 수 중에 4의 배수이며, 100의 배수가 아니면 윤년이다.
n = int(input())
print("Leap" if (n % 400 == 0) or (n % 4 == 0 and n % 100 != 0) else "Normal")
2012 Leap
1167 : 두 번째 수
세 개의 숫자가 주어질 때 작은 순서로 나열 했을 때, 두번째 수를 출력해보자.
a, b, c = map(int, input().split())
print(((b if b > c else c) if a > b else a) if a > c else ((a if a > b else b) if b < c else (c if a < b else a)))
3 2 1 2
미친 놈인가 싶다
1168 : 나이 계산 1
주민등록번호는 생년월일과 성별정보, 지역정보로 이루어진다.
여기서 생년월일과 성별정보만 입력으로 받겠다.
성별 정보는 1이면 1900년대 출생 남자, 2이면 1900년대 출생 여자, 3이면 2000년대 출생 남자, 4이면 2000년대 출생 여자를 말한다.
기준년도는 2012년도이다. 현재 나이를 출력하시오.
dob, s = map(int, input().split())
print((2012 - (dob // 10000 + 1900) + 1)if s == 1 or s == 2 else (2012 - (dob // 10000 + 2000) + 1))
790101 1 34
1169 : 나이 계산 2
나이가 주어지면 몇 년도에 태어났는지를 출력하시오.<p style="color: red">(나이는 2012년도 기준입니다.)</p>
단, 출력할 때 년도 4자리 중 뒤의 두자리만 출력하고, 한 칸 띄운 후 1900년도 출생이면 1을 출력, 2000년대 출생이면 3을 출력하시오.
year = 2012 - int(input()) + 1
print(year - 1900, 1) if year < 2000 else print(year - 2000, 3)
18 95 1
1170 : 당신의 학번은? 1
학번을 입력 받아 다음 형식으로 출력하시오.
학번은 학년, 반, 번호로 입력된다.
g, c, n = map(int, input().split())
print(g*1000 + c * 100 + n)
2 3 27 2327
1171 : 당신의 학번은? 2
학번을 입력 받아 다음 형식으로 출력하시오.
학번은 학년, 반, 번호로 입력된다.
이번에는 학년은 한자리, 반은 두자리, 번호는 세자리로 출력한다.
g, c, n = map(int, input().split())
print(g * 100000 + c * 1000 + n)
2 7 15 207015
1172 : 세 수 정렬하기
세 수를 오름차순으로 정렬하려고 한다. (낮은 숫자 -> 높은 숫자)
a, b, c = map(int, input().split())
first = (a if a < c else (c if c < b else a))if a < b else (b if b < c else c)
third = (a if a > c else (c if c > b else a)) if a > b else (b if b > c else c)
second = (a + b + c) - (first + third)
print(first, second, third)
8 7 6 6 7 8
1173 : 30분전
수호는 30분 전으로 돌아가고 싶은 1人 이다.
공백을 기준으로 시간과 분이 주어진다.
그러면 이 시간을 기준으로 30분전의 시간을 출력하시오.
h, m = map(int, input().split())
if m < 30:
if h == 0:
h = 23
else:
h -= 1
m += 30
else:
m -= 30
print(h, m)
0 30 0 0
1180 : 만능 휴지통
민호는 발명을 되게 좋아하고, 컴퓨터 프로그램도 되게 좋아한다.
어느 날 민호는 컴퓨터를 사용하던 중 휴지통이 꽉 차서 불편을 느꼈다.
그래서 휴지통이 n만큼 차면 알아서 쓰레기를 압축해주는 휴지통을 만들려고 한다.
이 때 압축하는 알고리즘은 다음과 같다.
10의 자릿수와 1의 자릿수를 서로 바꾸고, 거기에 2를 곱한다.
예) 70일 경우 14가 된다.( 70 -> 07 -> 14 )
이 알고리즘은 때로는 부작용을 일으켜 휴지통의 내용이 더 많아 질지도 모른다.
만약 이 알고리즘의 심각한 부작용으로 수치가 100이 넘는다면 100의 자릿수는 무시된다.
n = int(input())
n = (((n % 10) * 10 + n // 10) * 2) % 100
print("{}\nGOOD".format(n)) if n <= 50 else print("{}\nOH MY GOD".format(n))
90 18 GOOD
1201 ~ 1207, 1210, 1212, 1214
1201 : 정수 판별
정수 하나를 입력받아 양수이면 “양수”, 음수이면 “음수”, 0이면 0을 출력하시오.
n = int(input())
print("양수" if n > 0 else ("음수" if n < 0 else 0))
5 양수
1202 : 등급 판정
재호는 이번 시험에 받은 성적이 궁금했다.
점수가 입력되면 등급을 출력하시오.
등급)
90점 이상 : A
80점 이상 : B
70점 이상 : C
60점 이상 : D
60점 미만 : F
score = int(input())
if score >= 90:
print('A')
elif score >= 80:
print('B')
elif score >= 70:
print('C')
elif score >= 60:
print('D')
else:
print('F')
80 B
1203 : 비만도 측정 0
비만을 판단하기 위해서 BMI 수치가 필요하다.
BMI 수치가 입력되면 비만을 판단하시오.
* BMI에 따른 비만 판정
BMI 수치 | 비만 판정 |
---|---|
~10 이하 | 정상 |
~20 이하 | 과체중 |
20 초과 | 비만 |
BMI = int(input())
if BMI > 20:
print('비만')
elif 10 < BMI <= 20:
print('과체중')
else:
print('정상')
15 과체중
1204 : 영어 서수로 표현하기
1~99 중 하나가 숫자가 입력되면 영어 서수 표현을 출력하시오.
n = int(input())
n_one = n % 10
if n != 11 and n_one == 1:
print("{}st".format(n))
elif n != 12 and n_one == 2:
print("{}nd".format(n))
elif n != 13 and n_one == 3:
print("{}rd".format(n))
else:
print("{}th".format(n))
24 24th
1205 : 최댓값
두 실수 a, b가 입력되면 그 두수를 더하거나 빼거나 곱하거나 나누거나 제곱을 해서 가장 큰 수를 출력하시오.
a, b = map(float, input().split())
if a == 0 and b == 0:
print(0)
elif a > 0 and b > 0:
plus = a + b
mul = a * b
div = a/b if a/b > b/a else b/a
po = a**b if a**b > b**a else b**a
big = plus if plus > mul else mul
big = big if big > div else div
big = big if big > po else po
print("%.6f" % big)
elif a < 0 and b < 0:
minus = a-b if (a-b) > (b-a) else b-a
mul = a * b
div = a/b if a/b > b/a else b/a
po = a**b if a**b > b**a else b**a
big = minus if minus > mul else mul
big = big if big > div else div
big = big if big > po else po
print("%.6f" % big)
else:
plus = a + b
minus = a-b if a-b > b-a else b-a
mul = a * b
div = a/b if a/b > b/a else b/a
po = a**b if a**b > b**a else b**a
big = plus if plus > minus else minus
big = big if big > mul else mul
big = big if big > div else div
big = big if big > po else po
print("%.6f" % big)
-2 1 3.0
이 문제를 좀 어렵게 생각해서 입력받는 두 정수의 부호로 나누어 각 상황에 따른 가장 큰 값을 구했다. 생각해보니 다음과 같이 풀어도 아무 문제 없을 것 같아 했더니 맞았다.
a, b = map(int, input().split())
big = a + b if a + b > a * b else a * b
big = big if big > a - b else a - b
big = big if big > b - a else b - a
big = big if big > a / b else a / b
big = big if big > b / a else b / a
big = big if big > a**b else a**b
big = big if big > b**a else b**a
print("%.6f" % big)
1 2 3.000000
1206 : 배수
두 자연수 a, b가 주어진다.
b가 a의 배수이면 “a*x=b”를 출력하고,
a가 b의 배수이면 “b*x=a”를 출력하고,
배수관계가 아니면 “none”을 출력하시오.
a, b = map(int, input().split())
if b % a == 0:
print("{}*{}={}".format(a, b//a, b))
elif a % b == 0:
print("{}*{}={}".format(b, a//b, a))
else:
print("none")
4 12 4*3=12
1207 : 윷놀이
4개의 윷 상태가 입력되면 도, 개, 걸, 윷, 모를 출력하는 프로그램을 작성하시오.
states = list(map(int, input().split()))
sum_state = sum(states)
if sum_state == 1:
print('도')
elif sum_state == 2:
print('개')
elif sum_state == 3:
print('걸')
elif sum_state == 4:
print('윷')
else:
print('모')
0 0 1 0 도
1210 : 칼로리 계산하기
보림이는 엄마와 함께 놋데리아에 갔다.
보림이는 먹고 싶은게 많았으나 엄마가 살찐다고 2가지만 골라서 먹으라고 했다.
그리고 2메뉴의 칼로리 합이 500보다 크면 엄마가 화를 내고, 500이하면 화를 내지 않으신다.
보림이가 선택할 수 있는 메뉴는 다음과 같다.
-
치즈버거 : 400 칼로리
-
야채버거 : 340 칼로리
-
우유 : 170 칼로리
-
계란말이 : 100 칼로리
-
샐러드 : 70 칼로리
이 메뉴들 중 2가지 메뉴를 선택했을 때 칼로리 합을 계산하고, 그 칼로리 합이 500보다 크면 “angry”, 500이하면 “no angry”를 출력하시오.
menu = [400, 340, 170, 100, 70]
n1, n2 = map(int, input().split())
cal = menu[n1-1] + menu[n2-1]
print("angry" if cal > 500 else "no angry")
1 2 angry
1212 : 삼각형의 성립 조건
세 개의 직선이 있다.
숫자의 의미는 직선의 길이를 말한다.
이 직선으로 삼각형을 만들 수 있는지 판단하는 프로그램을 작성하시오.
삼각형의 성립 조건)
a, b, c 가 변의 길이이고 c가 제일 긴 길이라고 한다면
c < a + b 이면 삼각형이 성립됨.
line = list(map(int, input().split()))
print("yes" if max(line) < sum(line) - max(line) else "no")
2 3 4 yes
1214 : 이 달은 며칠까지 있을까?
연도와 월을 알고 있을 때 그 달의 마지막 날을 구하는 프로그램을 작성하시오.
y, m = map(int, input().split())
is_leap = True if (y % 400 == 0) or (y % 4 == 0 and y % 100 != 0) else False
is_31 = [1, 3, 5, 7, 8, 10, 12]
if m in is_31:
print(31)
else:
if m != 2:
print(30)
else:
if is_leap:
print(29)
else:
print(28)
2009 10 31
1216, 1218, 1222, 1224, 1226, 1228 ~ 1231
1216 : 컨설팅 회사
대영이는 SNS를 이용한 컨설팅 회사를 운영하고 있다.
이 회사에서 획기적인 기획안을 개발하여 사람들에게 홍보를 하려고 한다.
홍보를 할 경우 수입과 그렇지 않을 경우의 수입을 알고 있을 경우,
홍보를 하는 경우가 유리한가?
홍보를 하지 않은 경우가 유리한가?
그것도 아니면 홍보를 하든 안하든 별 관계가 없는가?
이것을 알아내는 프로그램을 만드시오.
a, b, c = map(int, input().split())
total = b - c
print("advertise" if total > a else ("do not advertise" if total < a else "does not matter"))
10 100 70 advertise
1218 : 삼각형 판단하기
삼각형의 3변의 길이 a, b, c가 입력으로 주어진다.
여기서 입력되는 변의 관계는 a ≤ b ≤ c 이다.
그 삼각형이 무슨 삼각형인지 출력하시오.
line = list(map(int, input().split()))
s, l = min(line), max(line)
m = sum(line) - (s + l)
if s + m > l:
if s**2 + m**2 == l**2:
print('직각삼각형')
elif s == m or m == l:
if (s == m) and (s == l) and (m == l):
print('정삼각형')
else:
print('이등변삼각형')
else:
print('삼각형')
else:
print('삼각형아님')
20 30 30 이등변삼각형
1222 : 축구의 신 2
지금 1반과 2반이 축구를 하고있다.
축구경기 타임은 총 90분이고,
현재 스코어가 5 대 7인 상황에서, 지고 있는 1반에서는 경남정보고 최고의 스트라이커인 성익이를 투입하기로 결정했다.
성익이는 5분마다 골을 넣을 수 있는 능력을 가지고 있다.
만약 80분에 투입이 되면 80분에 곧바로 골을 넣게되고 85분에 골을 넣음으로서 동점이 가능하게 된다.
(90분이되면 경기가 바로 종료되므로 골을 넣을 수 없다. 동내심판인 성빈이는 성익이가 잘 되는 것을 싫어하기 때문에 추가시간 따위는 주지 않는다. )
현재 경기타임과 스코어가 입력으로 주어 질때, 성익이를 투입하면 1반이 이길 수 있는지 결정하는 프로그램을 작성하시오.
time, score1, score2 = map(int, input().split())
score1 = score1 + (89 - time) // 5 + 1
print("win" if score1 > score2 else ("lose" if score1 < score2 else "same"))
80 5 7 same
1224 : 분수 크기 비교
분수의 크기를 비교하는 프로그램을 작성하시오.
분수는 a / b , c / d 모양으로 주어진다.
a, b, c, d = map(int, input().split())
print('>' if a/b > c/d else ('<' if a/b < c/d else '='))
1 2 3 4 <
1226 : 이번 주 로또
지혜는 로또 매니아다.
매주 로또 한장을 사고 토요일이면 대박을 기대하면서 당첨번호를 확인한다.
지혜는 로또 결과가 4등이었는데 확인을 잘못해서 5등인줄 알고 그냥 바꾸기 귀찮아서 버렸었다.
(사실은 다른 줄에 있는 것까지 합쳐서 3개 맞았는데 5등인줄 알았다고 한다.)
이러한 사태가 다시는 일어나지 않게 하기 위해 우리가 프로그램을 만들어 주자.
로또 순위 매기는 방법)
등수 | 방법 |
---|---|
1등 | 당첨번호 6개 일치 |
2등 | 당첨번호 5개 일치 + 보너스번호 일치 |
3등 | 5개 번호 일치 |
4등 | 4개 번호 일치 |
5등 | 3개 번호 일치 |
꽝 | 2개 이하 일치 |
win = list(map(int, input().split()))
bonus = win[-1]
win = win[:-1]
have = list(map(int, input().split()))
total = 0
for i in range(len(have)):
if have[i] in win:
total += 1
if total == 6:
print(1)
elif total == 5:
if bonus in have:
print(2)
else:
print(3)
elif total == 4:
print(4)
elif total == 3:
print(5)
else:
print('0')
13 23 24 35 40 45 7 2 6 7 23 40 44 0
1228 : 비만도 측정 1
희윤이는 ‘성문이 두마리 치킨’ 가게를 운영하고 있다.
치킨집을 운영하다 보니 매일 치킨을 먹게 되었다.
그러던 어느 날 몸무게를 재어보니 80kg이 나가는 것을 보고 깜짝 놀랐다.
희윤이 여자친구는 비만인 사람을 제일 싫어 하므로 희윤이는 절대 비만이면 안 된다.
희윤이가 비만인지 아닌지 판별하는 프로그램을 작성하시오.
* 비만도 계산 공식(브로카의 공식)
항목 | 공식 |
---|---|
표준몸무게= | (실제 키 - 100) * 0.9 |
비만도= | (실제 몸무게-표준 몸무게) * 100 / 표준 몸무게 |
* 비만도에 따른 등급 판정
등급 | 비만도 수치 |
---|---|
10이하 | 정상 |
10초과 20이하 | 과체중 |
20초과 | 비만 |
h, w = map(float, input().split())
base_w = (h - 100) * 0.9
ob = (w - base_w) * 100 / base_w
if ob <= 10:
print('정상')
elif 10 < ob <= 20:
print('과체중')
else:
print('비만')
177.0 74.5 정상
1229 : 비만도 측정 2
키와 몸무게를 이용하여 비만도를 측정할 수 있다.
아래와 같이 표준 몸무게와 비만도 계산법이 있을 때, 비만도를 측정하는 프로그램을 작성하시오.
* 표준몸무게
키에 따른 표준몸무게 | 공식 |
---|---|
키가 150 미만일 때 | (실제 키 - 100) |
키가 150 이상 160 미만일 때 | (실제 키 - 150) / 2 + 50 |
키가 160 이상일 때 | (실제 키 - 100) * 0.9 |
* 비만도 계산 공식
* 비만도에 따른 등급 판정
등급 | 비만도 수치 |
---|---|
10 이하 | 정상 |
10~20 이하 | 과체중 |
20 초과 | 비만 |
h, w = map(float, input().split())
if h < 150:
base_w = h - 100
elif 150 <= h < 160:
base_w = (h - 150) / 2 + 50
else:
base_w = (h - 100) * 0.9
ob = (w - base_w) * 100 / base_w
if ob <= 10:
print('정상')
elif 10 < ob <= 20:
print('과체중')
else:
print('비만')
150 60 과체중
1230 : 터널 통과하기 2
어떤 차의 높이가 170cm 이다.
이 차는 3개의 터널 a, b, c를 차례대로 지나게 될 것이다.
각 터널의 높이가 차의 높이(170)보다 같거나 낮으면 차는 터널과 충돌하여 사고가 날 것이다.
각 터널 a, b, c의 높이가 차례대로 3개 입력되면,
터널을 무사히 잘 통과하면 PASS 를 출력하고, 사고가 난다면 CRASH 와 처음 충돌하는 터널의 높이를 출력하시오.
tunnels = list(map(int, input().split()))
count = 0
for tunnel in tunnels:
if tunnel <= 170:
print('CRASH', tunnel)
break
else:
count += 1
if count == 3:
print('PASS')
171 168 165 CRASH 168
1231 : 계산기 1
영민이는 프로그램을 이용하여 계산기를 만들려고한다.
하지만 영민이는 프로그램을 얼마 배우지 않아 어려워하고있다.
우리가 영민이를 위해 계산기 프로그램을 만들어주자.
form = input()
if '+' in form:
a, b = map(int, form.split('+'))
print(a + b)
elif '-' in form:
a, b = map(int, form.split('-'))
print(a - b)
elif '*' in form:
a, b = map(int, form.split('*'))
print(a * b)
elif '/' in form:
a, b = map(float, form.split('/'))
print("%.2f" % (a / b))
19318/5405 3.57
댓글남기기