목록C++ (28)
사자자리

https://www.acmicpc.net/problem/11944 11944번: NN 첫 번째 줄에는 N, M이 주어진다. (1 ≤ N, M ≤ 2016) www.acmicpc.net #include #include using namespace std; int main() { int inum, m; cin >> inum >> m; string snum = to_string(inum); string result = ""; for (int i = 0; i m) { for (int i = 0; i < m; i++) cout

https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net #include using namespace std; int main() { int num[8], judge[8] = {0}; for (int i = 0; i > num[i]; if (i != 0) { if (num[i - 1] nu..

https://coding-leo.tistory.com/153 [C++] 연산자 오버로딩 연산자 오버로딩 함수 오버로딩 - 다른 매개변수의 데이터형을 가진, 같은 이름의 함수를 여러 개 정의할 수 있다. 연산자 오버로딩 - 오버로딩의 개념을 연산자까지 확장하여, 연산자에 다중 coding-leo.tistory.com 프렌드(friend) - C++의 클래스에서 public에 선언된 함수 이외에도 private의 멤버로 접근할 수 있는 통로 - 함수를 어떤 클래스에 대해 프렌드로 만들면, 그 함수는 클래스의 멤버 함수들과 동등한 접근 권한을 가진다. - 즉, 프렌드 함수는 어떤 클래스의 private의 멤버에 접근할 수 있게 된다. 프렌드 사용 이유 - 지금까지, 클래스의 private 멤버는 public..

연산자 오버로딩 함수 오버로딩 - 다른 매개변수의 데이터형을 가진, 같은 이름의 함수를 여러 개 정의할 수 있다. 연산자 오버로딩 - 오버로딩의 개념을 연산자까지 확장하여, 연산자에 다중적인 의미를 부여한다. - C++은 피연산자의 개수 또는 데이터형을 판단하여 연산자가 어떤 연산을 수행할지 결정한다. - 예를 들어, '*'은 주소에 적용되면 그 주소에 저장되어 있는 값을 산출하고, 두 값 사이에 적용되면 두 값의 곱을 산출한다. 두 개의 시간을 더하는 기능을 구현해보자 //time.h #include #ifndef TIMEH #define TIMEH class Time { private: int hours, mins; public: Time(); Time(int, int); void addHours(i..

https://www.acmicpc.net/problem/10430 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net #include using namespace std; class mod{ private: int a, b, c, result; public: void cal1(int, int, int); void cal2(int, int, int); void cal3(int, int, int); void cal4(int, int, int); void show(); mod(); }; mod::mod(){ } void mod::cal1(int a, int b, int c){ result = (a + b) % c; } voi..

this 포인터 - 객체 자신을 가리키는 포인터 - 멤버 함수 내에서 사용할 수 있다. 클래스 객체 배열 - 디폴트 생성자가 정의되어 있어야 한다. //Stock.h #ifndef STOCK #define STOCK #include using namespace std; class Stock { private: string name; int shares; float share_val; double total_val; void set_total() { total_val = shares * share_val; } public: Stock(); Stock(string, int, float); void buy(int, float); void sell(int, float); void update(float); St..

생성자 - 디폴트 생성자: Stock(); - 생성자 오버로딩: Stock(string co, int n, float pr); - 생성자를 따로 정의하지 않으면, 컴파일러가 자동으로 디폴트 생성자를 만든다. - 하지만 생성자를 하나라도 오버로딩한다면, 디폴트 생성자는 개발자가 직접 작성해야 한다. 소멸자 ~Stock(); - 소멸자를 따로 정의하지 않으면, 컴파일러가 자동으로 디폴트 소멸자를 만든다. - 클래스를 소멸하는 일만 할 수 있다. //Stock.h #ifndef STOCK #define STOCK #include using namespace std; class Stock { private: string name; int shares; float share_val; double total_val..