반응형
벡터에 대한 연산을 배열을 이용하여서 작성하여 보자.
(a)2개의 벡터를 더하는 연산은 다음과 같이 정의된다. 2개의 벡터를 더하는 함수인 vector_add()를 작성하라. 이 함수를 테스트하기 위한 코드도 작성하라.
벡터의 덧셈
대응되는 스칼라 값끼리 더해서 새로운 벡터를 만들 수 있다.
출처 : https://namu.wiki/w/%EB%B2%A1%ED%84%B0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #include <stdio.h> #define SIZE 3 void vector_sum(int a[],int b[],int c[]); int main(void) { int vector1[SIZE]={}; int vector2[SIZE]={}; int vector3[SIZE]={}; int i; for(i=0;i<SIZE;i++) {printf("벡터1의 각 성분값을 입력하세요: "); scanf("%d", &vector1[i]);} printf("벡터1의 값: (%d,%d,%d)\n", vector1[0],vector1[1],vector1[2]); for(i=0;i<SIZE;i++) {printf("벡터2의 각 성분값을 입력하세요: "); scanf("%d", &vector2[i]);} printf("벡터2의 값: (%d,%d,%d)\n", vector2[0],vector2[1],vector2[2]); vector_sum(vector1,vector2,vector3); printf("벡터3의 값: (%d,%d,%d)\n", vector3[0],vector3[1],vector3[2]); return 0; } void vector_sum(int a[],int b[],int c[]) { int i; for(i=0;i<SIZE;i++) { c[i]=a[i]+b[i]; } } | cs |
(b)벡터의 내적(dot product)를 계산하는 함수인 vector_dot_prod()를 작성하라. 이 함수를 테스트하기 위한 코드도 작성하라. 벡터의 내적은 다음과 같이 정의된다.
두 벡터를 연산했을 때, 결과가 스칼라이다. 학부 수준에서의 내용은 내적 문서 참조. < , > 로 표기하기도 한다.
벡터의 내적(스칼라곱, 닷 프로덕트)
출처 : https://namu.wiki/w/%EB%B2%A1%ED%84%B0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | #include <stdio.h> #define SIZE 3 int vector_dot_product(int a[],int b[]); int main(void) { int vector1[SIZE]={}; int vector2[SIZE]={}; int vector3[SIZE]={}; int i; for(i=0;i<SIZE;i++) {printf("벡터1의 각 성분값을 입력하세요: "); scanf("%d", &vector1[i]);} printf("벡터1의 값: (%d,%d,%d)\n", vector1[0],vector1[1],vector1[2]); for(i=0;i<SIZE;i++) {printf("벡터2의 각 성분값을 입력하세요: "); scanf("%d", &vector2[i]);} printf("벡터2의 값: (%d,%d,%d)\n", vector2[0],vector2[1],vector2[2]); printf("벡터1과 벡터2의 내적 값:%d\n", vector_dot_product(vector1,vector2)); return 0; } int vector_dot_product(int a[],int b[]) { int i; int sum=0; for(i=0;i<SIZE;i++) { sum+=a[i]*b[i]; } return sum; } | cs |
반응형
'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글
2차원 행렬 (0) | 2016.08.12 |
---|---|
재고 관리 시스템 (0) | 2016.08.11 |
시험 점수 통계 처리 (0) | 2016.08.11 |
표준 편차 (0) | 2016.08.11 |
제곱과 세제곱 (0) | 2016.08.10 |