Schoolwork 25

[C++] 7주차 과제5

간단한 수식을 입력 받아서 계산을 해주는 계산기 프로그램을 작성한다. 반드시 Template 클래스와 스택을 사용하여 구현한다. 자세한 내용은 첨부한 pdf 파일을 참조하여 작성한다. #문자열 입력으로 .이 입력될 때까지 재입력을 받도록 한다. #헤더와 메인 파일은 분리하지 않고 한 개의 cpp파일을 제출한다. #입력값을 반복적으로 받을 수 있게 하고, .(마침표)를 입력하면 프로그램을 종료하도록 한다. 입력: 중위표기식 수식인 문자열 출력: 수식 계산 결과값, 입력 수식의 후위표기식 Code #include #include #include using namespace std; template class Stack { public: Stack(int stackCapacity = 10); bool IsEm..

[C++] 5주차 과제4

다항식을 입력, 출력, 계산하는 프로그램을 구현한다. 다항식은 객체(class)로 생성해야 하며, 다항식 연산을 위하여 연산자 오버로딩 기능을 이용한다. 다항식 a, b, c를 입력받아 문제에 주어진 연산을 수행한다.(다양한 입력 예를 테스트하는 것을 추천함) 다항식 입력은 (계수, 지수) 표현 형태를 이용한다. 다항식의 출력 형식은 첨부파일과 같은 형식을 따른다. 첨부파일의 프로그램 코드를 실행한다. 입력물: 다항식 a, b, c, 정수 x 출력물: 첨부파일의 프로그램 코드를 실행한 결과물(출력 결과물). * 연산자 오버로딩을 구현해야함. * 프로그램 내용 외에 다른 내용이 출력된다면 감점이 될 수 있으니 유의바람. 입력은 0~9까지로 음수 예외처리는 하지 않으셔도 됩니다. Code #include #..

[C++] 3주차 과제3

첨부파일(HW3.pdf)에 제시된 문제를 C++ 프로그램으로 작성하라. 입력 파일의 제목은 "input.txt"로 통일 (문장부호, 중복 단어를 포함한 예문 사용) 결과물(출력할 내용) : 입력파일 내용, 단어 정렬 결과, 중복 제거 결과, 단어 검색 결과 예 단어 정렬 결과, 중복 제거 결과 등은 (단어 위치, 단어)와 같이 쌍으로 표현하며, 출력 형식(표, 리스트 등)은 자유로이 선택 검색 예는 입력에 포함되어 있는 단어, 없는 단어 각 3개씩 검색하여 결과 보이게 한다. 프로그램의 종료 없이 한 번의 실행으로 반복적으로 검색할 수 있도록 한다. (.(마침표) 입력시 프로그램 종료) 문장부호는 최소 '"!?,. 6개를 제외시킨다. 문장에 존재하는 단어를 입력할 시에는 단어의 위치(1부터 시작), 없는..

[C++] 2주차 과제2

1주차에 작성한 학과명, 학번, 이름, 생년월일, 나이, 현재날짜를 출력하는 C++ 프로그램을 수정하여 다음 기능을 포함하도록 작성하라. Exception handling을 구현하기 위한 try-catch의 구조를 이용하여 사용자의 입력 데이터에 오류가 있을 때 처리하는 프로그램을 작성하라. (사용자의 입력 오류로 프로그램이 오작동하는 경우가 발생하지 않도록 최대한 대처할 수 있도록 할 것) 예: 생일 입력시 "2000/03/33"과 같이 잘못된 날짜를 입력한 경우 다시 입력할 것을 요구함 Code // use class Date // 이름, 학부(과)명에 숫자가 들어가지 않고, 학번에는 숫자만 들어간다고 가정했습니다. #include #include #include #include #include #p..

[C++] 1주차 과제1

학과명, 학번, 이름, 생년월일을 입력받아서 학과명, 학번, 이름, 생년월일, 나이, 현재날짜를 출력하는 C++ 프로그램을 작성하라. Date 클래스를 정의해서 이용하라. 입출력 예: 환영합니다! 학과명, 학번, 이름, 생년월일(yyyy/mm/dd)을 입력하세요> 소프트웨어학과, 1111222333, 홍길동, 2000/03/01 >> 소프트웨어학과 1111222333 홍길동님 2000년3월1일생 2020년3월16일 현재 20세입니다. ** 프로그램을 수행할 때의 현재 날짜를 출력해야하며, 본인의 학번과 이름은 정확히 기록해야함(출석 및 과제 제출 확인용). 생일은 임의로 작성 가능. Code // use class Date #include #include #include #include #include ..

[C++] 과제 4: 가장 큰 수

길이가 N인 숫자로 된 문자열이 있다. 이 문자열에서 연속한 K개의 숫자로 만들 수 있는 가장 큰 수를 찾는 프로그램을 작성하시오. 예를 들어, 문자열이 "1414213"이고 K=3이라면, 만들 수 있는 수는 141, 414, 142, 421, 213이며 421이 이 중 가장 큰 수이다. .c/.cpp/.java 파일 하나를 제출하시오. 입력 표준 입력으로 입력을 받는다. 첫줄에 두 정수 N과 K가 주어지는데, N은 문자열의 길이로 1 이상 100,000 이하이며, K는 문제에서 설명한 것과 같은 의미로 1 이상 10 이하이다. K가 N보다 큰 경우는 없다. 다음 줄에는 길이가 N인 숫자로 이루어진 문자열이 주어진다. 출력 표준 출력으로 출력한다. 한 줄에 정수 하나를 출력하는데, 이 수는 문제의 조건을..

[C++] 과제 3: 칸 채우기

3 x n 크기의 네모칸이 있다. 이 칸을 3 x 1 크기의 블럭을 이용하여 겹치지 않고 빼꼭하게 채우는 서로 다른 방법의 가짓수를 구하는 프로그램을 작성하시오. 이 문제를 푸는 .c/.cpp/.java 파일 하나를 제출하시오. 예를 들어, n = 1일때는 1가지, n = 2일 때는 1가지, n = 3일 때는 2가지임을 쉽게 알 수 있다. n=3인 경우를 세 블럭 OOO, XXX, MMM으로 채운 두 가지 경우가 아래 그림과 같다. OXM OOO OXM XXX OXM MMM 입력 표준 입력으로 받는다. n을 나타내는 정수 하나가 주어진다. n은 1 이상 45 이하이다. 출력 표준 출력으로 한 줄에 정수 하나를 출력한다. 이 정수는 문제의 조건을 만족하는 가짓수를 나타낸다. 예제 입력 1 1 예제 출력 1..

[C++] 과제 2: 포로 수용소 - Convex Hull 응용

제출은 .c/.cpp/.java 파일 하나만 제출해주세요. 2차원 좌표 (0, 0) 부터 (N, N)로 표현되는 포로 수용소 안에 M명의 포로들이 있다. 포로들은 이 좌표의 정수점 위에 있고, 한 점 위에 두명 이상의 포로가 있는 경우는 없다. 또, 한 직선 위에 세 명 또는 그 이상의 포로가 오는 경우도 없다. 포로들은 이동하지 않는다. 포로를 감시하는 것이 너무 힘들어서, 포로들의 일부에게 다른 포로를 감시하는 권한을 주려고 한다. 가능한 한 가장 적은 수의 포로에게 감시 권한을 주려고 하는데, 한 가지 제약 조건이 있다. 감시 권한이 없는 포로는, 감시 권한이 있는 포로 세 명을 이어서 만들어지는 삼각형 안에 반드시 들어 있어야 한다. 포로 수용소의 크기 N, 포로의 수 M이 주어졌을 때, 감시 권..

반응형