검색결과 리스트
♪C++에 해당되는 글 18건
- 2017.10.09 성우 1장 OOP 단계별 프로젝트
- 2017.10.08 'iostream.h': No such file or directory
- 2011.01.21 사소한 버그 .exe을 쓰기용으로 열 수 없습니다.
- 2010.11.14 c++ 연습 8-1
- 2010.11.02 OOP프로젝트 5단계
- 2010.11.01 C++ 열혈강의 7-2 연습문제 3
- 2010.10.31 열혈강의 c++ 연습문제 7-1 1
- 2010.10.31 C++ BasicInheri1 1
글
성우 1장 OOP 단계별 프로젝트
/*
* 윤성우 1장 OOP 단계별 프로젝트
*/
#include <iostream>
#include <cstring>
using namespace std;
const int NAME_LEN=20;
void ShowMenu(void); // 메뉴출력
void MakeAccount(void); // 계좌개설을 위한 함수
void DepositMoney(void); // 입 금
void WithdrawMoney(void); // 출 금
void ShowAllAccInfo(void); // 잔액조회
enum {MAKE=1, DEPOSIT, WITHDRAW, INQUIRE, EXIT};
typedef struct
{
int accID; // 계좌번호
int balance; // 잔 액
char cusName[NAME_LEN]; // 고객이름
} Account;
Account accArr[100]; // Account 저장을 위한 배열
int accNum=0; // 저장된 Account 수
int main(void)
{
int choice;
while(1)
{
ShowMenu();
cout<<"선택: ";
cin>>choice;
cout<<endl;
switch(choice)
{
case MAKE:
MakeAccount();
break;
case DEPOSIT:
DepositMoney();
break;
case WITHDRAW:
WithdrawMoney();
break;
case INQUIRE:
ShowAllAccInfo();
break;
case EXIT:
return 0;
default:
cout<<"Illegal selection.."<<endl;
}
}
return 0;
}
void ShowMenu(void)
{
cout<<"-----Menu------"<<endl;
cout<<"1. 계좌개설"<<endl;
cout<<"2. 입 금"<<endl;
cout<<"3. 출 금"<<endl;
cout<<"4. 계좌정보 전체 출력"<<endl;
cout<<"5. 프로그램 종료"<<endl;
}
void MakeAccount(void)
{
int id;
char name[NAME_LEN];
int balance;
cout<<"[계좌개설]"<<endl;
cout<<"계좌ID: "; cin>>id;
cout<<"이 름: "; cin>>name;
cout<<"입금액: "; cin>>balance;
cout<<endl;
accArr[accNum].accID=id;
accArr[accNum].balance=balance;
strcpy(accArr[accNum].cusName, name);
accNum++;
}
void DepositMoney(void)
{
int money;
int id;
cout<<"[입 금]"<<endl;
cout<<"계좌ID: "; cin>>id;
cout<<"입금액: "; cin>>money;
for(int i=0; i<accNum; i++)
{
if(accArr[i].accID==id)
{
accArr[i].balance+=money;
cout<<"입금완료"<<endl<<endl;
return;
}
}
cout<<"유효하지 않은 ID 입니다."<<endl<<endl;
}
void WithdrawMoney(void)
{
int money;
int id;
cout<<"[출 금]"<<endl;
cout<<"계좌ID: "; cin>>id;
cout<<"출금액: "; cin>>money;
for(int i=0; i<accNum; i++)
{
if(accArr[i].accID==id)
{
if(accArr[i].balance<money)
{
cout<<"잔액부족"<<endl<<endl;
return;
}
accArr[i].balance-=money;
cout<<"출금완료"<<endl<<endl;
return;
}
}
cout<<"유효하지 않은 ID 입니다."<<endl<<endl;
}
void ShowAllAccInfo(void)
{
for(int i=0; i<accNum; i++)
{
cout<<"계좌ID: "<<accArr[i].accID<<endl;
cout<<"이 름: "<<accArr[i].cusName<<endl;
cout<<"잔 액: "<<accArr[i].balance<<endl<<endl;
}
}
'♪C++ > 소스' 카테고리의 다른 글
c++ stack (0) | 2018.09.19 |
---|---|
c++ oop프로젝트 8장 (0) | 2018.09.18 |
열혈강의 3장 연습문제 3-1 3-2 (0) | 2017.11.10 |
설정
트랙백
댓글
글
'iostream.h': No such file or directory
#include <iostream> // **iostream.h <- 구버전
using namespace std; // std라는 이름공간에 선언되어 있는 모든 표준 C++라이브러리를 사용 (cin, cout, ... )
void main(void)
{
cout << "Hello World!\n";
return;
}
'♪C++ > 버그' 카테고리의 다른 글
사소한 버그 .exe을 쓰기용으로 열 수 없습니다. (0) | 2011.01.21 |
---|
설정
트랙백
댓글
글
사소한 버그 .exe을 쓰기용으로 열 수 없습니다.
이유는 현재 실행중인 cmd창이 있기 때문이다
'♪C++ > 버그' 카테고리의 다른 글
'iostream.h': No such file or directory (0) | 2017.10.08 |
---|
설정
트랙백
댓글
글
c++ 연습 8-1
//Circle 클레스를 정의해보자 Circle 클래스는 원의 중심과 반지름 정보를 지니고 있어야한다.
//또한 원에 대한 정보(원의 중심 위치, 반지름, 넓이)를 출력하는 기능도 지니고 있어야한다.
//단 원의 중심을 나타내는 Point클래스를 정의하고 Circle 클레스가 이를 상속하는 형태로
//구현 해야한다. 다음에 제시하고 있는 main 함수와 예외 실행 결과를 참조해서 정의하기 바란다.
#include<iostream>
using std::cout;
using std::endl;
class Point
{
public:
int x,y;
void point_showdata()
{
cout<<"중심 좌표 : ["<<x<<","<<y<<"]"<<endl;
}
};
class Circle : public Point
{
double Radius;
public:
Circle(int _x,int _y,double _Radius)
{
x=_x;
y=_y;
Radius=_Radius;
}
void showdata()
{
point_showdata();
cout<<"반지름 : "<<Radius<<endl;
cout<<"원의 넓이 : "<<3.14*(Radius*Radius)<<endl;
}
};
int main()
{
//원 x,y는 3,5
//반지름 2.2
Circle cir(3,5,2.2);
cir.showdata();
}
정답보니 너무 허접하게 만들엇다 ㅡㅡ....
'♪C++' 카테고리의 다른 글
C++ 생성자 (0) | 2018.09.03 |
---|---|
4996 에러 (0) | 2018.08.14 |
OOP프로젝트 5단계 (0) | 2010.11.02 |
C++ 열혈강의 7-2 연습문제 (3) | 2010.11.01 |
열혈강의 c++ 연습문제 7-1 (1) | 2010.10.31 |
설정
트랙백
댓글
글
OOP프로젝트 5단계
답좀 본게 아쉽지만 생각보다 별문제 없이 쉽게 끝낸거 같다....
#include<iostream>
using std::cout;
using std::endl;
using std::cin;
class account
{
int id;
int money;
char *name;
public:
account()
{};
account(const account & a) //깊은 복사생성자
{
this->id=a.id;
this->money=a.money;
this->name=new char[strlen(a.name)+1];
strcpy(this->name,a.name);
}
account(int id,int money,char *name)
{
this->id=id;
this->money=money;
this->name=new char[strlen(name)+1];
strcpy(this->name,name);
}
~account()
{
delete []name;
}
void showdata(int i) const;
void target(int _id); //입금
void target2(int _id); //출금
};
void account::target2(int _id)
{
int _money;
if(id==_id)
{
cout<<"출금하실 금액 입력 : ";
cin>>_money;
if(money<_money)
cout<<"잔액이 부족합니다"<<endl;
else
money=money-_money;
}
}
void account::target(int _id)
{
int _money;
if(id==_id)
{
cout<<"입금하실 금액 입력 : ";
cin>>_money;
money=money+_money;
}
}
void account::showdata(int i) const
{
cout<<"------------------------"<<endl;
cout<<i<<"번째 고객"<<endl;
cout<<"ID : "<<id<<endl;
cout<<"금액 : "<<money<<endl;
cout<<"이름 : "<<name<<endl;
cout<<"------------------------"<<endl;
}
class accmanager : public account
{
int humen; //1명부터 들어감
account *arr[100];
public:
accmanager()
{
humen=0;
}
void account_inquiry(); //계좌 조회
void bank_account(); //계좌 계설
void deposit(); //입금 디포지트
void windrawal(); //출금
};
void accmanager::account_inquiry() //계좌 조회
{
for(int i=1;i<=humen;i++)
{
if(arr[i]==NULL)
{
cout<<"계좌가 더 이상 없습니다"<<endl;
break;
}
arr[i]->showdata(i);
}
}
void accmanager::deposit() //입금 디포지트
{
int ID;
int money;
cout<<"입금시킬 계좌번호를 입력해주세요"<<endl;
cin>>ID;
for(int i=1;i<=humen;i++)
{
arr[i]->target(ID);
}
}
void accmanager::windrawal()
{
int ID;
int money;
cout<<"출금시킬 계좌번호를 입력해 주세요"<<endl;
cin>>ID;
for(int i=1;i<=humen;i++)
{
arr[i]->target2(ID);
}
}
int main()
{
accmanager person;
int humen=1;
while(1)
{
int choice;
cout<<"1.계좌 계설"<<endl;
cout<<"2.입 금"<<endl;
cout<<"3.출 금"<<endl;
cout<<"4.전체 고객 잔액 조회"<<endl;
cout<<"5.종료"<<endl;
cout<<"1~5사이의 숫자를 입력해주세요"<<endl;
cin>>choice;
switch(choice)
{
case 1 :
// cout<<person.humen<<"번째 고객"<<endl;
cout<<humen<<"번째 고객"<<endl;
cout<<"계좌개설을 선택하셨습니다"<<endl;
person.bank_account();
humen++;
break;
case 2 :
cout<<"입금을 선택하셨습니다"<<endl;
person.deposit();
break;
case 3 :
cout<<"출금을 선택하셨습니다"<<endl;
person.windrawal();
break;
case 4 :
cout<<"전체 고객 잔액 조회 선택하셨습니다."<<endl;
person.account_inquiry();
break;
case 5 :
cout<<"프로그램이 종료됩니다"<<endl;
break;
default :
cout<<"잘못 입력하셧습니다. 1~5사이의 숫자를 입력해주세요"<<endl;
break;
}
}
}
void accmanager::bank_account() ///계좌 계설
{
int id;
int money;
char name[20];
cout<<"계좌번호 :";
cin>>id;
cout<<"입금액 : ";
cin>>money;
cout<<"이름 : ";
cin>>name;
humen++;
arr[humen]=new account(id,money,name);
}
'♪C++' 카테고리의 다른 글
4996 에러 (0) | 2018.08.14 |
---|---|
c++ 연습 8-1 (0) | 2010.11.14 |
C++ 열혈강의 7-2 연습문제 (3) | 2010.11.01 |
열혈강의 c++ 연습문제 7-1 (1) | 2010.10.31 |
C++ BasicInheri1 (1) | 2010.10.31 |
설정
트랙백
댓글
글
C++ 열혈강의 7-2 연습문제
#include<iostream>
using std::endl;
using std::cout;
class person
{
protected:
int age;
char *name;
public:
int getage() const
{
return age;
}
const char * getname() const{
return name;
}
person(int _age=1,char * _name="noname")
{
age=_age;
name=new char [strlen(_name)+1];
strcpy(name,_name);
}
~person()
{
delete []name;
}
};
class student: public person
{
char *major;
public:
student(char* _major,int _age,char* _name) : person(_age,_name) //이니셜라이져
{
// age=_age;
// strcpy(name,_name);
major=new char [strlen(_major)+1];
strcpy(major,_major);
}
const char* getmajor() const{
return major;
}
~student()
{
delete []major;
}
void showdata() const{
cout<<"이름 : "<<getname()<<endl;
cout<<"나이 : "<<getage()<<endl;
cout<<"전공 : "<<getmajor()<<endl;
}
};
int main()
{
student jun("컴퓨터공학과",20,"김준현");
jun.showdata();
return 0;
}
'♪C++' 카테고리의 다른 글
4996 에러 (0) | 2018.08.14 |
---|---|
c++ 연습 8-1 (0) | 2010.11.14 |
OOP프로젝트 5단계 (0) | 2010.11.02 |
열혈강의 c++ 연습문제 7-1 (1) | 2010.10.31 |
C++ BasicInheri1 (1) | 2010.10.31 |
설정
트랙백
댓글
글
열혈강의 c++ 연습문제 7-1
#include<iostream>
using std::endl;
using std::cout;
using std::cin;
class account
{
private:
char acc_num[10];//계좌번호
int balance; //계좌 잔액
public :
account(char* num="1234",int bal=1)
{
strcpy(acc_num,num);
balance=bal;
}
const char* money() const
{
return acc_num;
}
const int bal() const
{
return balance;
}
};
class kbaccount : public account
{
private:
int transfer;
public:
kbaccount(char* acc_num,int balance,int _transfer) : account(acc_num,balance)
{
transfer=_transfer;
}
const int tran() const
{
return transfer;
}
void showdata() const
{
cout<<"계좌 번호 : "<<money()<<endl;
cout<<"계좌 잔액 : "<<bal()<<"원"<<endl;
cout<<"이체 한도 : "<<tran()<<"원"<<endl;
}
};
int main()
{
//계좌 번호 : 1234-5678
//초기 입금액: 5000원
// 이체 한도 : 100000원
kbaccount acc("1234-5678",5000,100000);
acc.showdata();
return 0;
}
'♪C++' 카테고리의 다른 글
4996 에러 (0) | 2018.08.14 |
---|---|
c++ 연습 8-1 (0) | 2010.11.14 |
OOP프로젝트 5단계 (0) | 2010.11.02 |
C++ 열혈강의 7-2 연습문제 (3) | 2010.11.01 |
C++ BasicInheri1 (1) | 2010.10.31 |
설정
트랙백
댓글
글
C++ BasicInheri1
#include<iostream>
using std::endl;
using std::cout;
class person
{
int age;
char name[20];
char jangong[20];
public:
int getage() const
{
return age;
}
const char * getname() const{
return name;
}
person(int _age=1,char * _name="noname")
{
age=_age;
strcpy(name,_name);
}
};
class student: public person
{
char major[20];
public:
student(char* _major,int _age,char _jangong)
{
age=_age;
strcpy(jangong,_jangong);
strcpy(major,_major);
}
const char* getmajor() const{
return major;
}
void showdata() const{
cout<<"이름 : "<<getname()<<endl;
cout<<"나이 : "<<getage()<<endl;
cout<<"전공 : "<<getmajor()<<endl;
}
};
int main()
{
student jun("김준현",20,"컴퓨터공학과");
jun.showdata();
return 0;
}
흠..... 이니셜라이저 써야하는데 답답하넹...
#include<iostream>
using std::endl;
using std::cout;
class person
{
int age;
char name[20];
public:
int getage() const
{
return age;
}
const char * getname() const{
return name;
}
person(int _age=1,char * _name="noname")
{
age=_age;
strcpy(name,_name);
}
};
class student: public person
{
char major[20];
public:
student(char* _major,int _age,char* _name) : person(_age,_name) //이니셜라이져
{
// age=_age;
// strcpy(name,_name);
strcpy(major,_major);
}
const char* getmajor() const{
return major;
}
void showdata() const{
cout<<"이름 : "<<getname()<<endl;
cout<<"나이 : "<<getage()<<endl;
cout<<"전공 : "<<getmajor()<<endl;
}
};
int main()
{
student jun("컴퓨터공학과",20,"김준현");
jun.showdata();
return 0;
}
'♪C++' 카테고리의 다른 글
4996 에러 (0) | 2018.08.14 |
---|---|
c++ 연습 8-1 (0) | 2010.11.14 |
OOP프로젝트 5단계 (0) | 2010.11.02 |
C++ 열혈강의 7-2 연습문제 (3) | 2010.11.01 |
열혈강의 c++ 연습문제 7-1 (1) | 2010.10.31 |