[C++ 프로그래밍] 야구게임 프로그램
- 최초 등록일
- 2003.01.01
- 최종 저작일
- 2003.01
- 6페이지/ C언어
- 가격 1,000원
소개글
다들 잘 아시는 야구게임 프로그램 입니다.
상대방이 생각하고 있는 세자리 수를 맞추는 게임.
C++을 사용해서 작성했습니다.
조금만 변형하면 C언어로 바꾸는 것도 어렵지 않습니다.
목차
#include < iostream.h >
#include < stdlib.h > // rand()를 포함하는 라이브러리
#include < stdio.h >
#include < time.h > // time()을 포함하는 라이브러리
본문내용
class Baseball { // 기초 클래스
protected:
int bc(int a, int b); // 인자로 받은 두 수를 비교해서 ball count를 계산하는 함수
public:
virtual ~Baseball() {} // 소멸자
virtual int attack() = 0; // 순수 가상 함수. 이 클래스에서 객체를 만들지 않고 파생만 한다.
virtual int request(int n) = 0; // 순수 가상 함수. 이 클래스에서 객체를 만들지 않고 파생만 한다.
virtual void answer(int b) = 0; // 순수 가상 함수. 이 클래스에서 객체를 만들지 않고 파생만 한다.
virtual void clear() = 0; // 순수 가상 함수. 이 클래스에서 객체를 만들지 않고 파생만 한다.
virtual char *name() = 0; // 순수 가상 함수. 이 클래스에서 객체를 만들지 않고 파생만 한다.
};
int Baseball::bc(int a, int b) // 인자로 받은 두 수를 비교해서 ball count를 계산하는 함수
{
char as[4], bs[4];
int bc0 = 0;
sprintf(as, "%03d", a); // as[]에 a를 한자리씩 분리해서 출력함
sprintf(bs, "%03d", b); // bs[]에 b를 한자리씩 분리해서 출력함
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
if(as[i]==bs[j]) bc0 += (i==j)?10:1; // as[]와 bs[]를 비교해서 strike면 bc0에 +10을 하고 ball이면 bc0에 +1을 함
return bc0; // ball count를 리턴함
}
참고 자료
수업시간에 연세대학교 김재한 강사님과 함께 짠 프로그램을 제가 조금 수정한 것입니다.