목록Programing Language (103)
완숙의 블로그
#1 // // main.cpp // Lab #11 // // Created by 최완식 on 28/05/2019. // Copyright © 2019 최완식. All rights reserved. // #include #include using namespace std; template void sort(vector& list){ int count = 0; while(count != 4){ for(int i = 0; i list[i+1]){ temp = list[i+1]; list[i+1] = list[i]; list[i] = temp; }else{ count++; } } } } template void print(const vector& lis..
for_each() algorithm 라이브러리에는 다양한 함수가 있지만, 그중에서 for_each() 함수에 대해서 알아보자. #include vector v{1, 2, 3, 4, 5, 6, 7}; 다음과 같은 벡터가 선언되어 있을 때, 각 요소의 값을 실제로 1 증가시키기 위해서는 어떻게 해야할까? 각각의 요소를 reference 해서 불러온 뒤, 증가시켜주면 될 것이다. for(auto& elem : v){ elem++; } 그런데, 만약 다른 자료형이라면, 이 것을 일일히 다 쳐줘야 한다. 그래서 for_each() 함수가 존재한다. 사용법 for_each(시작 주소값, 끝 주소값, 함수); 이때 특정 객체의 시작주소값, 끝주소값을 받아오는 것을 begin() end() 함수로 배웠다. 그리고, ..
functional library Lambda function 함수 안에서 부를 수 있는 Local function! 사실 정체는 객체이지만, 우리는 함수의 개념으로 갖다 쓴다! Usage [closure](입력 매개변수)->출력 type{내용} Local function 이기 때문에 만들어졌다가 리턴 후 사라진다. Example #include #include #include using namespace std; int evaluate(int(*func)(int, int), int x, int y){ return func(x, y); } int main(){ // sum: [](int x, int y)->int{return x + y;} cout int{return x + y;}, 2, 3) int{r..
Iterator 반복자는 generic 함수이다. 즉, 일반적인 프로그래밍을 가능하게 하기위해 만들어진 전역함수이다. 우리는 배열을 다루기 위해 vector, array, list와 같은 것들을 사용했다. 그런데, 이녀석들을 다루기 위해서는 이 세가지 객체에 어떤 method가 있는지 알아야 한다. 또한, 어떤 인풋이 들어오든간에, 클래스나 함수를 돌아가기 위해서는 특정 객체에 접근할 수 있는 일반적인 함수가 존재하는 것이 보다 편리하다. 그래서 Iterator 클래스를 만들고, 가장 많이 사용하는 몇개의 함수를 구현해놓았다. Method Iterator 객체에서 사용할 수 있는 메서드는 다음과 같이 7개이다. *iter iter++ iter-- iter1 == iter2 iter1 != iter2 be..
List 이제껏 vector container 에 대해서 집중적으로 사용했는데, list container 역시 vector와 마찬가지로 많이 사용된다. Vector 장점 : search가 빠르다. 단점 : pop/ push 가 느리다. => 요소의 내용이 바뀔일이 많이 없으면 Vector 사용 List 장점 : search가 느리다. 단점 : pop/ push 가 빠르다. => 요소의 내용이 바뀔일이 많으면 List 사용 기본적으로 가지는 method는 같기 때문에, 쉽게 사용가능하다. #include #include using namespace std; int main(){ list myList{1,2,3,4}; char command; int inputVal; bool finished = false..
Static Binding (정적 바인딩) #include #include #include using namespace std; class Base{ public: void f(){cout
문제 inputdata1.csv 와 inputdata2.csv 를 입력으로 받아서 sample.csv와 같은 형태로 결과를 만드는 프로그램을 작성해라. myFile 클래스를 만들어서 풀이해라. inputdata1.csv ID,Name 20190001,Apple 20190003,Pear 20190002,Orange inputdata2.csv ID,Class1,Class2,Class3 20190003,90,90,98 20190002,45,12,37 20190009,10,10,10 20190001,89,92,35 sample.csv ID,Name,Course 1,Course 2,Course 3,Average 20190001,Apple,89,92,35,72 20190002,Orange,45,12,37,31 20..
Class 클래스는 c++에서 자세히 다뤘으므로, 해당 내용에 대해 파이썬 문법만 알아보도록 하자. __init__, constructor class Student: def __init__(self, givenID, givenName): self.id = givenID self.name = givenName def setId(self, givenID): self.id = givenID def getId(self): return self.id def setName(self, givenName): self.name = givenName def getName(self): return self.name student1 = Student(20190001, "Harry Potter") student2 = Stude..