일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 소스 코드
- 클래스 다이어그램
- 독립기념관
- 원격 제어 프로그램
- 언제나 휴일
- 충남 천안
- 산책하기 좋은 곳
- 소켓 통신
- Windows Forms
- 네트워크 프로그래밍
- 동영상
- 언제나휴일
- 알고리즘
- 안드로이드 앱 개발
- C++
- 실습으로 다지는 c#
- 유튜브 동영상 강의
- 프로젝트
- c언어
- c#
- 캡슐화
- 표준 라이브러리 함수
- 무료 동영상 강의
- 실습
- 표준 입출력
- 추천
- 졸업 작품 소재
- 파이썬
- 강의
- 동영상 강의
- Today
- Total
목록C & C++/C++ 예제 및 소스 (11)
프로그래밍 언어 및 기술 [언제나휴일]
[C언어 소스] 연결리스트를 이용하여 구현한 큐안녕하세요. 언제나 휴일이예요.이번에는 연결리스트를 이용하여 구현한 큐의 소스 코드예요.큐는 자료를 한쪽으로 보관하고 다른쪽에서 꺼내는 FIFO(First In First Out) 방식의 자료구조입니다. 큐에 자료를 보관하는 연산을 PUT 혹은 ENQUEUE라 말하고 꺼내는 연산을 GET 혹은 DEQUEUE라고 말합니다. 그리고 보관할 위치 정보를 rear, 꺼낼 위치 정보를 front라고 말해요.연결리스트를 이용하여 구현한 큐에서는 보관할 때 rear 뒤에 보관하고 꺼낼 때 front에 있는 것을 꺼냅니다. 그리고 보관할 때 허용하는 메모리 범위 내에서 보관할 수 있어 꽉 찼는지 확인할 필요가 없습니다.알고리즘PUT 연산now = MakeNode(data)..
알고리즘부분 문자열 비교(str1:비교 대상 문자열1, str2: 비교 대상 문자열 2, n:비교할 문자 개수)….반복(n이 0보다 크면서 str이 가리키는 문자가 참이면서 str1과 str2가 가리키는 문자가 서로 같으면)……..str1과 str2를 다음 위치로 이동……..n을 1 감소….str1과 str2가 가리키는 문자의 차이 반환소스코드//부분 문자열 비교하는 함수 만들기#include int mystrlen(const char *str);//사전식 비교: 사전에 앞에 나오는 단어가 작고 뒤에 나오는 단어가 크다고 판별//차이가 없으면 0 반환int mystrncmp(const char *str1, const char *str2, size_t n);int main(void){ char src..
[C언어 소스] 문자열 길이를 계산하는 함수 만들기알고리즘문자열 길이 구하기(str:문자열 시작 위치)cnt:=0반복(str[cnt]가 참인 문자) cnt 1 증가cnt 반환 소스 코드//문자열 길이 구하는 함수 만들기//참고 에 strlen 함수가 있습니다.#include int mystrlen(const char *str);int main(void){ char name[100] = "Hello World"; printf("%s\n", name); printf("길이: %d\n", mystrlen(name)); return 0;}int mystrlen(const char *str){ int cnt; //str[cnt]가 거짓 문자(종료 문자, '\0')가 나올 때까..
Queue를 이용한 스케쥴러 시뮬레이션 [C++]안녕하세요. 언제나 휴일에 언휴예요.이번 실습은 Queue를 이용한 스케쥴러 시뮬레이션입니다.스케쥴러는 운영체제의 핵심 개체로 누가 CPU를 점유하여 사용할 것인지를 판단하는 역할을 수행합니다.여기에서는 대기 큐를 이용하는 라운드 로빈 방식의 스케쥴러를 코드로 표현해 볼게요.보다 자세한 사항은 자료구조와 알조리즘 C++ 3.5 큐를 이용한 스케쥴러 시뮬레이션을 참고하세요.EHProcess.H#include using namespace std;class EHProcess{ string pname; //프로그램 이름 const int tjob; //전체 작업량 const int cjob; //cpu 점유 시 수행가능 최대 작업량 int n..
파서 트리를 이용한 계산기 [C++] Part1 파서 트리를 이용한 계산기 [C++] Part2안녕하세요. 언제나 휴일에 언휴예요.이번에는 파서 트리를 이용한 계산기를 구현하는 실습이예요.23+8*9-7 과 같은 수식을 계산하면 8*9를 먼저 계산하고 23+(8*9)-7 순으로 계산합니다.이처럼 수식을 연산자 우선 순위에 맞게 계산하기 위해 여기에서는 파서 트리를 이용할 거예요.파서 트리를 이용한 계산기에 관한 이론적인 내용은 자료구조와 알고리즘 C++ 9.3 수식 파서 트리를 참고하세요.#include #include using namespace std;class Calculator{ string expr;public: Calculator(string expr) { ..
함수 개체, 회원 및 회원 컬렉션 구현[C++]안녕하세요. 언제나 휴일에 언휴예요.이번에는 함수 개체 실습이예요.함수 개체는 특정 형식 개체를 함수처럼 호출 가능한 개체를 말합니다.이를 위해 해당 형식에는 함수 호출 연산자를 중복 정의합니다.이 외에도 이번 실습에는 개체 출력자, 인덱스 연산자 중복 정의를 구현하는 부분도 있습니다.다음은 함수 호출 연산자를 중복 정의한 간단한 예제입니다.class FunObject{public: int operator()(int a, int b) { return a + b; }};int main(){ FunObject fobj; int re = fobj(3,4); cout 위 예에서 FunObject 클래스에는 함수 호출 연산..
개체 출력자 실습 – 회원 클래스 및 쉬프트 연산자 중복 정의 [C++]안녕하세요. 언제나 휴일에 언휴예요.이번 실습에서는 개체 출력자를 구현합니다.C++에서 출력을 위해 ostream 형식을 정의하고 있어요. cout이 대표적인 ostream 형식 개체죠.개체 출력자는 ostream 형식 개체를 이용하여 개체 정보를 출력할 수 있게 정의하는 코드 집합을 개체 출력자라 부릅니다.이번 실습에서는 회원 클래스를 정의하고 개체 출력자를 정의할 거예요.기본 형식처럼 회원 개체 정보를 ostream 형식 개체로 출력할 수 있게 구현하는 실습입니다./* https://ehpub.co.kr C++ 예제 - 언제나 휴일 개체 출력자 - 회원 클래스*/#include #include using namespace..
다형성 실습 – 오케스트라, 음악가, 피아니스트, 드러머 [C++]안녕하세요. 언제나 휴일에 언휴예요.이번에는 다형성 실습이예요.다형성은 하나의 이름으로 보여도 실제 형태는 다양할 수 있는 성질입니다.기반 형식 포인터 변수로 파생 형식 개체를 사용할 수 있는 특징을 형식의 다형성이라고 부릅니다.기반 형식의 가상 메서드를 파생 형식에서 재정의할 수 있습니다.이 때 기반 형식 포인터 변수로 해당 메서드를 호출하면 실제 개체 형식에 정의한 메서드가 동작합니다.이러한 특징을 메서드의 다형성이라고 부릅니다.이러한 다형성에 관한 실습을 오케스트라(음악가, 피아니스트, 드러머) 소재로 진행합니다./* https://ehpub.co.kr C++ 예제 - 언제나 휴일 다형성 실습*/#include using na..
상품과 할인 상품 – 상속 실습 [C++] 안녕하세요. 언제나 휴일에 언휴예요.이번에는 상속 실습을 해 볼 거예요.실습 소재는 상품과 할인 상품 클래스를 정의합니다.클래스 다이어그램에서 삼각형과 실선으로 표현하는 관계를 일반화 관계라고 불러요.일반화 관계는 기반 형식(Product)과 파생 형식(Discount Product) 사이의 관계입니다.일반화 관계에서 파생 형식은 기반 형식의 멤버를 상속받는 특징을 갖습니다./* https://ehpub.co.kr C++ 예제 - 언제나 휴일 상속 실습 - 상품과 할인 상품 클래스 정의하기*/#include #include using namespace std;class Product{ string name; int price;public: ..
회원 클래스 정의 – 정적 멤버 캡슐화 [C++]안녕하세요. 언제나 휴일에 언휴예요.이번 예제는 정적 멤버 캡슐화를 다룰 거예요.실습은 회원 클래스를 정의합니다.클래스 다이어그램에서 밑줄로 표시한 멤버가 정적 멤버입니다.가장 최근에 부여한 회원 번호(lastnum)과 현재까지 생성한 회원 수를 반환하는 메세드(GetMemberCount)를 캡슐화할 거예요.이 두 개의 멤버는 개체의 멤버가 아닌 형식의 멤버로 형식 이름으로 접근할 수 있어요./* https://ehpub.co.kr C++ 예제 - 언제나 휴일 회원 클래스 정의 - 정적 멤버 필드 캡슐화*/#include #include using namespace std;class Member{ static int last_num; co..
복소수 클래스 정의 – 캡슐화 실습 [C++]안녕하세요. 언제나 휴일에 언휴예요.이번 강의는 캡슐화 실습으로 복소수 클래스를 정의할 거예요. 실수부와 허수부를 멤버 필드로 갖고 있습니다. 그리고 실수부와 허수부의 값을 접근하는 접근자 메서드와 설정하는 설정자 메서드를 갖습니다. 마지막으로 복소수 개체 정보를 문자열로 반환하는 메서드를 멤버로 갖습니다. #include #include using namespace std;class Complex{ double image; double real;public: Complex(double real = 0, double image = 0) { SetReal(real); SetImage(image); } vo..