본문 바로가기

Language/C++21

[C++_제 11장] 포인터와 동적 메모리 관리 본 포스팅은 C++로 시작하는 객체지향 프로그래밍 책을 바탕으로 작성하였습니다. C++로 시작하는 객체지향 프로그래밍『C++로 시작하는 객체지향 프로그래밍』은 구문보다는 문제 해결에 중점을 두는 문제 구동 방식을 사용한 프로그래밍에 대해 가르치고 있다. 여러 가지 상황에서 문제를 야기한 개념을 사용함book.naver.comkey point⭐ 포인터의 기본 사항포인터(pointer) : 데이터 값이 저장된 변수의 메모리 주소를 저장한다. 포인터 변수(pointer variable) : 포인터의 값으로 메모리 주소를 저장하기 위해 선언된다. *(애스터리스크) : 1) 포인터로 선언할 때 2) 역참조 연산자(또는 간접 연산자 indirection operator) &(앰퍼샌드) : 주소 연산자(address.. 2022. 5. 11.
[C++_제 10장] 객체지향 개념 본 포스팅은 C++로 시작하는 객체지향 프로그래밍 책을 바탕으로 작성하였습니다. C++로 시작하는 객체지향 프로그래밍 『C++로 시작하는 객체지향 프로그래밍』은 구문보다는 문제 해결에 중점을 두는 문제 구동 방식을 사용한 프로그래밍에 대해 가르치고 있다. 여러 가지 상황에서 문제를 야기한 개념을 사용함 book.naver.com key point ⭐ String 클래스 - 문자열 작성 string s("Welcome to C++"); //문자열 생성자 string s; //빈 문자열(empty string) - 문자열 추가 (append) string s1("welcome"); s1.append(" to C and C++", 0, 5); s1.append(4, 'G'); cout 2022. 5. 7.
[C++_백준] 10828, 10845 10828. 스택 문제 정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 다섯 가지이다. push X: 정수 X를 스택에 넣는 연산이다. pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 스택에 들어있는 정수의 개수를 출력한다. empty: 스택이 비어있으면 1, 아니면 0을 출력한다. top: 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. 입력 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고.. 2022. 3. 16.
[C++_제 9장] 객체와 클래스 본 포스팅은 C++로 시작하는 객체지향 프로그래밍 책을 바탕으로 작성하였습니다. C++로 시작하는 객체지향 프로그래밍 『C++로 시작하는 객체지향 프로그래밍』은 구문보다는 문제 해결에 중점을 두는 문제 구동 방식을 사용한 프로그래밍에 대해 가르치고 있다. 여러 가지 상황에서 문제를 야기한 개념을 사용함 book.naver.com ⭐key point 클래스는 객체의 속성과 행동을 정의한다. 객체의 상태(state)는 현재 값을 가지고 있는 데이터 필드로 표현된다. 객체의 행동(behavior)은 함수에 의해 정의된다. 객체에 대한 함수를 호출하는 것은 객체에 어떤 동작을 수행하도록 요구하는 것. 클래스는 객체에 대한 정의이며, 객체는 클래스로부터 생성된다. 객체를 생성할려면 클래스에 객체가 사용하려는 상태.. 2022. 3. 10.
[C++_백준] 16430, 15740, 15964 16430. 제리와 톰 문제 톰은 마트에서 치즈 1kg 을 사서 집으로 돌아왔습니다. 그런데 톰이 한눈을 판 사이 제리가 와서 A/B kg 만큼 훔쳐갔습니다. 제리가 치즈를 훔쳐 간 후 톰이 가지고 있는 치즈의 무게는 얼마인가요? 입력 첫 번째 줄에 두 정수 A, B (1 ≤ A > a >> b; int na = b - a; int nb = b; //유클리드 호제법 while (nb != 0) { int c = na % nb; na = nb; nb = c; } cout > b; cout > a >> b; long long int c = (a + b) * (a - b); cout 2022. 2. 12.
[C++_백준] while문 (10952, 10951, 1110) 10952. A + B - 5 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 > a >> b; while (true) { cout a >> b; if (a == 0 && b == 0) break; } return 0; } 10951. A + B - 4 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로.. 2022. 2. 8.