목록전체 글 (294)
Minwoo Dev.
문제 1 다음 표준함수를 호출하는 예제를 만들되, C++의 헤더를 선언해서 만들어보자. 그리고 예제의 내용은 상관이 없지만, 아래의 함수들을 최소 1회 이상 호출해야 한다. 참고로 다음 함수들은 C언어의 경우 에 선언되어 있다. strlen : 문자열의 길이 계산 strcat : 문자열의 뒤에 덧붙이기 strcpy : 문자열 복사 strcmp : 문자열의 비교 정답 #include #include using namespace std; int main(void) { char *s1 = "Hello World!"; char *s2 = "HI There!"; char s3[50]; cout
문제 구조체에 대한 복습을 겸할 수 있는 문제를 제시하겠다. 2차원 평면상에서의 좌표를 표현할 수 있는 구조체를 다음과 같이 정의하였다. typedef struct __Point { int xpos; int ypos; } Point; 위의 구조체를 기반으로 두 점의 합을 계산하는 함수를 다음의 형태로 정의하고(덧셈결과는 함수와 반환을 통해서 얻게 한다.) Point& PntAdder(const Point &p1, const Point &p2); 임의의 두 점을 선언하여, 위 함수를 이용한 덧셈연산을 진행하는 main 함수를 정의해보자. 단, 구조체 Point 관련 변수의 선언은 무조건 new 연산자를 이용하여 진행하여야 하며, 할당된 메모리 공간의 소멸도 철저해야 한다. 참고로 이 문제의 해결을 위해서는..
문제 const 포인터에 대한 복습을 겸할 수 있는 문제를 제시하겠다. 다음의 상수 선언을 보자. const int num = 12; 포인터 변수를 선언해서 위 변수를 가리키게 해보자. 그리고 이 포인터 변수를 참조하는 참조자를 하나 선언하자. 마지막으로 이렇게 선언된 포인터 변수와 참조자를 이용해서 num에 저장된 값을 출력하는 예제를 완성해보자. 정답 #include using namespace std; int main(void) { const int num = 12; const int *ptr = # const int *(&ref) = ptr; cout
문제 1 참조자를 이용해서 다음 요구사항에 부합하는 함수를 각각 정의하여라. 인자로 전달된 int 형 변수의 값을 1씩 증가시키는 함수 인자로 전달된 int형 변수의 부호를 바꾸는 함수 그리고 위의 각 함수를 호출하여 그 결과를 확인하는 main함수까지 작성하여라. 정답 #include using namespace std; void Addone(int *num) { *num += 1; } void changeSign(int *num) { *num *= (-1); } int main(void) { int num = 20; Addone(&num); cout
문제 "은행계좌 관리 프로그램"을 구현할 것이다. 프로젝트 01단계에서는 C 스타일로 구현하는 것을 목표로 한다. 구현할 기능은 다음과 같다. 기능 1 : 계좌 개설 기능 2 : 입 금 기능 3 : 출 금 기능 4 : 전체고객 잔액조회 그리고 프로그램을 간결하게 하기 위해 몇가지 가정을 하겠다. 가정의 내용은 다음과 같다. 통장의 계좌번호는 중복되지 아니한다. (중복검사 하지 않겠다는 뜻) 입금 및 출금액은 무조건 0보다 크다. (입금 및 출금액의 오류검사 하지 않겠다는 뜻 고객의 계좌정보는 계좌번호, 고객이름, 고객의 잔액, 이렇게 세가지만 저장 및 관리한다. 둘 이상의 고객정보 저장을 위해서 배열을 사용한다. 계좌번호는 정수의 형태이다. 내가 구현한 코드 #include using namespace ..
문제 앞서 소개한 예제 NameSp2.cpp를 다음과 같이 총 3개의 파일로 분할하여 컴파일 해보자. 헤더파일 : main 함수를 제외한 나머지 두 함수의 선언을 삽입한다. 소스파일1 : main 함수를 제외한 나머지 두 함수의 정의를 삽입한다. 소스파일2 : main 함수만 삽입한다. 파일의 이름은 여러분이 임의로 정해도 된다. 하지만, 각 파일에 들어갈 내용은 위의 지시대로 진행해야 한다. NameSp2.cpp #include namespace BestComImpl { void SimpleFunc(void); } namespace ProgComImpl { void SimpleFunc(void); } int main(void) { BestComImpl::SimpleFunc(); ProgComImpl::..
문제 1 예제 DefaultValue3.cpp에 정의된 함수 BoxVolume를 '매개변수의 디폴트 값 지정' 형태가 아닌, '함수 오버로딩'의 형태로 재 구현해보자. 물론 main 함수는 변경하지 않아야 하며, 실행결과도 동일해야 한다. DefaultValue3.cpp #include int BoxVolume(int length, int width = 1, int height = 1); int main(void) { std::cout
문제 다음 main 함수에서 필요로 하는 swap 함수를 오버로딩해서 구현해보자. #include int main(void) { int num1 = 20, num2 = 30; swap(&num1, &num2); std::cout
문제 1 사용자로부터 총 5개의 정수를 입력받아서, 그 합을 출력하는 프로그램을 작성해 보자. 단, 프로그램의 실행은 다음과 같이 이루어져야 한다. 실행 예 1번째 정수 입력: 1 2번째 정수 입력: 2 3번째 정수 입력: 3 4번째 정수 입력: 4 5번째 정수 입력: 5 합계: 15 정답 #include int main(void) { int num[6]; int sum = 0; for (int i = 0; i < 5; i++) { std::cout
.every() every 메서드는 배열과 함께 사용되며, true 혹은 false를 반환한다. arr.every(실행할 함수) 기본적인 형태는 위와 같으며, 실행할 함수를 먼저 선언하여 콜백형식으로 사용하거나, every() 메서드의 인자로 직접 함수를 정의해주는 방법이 있다. every() 메서드는 배열의 각 값을 불러와 함수로 검사하여 모든 결과가 참일 경우에 참을 반환한다. 1. 함수를 따로 선언하여 콜백형태로 every() 매서드에 사용 let arr = [3, 4, 5, 6, 7, 8, 9, 10]; function biggerThanFive(num) { if (num > 5) { return num; } } const result = arr.every(biggerThanFive); conso..