양식은 제한 없으니 내용 자유롭게 채워주세요!

이론 1번 문제 (10점)

1. NumPy 배열은 항상 고정된 타입의 요소들을 가집니다. (O/X) (1점)
2. np.arange(10) 함수는 0부터 9까지의 정수를 포함하는 배열을 생성합니다. (O/X) (1점)
3. NumPy에서 shape 속성은 배열의 크기와 차원을 변경할 수 있습니다. (O/X) (1점)
4. np.zeros((2, 3))는 2x3 크기의 배열을 생성하고 모든 요소를 1로 초기화합니다. (O/X) (1점)
5. np.matmul과 np.dot은 모든 상황에서 동일한 결과를 반환합니다. (O/X) (1점)
6. NumPy 배열에 대한 산술 연산은 요소별로 수행됩니다. (O/X) (1점)
7. NumPy의 브로드캐스팅 기능은 서로 다른 크기의 배열 간에도 산술 연산을 가능하게 합니다. (O/X) (2점)
8. NumPy 배열의 인덱싱에는 정수, 슬라이스, 그리고 불리언 배열을 사용할 수 있습니다. (O/X) (2점)
 
 
 답 : O,O,X,X,X,O,O,O
 
이론 2번 문제 (10점)

1. l = np.arange(25) 에서 print(l[l % 5 == 0]) 로 5의 배수만 출력할 수 있다. (O/X) (1점)

답 : O

2. l = np.arange(16).reshape(4, 4) 에서 print(l[[1, 2], [3, 0]]) 의 출력 결과로 알맞은 것은? (2점)
	A. [[1 2]
			[7 4]]
	B. [7 8]
	C. [[0 1 2 3]
			[4 5 6 7]]
			
답 : B

3. np.reshape() 와 np.resize() 의 차이를 설명하세요 (2점)

답 : np.reshape()는 원래 배열의 크기를 변경, 요소 수는 유지
np.resize()는 원래 배열의 크기를 변경하고  필요에 따라 요소를 반복하여 새로운 배열을 채운다. 배열의 크기를 늘리거나 줄일 수 있습니다

4. 다음 중 Numpy 배열을 생성하는 올바른 방법을 고르세요. (1점)
	A. np.array(1,2,3,4)
	B. np.array([1,2,3,4])
	C. np.array[1,2,3,4]
	D. np.array([1,2,3,4]).tolist()
	
	답 : B
5. l = np.arange(16) 에서 오류가 발생하는 코드를 모두 고르세요 (4점)
	A. l.resize(4, 4)
	B. l.resize((4, 4))
	C. l.resize(2, -1)
	D. l.resize(3, 6)
	E. l = l.reshape(3, 6)
	
	답 : C,D,E