diff options
| author | y-jan137 <yousefjan24000@gmail.com> | 2026-03-12 16:40:43 +0300 |
|---|---|---|
| committer | y-jan137 <yousefjan24000@gmail.com> | 2026-03-12 16:40:43 +0300 |
| commit | 38004f74df5b2dbcb07e6ad5ac2272f16882e018 (patch) | |
| tree | 119c13cab68e3f38c77a737a7f15a3dad74c1343 /src/vector.cpp | |
| parent | 11568ad166dc9312593fa4caf05aaa4a11f21b17 (diff) | |
Add basic ops
Diffstat (limited to 'src/vector.cpp')
| -rw-r--r-- | src/vector.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/vector.cpp b/src/vector.cpp index b8b1c6f..8c4a8c4 100644 --- a/src/vector.cpp +++ b/src/vector.cpp @@ -83,6 +83,18 @@ Vector operator*(const Vector& v, double scalar) { Vector operator*(double scalar, const Vector& v) { return v * scalar; } +Vector operator/(const Vector& v, double scalar) { + if (scalar == 0.0) { + throw std::invalid_argument("Vector scalar division requires a nonzero scalar"); + } + + Vector result(v.size()); + for (std::size_t i = 0; i < v.size(); ++i) { + result[i] = v[i] / scalar; + } + return result; +} + double dot(const Vector& lhs, const Vector& rhs) { check_same_size(lhs, rhs, "Dot product"); |