C++ 136

C++ Fundamentals of Data Structures(C++ 자료구조론) 1.7 연습문제

[Exercises 1]/*Compare the two functions n^2 and 2^n/4 for various values of n.2^n 함수와 2^n/4의 함수에 다양한 n을 대입하며 비교한다.Determine when the second becomes larger than the first.2^n/4가 n^2보다 커지는 구간을 찾는다.*/#include using namespace std; int f(int n);int g(int n); int main(void){ cout =0일 때 이를 만족하는 c를 찾을 수 없다BigOh가 만족 X 즉, 세타 또한 성립 X (c) n^2/logn=Theta(n^2) ->cn^2-n^2/logn=n^2(c-1/logn)>=0즉, c=1, n=10일 때 ..

C++ Fundamentals of Data Structures(C++ 자료구조론) 1.6 연습문제

[Exercises 1]/*Modify Program 1.14 so that it outputs all permutations of distinct elements프로그램 1.14를 수정하여 순열의 모든 개별 요소를 출력하도록 한다.Do this by sorting the element list into ascending order prior to generating the permutations.위의 지시사항을 실행할 때 오름차순으로 출력하도록 한다.To sort, use the STL algorithm sort(start, end) which sorts elements in the range [start, end) into ascending order.오름차순으로 출력할 때 STL 알고리즘 sort(..

C++ Fundamentals of Data Structures(C++ 자료구조론) 1.5 연습문제 9~15

[Exercises 9]/*Write an iterative function to compute a binomial coefficient;이번에는 이항계수를 구하는 비재귀 함수를 작성합니다then transform it into an equivalent recursive function비재귀 함수를 작성한 다음에는 똑같은 결과를 출력하는 재귀함수로 변환하시오(이건 8번 문제이므로 작성 X)*/#include using namespace std; int iterBinomial(int n, int m); int arr[10][10]; //전역 이차원배열//배열을 동적할당하는 방법도 생각해봤지만 상당히 복잡해질 것이라고 예상되어 이렇게 선언했습니다. int main(void){ int m, n; cout > ..

C++ Fundamentals of Data Structures(C++ 자료구조론) 1.5 연습문제 1~8

[Exercises 1]/*Horner's rule is a means for evaluating plynomial A(x)=anx^n+an-1x^n-1+...+a1x+a0 at a point x0 using a minimum number of multiplications.Horner의 법칙은 주어진 점 x0에서 최소의 곱으로 다항식 A(x)를 계산하는 것입니다.This rule is A(x)=(...(anx0+an-1)x0+...+a1)x0+a0이 법칙은 위와 같습니다.Write a C++ program to evaluate a polynomial using Horner's rule.Horner의 법칙을 이용하여 다항식을 계산하는 C++ 프로그램을 작성합니다.*/#include using namespa..

C++ Fundamentals of Data Structures(C++ 자료구조론) 1.4 연습문제

[Exercises 1]/*Modify Program 1.5 so that it throws an exception of type int.프로그램 1.5를 수정해서 int 자료형을 throw하도록 한다The value of the thrown exception should be 1 if a, b, and c are all less than 0;a, b, c가 모두 0보다 작다면 throw한 값은 1이 되어야 한다.the value should be 2 if all three equal 0.a, b, c가 모두 0이면 throw한 값은 2가 되어야 한다When neither of these conditions is satisfied, no exception is thrown.위에 언급한 두가지 조건이 아니..

기초를 탄탄히 세워주는 C++ 프로그래밍 입문 15장 연습문제

[15.1] /*다음과 같은 구조체 Point가 있다.auto_ptr를 사용하여 Point 구조체 변수를 동적으로 생성하는 main 함수를 작성해 본다.struct Point{ int x, y;};auto_ptr의 실제 타입으로 구조체가 올 경우를 대비하여 -> 연산자를 준비해 두고 잇다고 하였다.여기서는 -> 연산자를 사용해보도록 한다*/#include #include using namespace std; struct Point{ int x, y;}; int main(void){ auto_ptr p(new Point); p->x = 5; p->y = 5; cout

기초를 탄탄히 세워주는 C++ 프로그래밍 입문 14장 연습문제

[14.1] /*사용자로부터 1부터 10까지의 정수 중 하나를 입력받고 제곱값을 출력하려고 한다.사용자가 이 범위를 벗어난 정수값을 입력할 경우, 예외 처리를 통해 잘못 입력하였음을 알리도록 한다*/#include using namespace std; int main(void){ int num; cout > num; try { if (num 9) throw num; cout > x >> y;; try { if (y == 0) throw 1; if (x 1) throw "예외"; cout 연산자 내에서 원하는 값(0 이상)이 입력되지 못할 경우 예외를 발생시켜 본다.CPoint 클래스를 사용하는 main 함수에서는 예외 발생 시 이 예외를 처리할 수 있어야 한다.*/#include us..

기초를 탄탄히 세워주는 C++ 프로그래밍 입문 13장 연습문제

[13.1]/*CPoint 객체를 원소로 갖는 vector 객체를 만들려고 한다.사용자는 CPoint 객체의 (x, y) 값을 계속해서 입력할 것이다.만약 (0, 0)이 입력된다면 입력이 종료됨을 의미한다.사용자가 입력한 CPoint 객체를 vector 객체의 원소로 추가하도록 한다.*/#include #include using namespace std; class CPoint{private: int x; int y;public: CPoint(int a = 0, int b = 0) :x(a), y(b) { } void Print() { cout > num >> place; if (num == 0) break; if (place == 0) MyList.push_front(num); else if (plac..

기초를 탄탄히 세워주는 C++ 프로그래밍 입문 12장 연습문제

[12.1] /*실행 결과와 같이 1부터 10까지의 값들에 대한 제곱값과 나누기 3을 한 값을 "out1.txt" 파일로 출력해본다각 출력값들에 대해 적절한 크기의 필드를 지정하고 오른쪽 정렬로 출력하도록 한다.나누기 3을 한 값의 결과는 실수로 처리될 수 있어야 하며 소수점 이하 첫 번째 자리까지만 출력하도록 한다*/#include #include using namespace std; int main(void){ ofstream fout("out1.txt"); //출력 스트림 생성 및 파일 열기 if (!fout) { cout > std.dpt; fout.write((char*)&std, sizeof(std)); } fout.close(); cout