목록Development (561)
컴공생의 다이어리
문제 두 지점 A와 B의 위치 정보와 A와 B의 각 지점에서 지점 C까지의 거리가 주어지면 지점 C가 위치 할 수있는 좌표의 수를 계산한다. 위치 정보는 좌표로 표시된다. A와 B의 좌표가 (x1, y1), (x2, y2)이면 A에서 C까지의 거리가 d1이고 B에서 C까지의 거리가 d2이면 x1, y1, d1, x2 , y2, d2의 입력의 형식은 다음과 같다. 첫 번째 줄에 테스트 할 횟수를 입력한다. 다음 줄부터 위에 기록 된만큼 테스트 케이스를 작성한다. C가 위치 할 수있는 좌표가 무한대이면 출력은 1이다. 코드 #include #include using namespace std; typedef struct{ int x; //x = x cordiante int y; //y = y cordiante..
문제 문자열을 읽고 문자의 빈도를 계산하는 프로그램을 작성하시오. 예를 들어, ALL이 총 문자 수이고 N가 문자 'a'의 수이면 문자 'a'의 빈도는 N / ALL 으로 계산할 수 있다. 입력 문자열은 대소 문자를 구분하지 않는다. 코드 #include #include using namespace std; int main(){ char buf[50] = { 0, };//문자열 int count[26] = { 0 , };//A ~ Z cout = 'A' && *p
문제 주어진 범위 (-30 ≤ 𝑥 ≤ 30, 𝑥는 정수)에서 2차 함수의 최대 값과 최소값을 찾는 프로그램을 작성하시오. 2 차 함수의 계수 a, b, c는 사용자로부터 입력된다. 이때 a는 0이 아니다. 코드 #include using namespace std; double Max(double a, double b, double c){//최대값 double y; //y=f(x) double max = c;//max를 c로 초기화(c는 y절편) for (int x = -30; x
문제 네 가지 기능(배열의 정보 추가, 삭제, 검색 및 정렬)이있는 프로그램을 작성하시오. 배열은 크기 2 * 6 (행 * 열) 정수 유형의 2 차원 배열이다. 첫 번째 열에는 학생 ID가 포함되고 두 번째 행에는 해당 수학 점수가 포함된다. 프로그램이 시작되면 배열이 비어 있다. 사용자의 명령에 따라 반복적으로 수행되는 기능으로 'End'를 입력하면 프로그램이 종료된다. 네 가지 기능 각각에 대한 기능을 만드시오. Append(추가) : 사용자가 입력한 학생 ID와 수학 점수 쌍을 배열 끝에 추가한다. 추가하고 나서 배열을 2차원 모양으로 인쇄한다. Delete(삭제) : 사용자가 입력한 학생 ID와 일치하는 학생ID와 수학 점수 쌍을 삭제한다. 삭제 한후 배열을 2차원 모양으로 인쇄한다. Search..
문제 교통 카드 잔액에 관한 프로그램을 작성하시오. 교통 카드의 초기 잔액은 20000원이다. 운임은 고정 요금이 아닌 거리 규칙에 따라 측정 및 공제된다. 기본 요금은 40km에 720원, 추가 요금은 41km부터 8km당 80원이다. 프로그램은 각 이동 거리를 입력하여 카드의 최종 잔액을 출력한다. 최소 이동 거리는 4km, 최대 이동 거리는 178km이다. 입력 값이 위에서 언급 한 범위를 벗어나면 현재 잔액을 인쇄하고 프로그램을 종료한다. 더 이상 공제되지 않으면 이동할 수 없으므로 현재 잔액을 인쇄하고 프로그램을 종료하시오. 그리고 ‘-1’을 입력하면 프로그램을 종료하시오. 코드 #include using namespace std; int main(){ int ib = 20000;//초기 잔액 ..
문제 도형을 별표(=asterisk)와 다이아몬드로 그리는 프로그램을 작성하시오. 프로그램은 도형의 크기(N)를 입력으로 사용한다. N은 5에서 29사이의 홀수이며, 올바른 입력을 한다면 별표와 다이아몬드를 그릴 문자를 각각 입력해 출력하시오. 코드 #include using namespace std; void Ast(int ast, char c)//asterisk function { int k = (ast - 1) / 2; for (int i = 0; i < k; i++) { for (int j = 0; j < i; j++) cout
Git에서 README.md파일을 작성할 때, 사용하는 문법은 Markdown 문법이다. cf) Markdown이란? Markdown(마크다운)은 일반 텍스트 문서의 양식을 편집하는 문법이다. README 파일이나 온라인 문서, 혹은 일반 텍스트 편집기로 문서 양식을 편집할 때 쓰인다. Markdown을 이용해 작성된 문서는 쉽게 HTML 등 다른 문서형태로 변환이 가능하다. 제목 제목을 정할 때는 '#'을 이용해 강조한다. 무조건 '#'과 제목사이에 공백을 한칸 넣어야 완벽하게 변환이 된다. 최대 6개까지 지원한다. # 가장 큰 크기의 제목 ## 2번째로 큰 제목 ### 3번째로 큰 제목 #### 4번째로 큰 제목 ##### 5번째로 큰 제목 ###### 6번째로 큰 제목 문단 문장 사이에 하나 이상의..
GitHub란 GitHub는 소프트웨어 개발 프로젝트를 위한 소스코드 관리 서비스이다. 소스코드를 열람하고 간단한 버그 관리, SNS 기능까지 갖추고 있다. GitHub를 사용하여 버전 관리를 실시하고 있는 기업도 많다. GitHub 관련 지식 커밋(commit)과 푸시(push) 커밋 : 파일을 추가하거나 변경 내용을 저장소에 저장하는 작업 푸시 : 파일을 추가하거나 변경 내용을 원격 저장소에 업로드하는 작업 로컬 저장소(Local Repository)와 원격 저장소(Remote Repository) 저장소는 파일이나 디렉토리를 저장하는 장소이다. 변경 이력을 관리하고자 하는 디렉토리 등을 저장소의 관리하에 두는 것으로, 그 디렉토리에 있는 파일 등의 변경 내역을 기록할 수 있다. 로컬 저장소 : 현재..
배열이나 벡터 같은 연속된 자료 구조에서는 데이터 중간에 자료를 추가하거나 삭제하는 작업이 매우 비효율적이다. 그래서 연결 리스트와 같은 형태의 자료 구조를 사용한다. 기본적인 연결 리스트를 구성하려면 포인터를 하나 가지고 있어야 하고, new와 delete 연산자를 이용해 메모리를 할당하고 해제할 수 있어야 한다. c++에서는 배열에 대한 래퍼 클래스 std::array를 제공하듯이 연결리스트에 대한 래퍼 클래스인 std::forward_list 클래스를 제공한다. std::forward_list std::forward_list는 기본적인 연결 리스트의 성능을 유지하면서 추가적인 기능을 제공한다. 성능 유지를 위해 std::forward_list는 전체 리스트의 크기를 반환하거나 또는 첫 번째 원소를 ..
html 웹페이지의 시작과 끝 구성 : ... cf) 문서유형을 지정해서 웹브라우저가 페이지를 어떻게 해석해야 하는지 알려줌 ex) : 이 페이지는 html로 해석해야 함! head(머리말) 웹페이지의 정보, 문서에서 사용할 외부 파일들을 링크할 때 사용 구성 : body(본문) 브라우저에 실제 표시되는 내용 구성 : ... meta(정보에 대한 정보를 알려줌) 문자 인코딩 및 문서 키워드, 요약 정보 구성 : ex) : 웹페이지의 문자 인코딩 방식을 utf-8로 지정 title(문서 제목) 안의 내용이 웹브라우저의 제목 표시줄에 표시 구성 : ... p(단락) 를 사용하면 내용 앞 뒤로 빈줄이 생기면서 단락이 생김 구성 : ... h1~h6(제목) 이 글자 크기가 제일 크며, 로 갈수록 글자 크기가 작..