본문으로 건너뛰기

C:Vector

C:Math

1

2

3

C:Math

C:Vector — 벡터 연산 연습

C:Vector는 2D와 3D 벡터 연산을 게임처럼 연습할 수 있는 무료 학습 도구입니다. 벡터 덧셈, 뺄셈, 스칼라곱, 내적, 외적, 크기, 단위벡터, 각도, 정사영 등 9가지 연산 유형을 실시간 채점으로 학습합니다. 벡터는 물리학에서 힘과 속도를 표현하고, 컴퓨터 그래픽스에서 3D 렌더링의 기초가 되며, 기계학습에서 데이터를 표현하는 핵심 수학 도구입니다.

C:Vector is a free learning tool for practicing 2D and 3D vector operations in a game-like format. It covers 9 operation types including addition, subtraction, scalar multiplication, dot product, cross product, magnitude, unit vector, angle, and projection with real-time grading. Vectors are essential mathematical tools used to represent force and velocity in physics, form the basis of 3D rendering in computer graphics, and represent data in machine learning.

📐 연산 유형 상세 설명

🌍 2D vs 3D 벡터와 실생활 응용

2D 벡터는 평면 위의 방향과 크기를 나타내며, 게임 개발에서 캐릭터 이동, 물리 시뮬레이션에서 힘의 합성, 네비게이션에서 방향 계산 등에 활용됩니다. 3D 벡터는 공간에서의 위치와 방향을 표현하며, 3D 모델링, 로봇 공학, 항공우주 공학에서 필수적입니다.

2D vectors represent direction and magnitude on a plane and are used in game development for character movement, physics simulations for force composition, and navigation for direction calculation. 3D vectors express position and direction in space and are essential in 3D modeling, robotics, and aerospace engineering.

📝 예시 문제와 풀이

1. a = (3, 4), b = (1, 2) → a + b = (4, 6)

2. a = (3, 4) → |a| = √(9+16) = √25 = 5

3. a = (2, 3), b = (4, −1) → a·b = 8+(−3) = 5

4. a = (1, 0, 0), b = (0, 1, 0)
→ a×b = (0·0−0·1, 0·0−1·0, 1·1−0·0) = (0, 0, 1)

5. a = (1, 0), b = (0, 1) → θ = arccos(0/1) = 90°

6. a = (3, 4), b = (1, 0)
→ proj_b(a) = (3·1+4·0)/(1²+0²) × (1,0) = (3, 0)

📖 학습 방법 가이드

벡터 학습에서 가장 중요한 것은 기하학적 직관을 키우는 것입니다. 벡터를 단순한 숫자 나열이 아니라 화살표로 시각화하는 습관을 들이세요. 덧셈은 화살표를 이어 붙이는 것이고, 뺄셈은 끝점에서 시작점으로 향하는 화살표입니다. 이런 기하학적 이해가 있으면 복잡한 연산도 직관적으로 파악할 수 있습니다.

The most important aspect of learning vectors is building geometric intuition. Get into the habit of visualizing vectors as arrows rather than just lists of numbers. Addition is connecting arrows tip-to-tail, and subtraction is an arrow from one endpoint to another. This geometric understanding makes even complex operations intuitive.

내적을 학습할 때는 두 가지 정의를 모두 이해하세요. 성분별 계산(a₁b₁ + a₂b₂)과 기하학적 정의(|a||b|cosθ)를 연결하면 내적이 두 벡터의 유사도를 측정한다는 본질을 이해할 수 있습니다. 내적이 0이면 두 벡터가 직교한다는 사실은 매우 자주 활용되는 성질입니다.

When learning the dot product, understand both definitions. Connecting the component calculation (a₁b₁ + a₂b₂) with the geometric definition (|a||b|cosθ) reveals that the dot product measures the similarity between two vectors. The fact that a zero dot product means the vectors are orthogonal is a frequently used property.

