목록분류 전체보기 (128)
K_blueprint
- 오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++ 책을 열심히 읽었던 혜아는 간단히 두 수를 더하는 코드를 칠판에 적었다. 코드를 본 면접관은 다음 질문을 했다. “만약, 입출력이 N바이트 크기의 정수라면 프로그램을 어떻게 구현해야 할까요?”혜아는 책에 있는 정수 자료형과 관련된 내용을 기억해 냈다. 책에는 long int는 4바이트 정수까지 저장할 수 있는 정수 자료형이고 long long int는 8바이트 정수까지 저장할 수 있는 정수 자료형이라고 적혀 있었다. 혜아는 이런 생각이 들었다. “int 앞에 long을 하나씩 더 붙일 때마다 4바이트씩 저장할 ..
● ValueError("값이 잘못되었을 때" 발생하는 오류) - 적절하지 않은 인자값을 받았을 때 발생 (ex. 문자를 정수형으로 받으려고 하는 경우) - 참조값이 없을 때 발생 (ex, a/b/c만 있는 리스트에서 d를 찾는 경우) ● IndexError("인덱스 범위를 벗어날 때" 발생하는 오류) - 정해진 범위를 벗어난 공간에 접근할 때 발생 (ex. 크기가 3인 리스트에서 4번째에 저장된 값을 찾으려고 하는 경우) ● SyntaxError("문법 오류가 있을 때"에 발생하는 오류) - 말 그대로 문법을 틀리게 적었을 때 발생 (ex. 세미콜론 부재, 철자 틀림) ● FileNotFoundError("접근하려는 파일이 없을 때" 발생하는 오류) - 접근하려는 파일이 존재하..
- 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오 - 첫째 줄에 테스트 케이스의 개수 T가 주어진다.- 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다.(0 - 각 테스트 케이스마다 A+B를 출력한다. (풀이 코드)T = int(input()) # 몇 번 입력을 받을지 정수형T로 입력받기for i in range(0, T): # T만큼 반복 num1, num2 = map(int, input().split()) # 2개의 정수 입력받기(더해야 할 숫자) print(num1 + num2) # 결과값 출력 본 문제는 매우 간단해 보이지만 문제 이해를 잘못하여 "한꺼번에 입력을 다 받은 후에, 더해진 ..
- 코딩 스터디 모임을 만들었다. 월 4번 모이는데, 3번은 온라인, 1번은 오프라인으로 모이기로 했다고 했을 때 조건에 맞는 오프라인 날짜를 정하는 프로그램을 작성하세요. 날짜를 무작위로 뽑는다.월별로 일수가 다르기 때문에 최소 일수인 28일 이내로 정한다(즉, 28일까지만 날짜 선정)매월 1~3일은 스터디 준비를 해야 하므로 제외한다.실행결과는 다음과 같은 형태로 나와야 한다.(단, 날짜는 무작위이므로 결과가 다를 수 있다.)# 실행 결과오프라인 스터디 모임 날짜는 매월 18일로 선정됐습니다. from random import *day = randrange(4, 29) #4월~28일까지(29일 미포함)print("오프라인 스터디 모임 날짜는 매월 {0}일로 선정됐습니다.".format(day))
※ 숫자 처리 함수숫자 연산을 할 수 있는 함수들이다. 함수의미abs(x)x의 절대값pow(x, y)x를 y만큼 거듭제곱한 값max( )가장 큰 값min( )가장 작은 값round(x, d)x를 반올림한 값, d는 표시할 소수점 이하 자리수(d가 없으면 소수점 이하 첫째 자리에서 반올림한 정수) (예시)print(abs(-5)) # 5print(pow(4, 2)) # 16print(max(1, 2, 3)) # 3print(min(1, 2, 3)) # 1print(round(4.678, 2)) # 4.68 ※ math 모듈(모듈이란? > 어떤 기능을 하는 코드를 모아놓은 파이썬 파일)형태는 "from 모듈명 import 기능"이다.기능 부분에 *(와일드카드) 기호를 넣으면 모듈 안의 ..
※ 산술 연산자사칙연산 기호연산자의미+연산자 왼쪽과 오른쪽 더하기-연산자 왼쪽에서 오른쪽 빼기*연산자 왼쪽과 오른쪽 곱하기/연산자 왼쪽을 오른쪽으로 나눈 몫(실수로 구하기) print(1 + 1) # 2print(3 - 2) # 1print(5 * 2) # 10print(6 / 3) # 2.0 여기서 나누기 결과는 정수가 아닌 실수로 나오게 되는데 정수로 나오길 원한다면 '//'를 사용하면 된다.연산자의미**연산자 왼쪽을 오른쪽만큼 거듭제곱%연산자 왼쪽을 오른쪽으로 나누기(나머지 구하기)//연산자 왼쪽을 오른쪽으로 나눈 몫(정수로 구하기) ※ 비교 연산자값의 크기를 비교할 때 사용하는 연산자연산자의미>연산자 왼쪽이 오른쪽보다 큼>=연산자 왼쪽이 오른쪽보다 크거나 같음연산자 왼쪽이 오른쪽보다 작음연산자 ..