C, C++/codecademy

vector

짱짱이_ 2023. 2. 21. 23:31

vector를 사용하기 위해  #include <vector> 를 추가해주어야 한다.

 

vector 선언은 std::vector<type> name;

   ex) std::vector<int> day;

 

특정 값으로 만들고 초기화 할수도 있다.

   std::vector<double> location = {42.63, -73.52};

 

 

#include <iostream>
#include <vector>

int main() {
   
  std::vector<double> subway_adult = {800, 1200, 1500};
  
  // Give subway_child some values:
  
  std::vector<double> subway_child = {400, 600, 750};
  
}

 

 

  • index 이용해 접근하기

 

 

출력 결과

 

 

 

  • 추가 및 제거

- push_back() 을 이용한 추가

: 벡터의 맨 뒤 요소에 추가할 때 이용한다.

 

GTG, CTG 추가하기

 

 

- pop_back()을 이용한 제거

: 벡터의 맨 뒤 요소를 제거할 때 이용한다.

 

 

 

예시

 

 

 

 

  • 크기 size()

 

 

v[0]~v[5]까지 6개의 값이 저장되어 있으므로  벡터 v의 크기는 6이다.

 

 

 

 

 

 

  • 연산

 

 

예제) 총합 구하기

#include <iostream>
#include <vector>
  
int main() {
  
  std::vector<double> delivery_order;
  
  delivery_order.push_back(8.99);
  delivery_order.push_back(3.75);
  delivery_order.push_back(0.99);
  delivery_order.push_back(5.99);
  
  // Calculate the total using a for loop:
  
  double total = 0.0;

  for (int i=0; i<delivery_order.size(); i++)
  {
    total += delivery_order[i];
  }

  std::cout << total << std::endl;

 

 

예제)

#include <iostream>
#include <vector>

int main()
{
  std::vector<int> num = {2,4,3,6,1,9};
  int sum_even = 0;
  int sum_odd = 0;

  for(int i=0; i<num.size(); i++)
  {
    if(num[i] % 2 ==0) // 짝수
    {
      sum_even += num[i];
    }
    else
    {
      sum_odd += num[i];
    }
  }
  
  std::cout << "Sum of even numbers is " << sum_even << std::endl;
  std::cout << "Product of odd numbers is " << sum_odd << std::endl;
}

'C, C++ > codecademy' 카테고리의 다른 글

함수 - 범위 및 유연성 (지역/전역범위, 인라인 함수, 오버로드, 템플릿)  (0) 2023.03.01
함수  (0) 2023.02.26
에러  (0) 2023.02.21
논리 연산자, 루프(for, while)  (0) 2023.02.21
조건문, 연산자  (0) 2023.02.20