외적은 3D 전용 연산이므로 2D 벡터에 익숙해진 후에 학습하는 것이 좋습니다. 외적의 결과가 두 입력 벡터에 모두 수직이라는 점과, 오른손 법칙으로 방향을 결정한다는 점을 기억하세요. 정사영은 내적을 응용한 연산으로, 한 벡터를 다른 벡터 방향으로 분해하는 개념입니다.

The cross product is a 3D-only operation, so it is best to learn it after becoming comfortable with 2D vectors. Remember that the result is perpendicular to both input vectors and that the right-hand rule determines its direction. Projection is an application of the dot product that decomposes one vector along the direction of another.

❓ 자주 묻는 질문 (FAQ)

Q: 내적(Dot Product)은 어디에 사용되나요?
A: 내적은 두 벡터 사이의 각도 계산, 정사영, 벡터의 유사도 측정에 사용됩니다. 물리학에서는 일(Work) = F·d로 힘과 변위의 내적으로 계산하고, 컴퓨터 그래픽스에서는 조명 계산(램버트 반사)에 핵심적으로 활용됩니다.

Q: What is the dot product used for?
A: The dot product is used for calculating angles between vectors, projection, and measuring vector similarity. In physics, work is calculated as W = F·d (dot product of force and displacement), and in computer graphics, it is essential for lighting calculations like Lambert reflection.

Q: 외적(Cross Product)은 어떻게 계산하나요?
A: 3D 벡터 a = (a₁, a₂, a₃)와 b = (b₁, b₂, b₃)의 외적은 a×b = (a₂b₃−a₃b₂, a₃b₁−a₁b₃, a₁b₂−a₂b₁)입니다. 행렬식 형태로 기억하면 편리합니다. 결과 벡터의 크기는 두 벡터가 이루는 평행사변형의 넓이와 같습니다.

Q: How do you calculate the cross product?
A: For 3D vectors a = (a₁, a₂, a₃) and b = (b₁, b₂, b₃), the cross product is a×b = (a₂b₃−a₃b₂, a₃b₁−a₁b₃, a₁b₂−a₂b₁). It is convenient to remember this in determinant form. The magnitude of the result equals the area of the parallelogram formed by the two vectors.

Q: 정사영(Projection)이란 무엇인가요?
A: 정사영은 벡터 a를 벡터 b 방향으로 투영한 결과입니다. 공식은 proj_b(a) = (a·b / |b|²) × b입니다. 그림자가 떨어지는 방향을 생각하면 직관적으로 이해할 수 있습니다. 기계학습의 주성분 분석(PCA)에서도 정사영 개념이 핵심적으로 사용됩니다.

Q: What is vector projection?
A: Projection is the result of projecting vector a onto the direction of vector b. The formula is proj_b(a) = (a·b / |b|²) × b. Think of it like a shadow falling in a direction for intuitive understanding. The projection concept is also central to Principal Component Analysis (PCA) in machine learning.

Q: 2D와 3D 벡터의 차이점은 무엇인가요?
A: 2D 벡터는 두 개의 성분(x, y)으로 평면 위의 방향과 크기를 나타내고, 3D 벡터는 세 개의 성분(x, y, z)으로 공간에서의 방향과 크기를 나타냅니다. 외적은 3D에서만 정의되며, 2D에서는 스칼라 값(a₁b₂−a₂b₁)으로 대체됩니다.

Q: What is the difference between 2D and 3D vectors?
A: 2D vectors have two components (x, y) representing direction and magnitude on a plane, while 3D vectors have three components (x, y, z) for direction and magnitude in space. The cross product is only defined in 3D; in 2D, it is replaced by a scalar value (a₁b₂−a₂b₁).

🎯 이런 분께 추천

물리학·공학 전공자, 선형대수 수강생, 게임 개발자, 컴퓨터 그래픽스 입문자, 기계학습 학습자 등 벡터 직관을 키우고 계산 속도를 높이고 싶은 모든 분께 적합합니다.

C:Vector is ideal for physics and engineering students, linear algebra learners, game developers, computer graphics beginners, machine learning students, and anyone wanting to build vector intuition and improve calculation speed.