C++ 3일차
//class로 계산기를 만들기
#include <iostream.h>
class Cal
{
private:
int add_sum; //더하기
int sub_sum; //빼기
int mul_sum; //곱하기
int divi_sum; //나누기
int result; //연산결과
public:
void init()
{
add_sum=0;
sub_sum=0;
mul_sum=0;
divi_sum=0;
}
void add(int a,int b)
{
result=a+b;
cout<<a<<"+"<<b<<"="<<result<<endl;
add_sum++;
}
void sub(int a,int b)
{
result=a-b;
cout<<a<<"-"<<b<<"="<<result<<endl;
sub_sum++;
}
void mul(int a,int b)
{
result=a*b;
cout<<a<<"*"<<b<<"="<<result<<endl;
mul_sum++;
}
void divi(int a,int b)
{
result=a/b;
cout<<a<<"/"<<b<<"="<<result<<endl;
divi_sum++;
}
void exit()
{
cout<<"총 덧셈 연산은 "<<add_sum<<"번 했습니다.\n";
cout<<"총 뺄셈 연산은 "<<sub_sum<<"번 했습니다.\n";
cout<<"총 곱셈 연산은 "<<mul_sum<<"번 했습니다.\n";
cout<<"총 나눗셈 연산은 "<<divi_sum<<"번 했습니다.\n";
cout<<"종료합니다.\n";
}
};
void main()
{
int num1, num2;
Cal cal;
cal.init();
for(;;)
{
cout<<"어떤 연산을 할 것인지 선택하세요.\n";
cout<<"1:+, 2:-, 3:*, 4:/, 5:exit \n";
int cho;
cin>>cho;
if(cho==1)
{
cout<<"두개의 숫자를 입력하세요.\n";
cin>>num1>>num2;
cal.add(num1,num2);
}
else if(cho==2)
{
cout<<"두개의 숫자를 입력하세요.\n";
cin>>num1>>num2;
cal.sub(num1,num2);
}
else if(cho==3)
{
cout<<"두개의 숫자를 입력하세요.\n";
cin>>num1>>num2;
cal.mul(num1,num2);
}
else if(cho==4)
{
cout<<"두개의 숫자를 입력하세요.\n";
cin>>num1>>num2;
cal.divi(num1,num2);
}
else if(cho==5)
{
cal.exit();
break;
}
else
{
cout<<"잘못입력하셨습니다.\n";
}
}
}
*/
//생성자 소멸자
/*
#include <iostream.h>
class A
{
int a;
public:
A(int a)
{
a=a;
cout<<"생성자 호출"<<a<<endl;
}
~A()
{
cout<<"소멸자 호출"<<a<<endl;
}
};
void main()
{
{
A a(1);
{
A b(2);
{
A c(3);
}
}
}
}
*/
/*
#include <iostream.h>
class Date
{
private:
int year;
int month;
int day;
int sum;
public:
Date()
{
}
int result(int year[2],int month[2],int day[2])
{
year=year[1]-year[0];
month=month[1]-month[0];
day=day[1]-day[0];
sum=year*365+month*30+day;
return sum;
}
};
void main()
{
Date date;
int year[2], month[2], day[2];
cout<<"만난날을 몇년, 몇월, 몇일 순서대로 입력하세요.\n";
cin>>year[0]>>month[0]>>day[0];
cout<<"오늘 날짜를 입력하세요.\n";
cin>>year[1]>>month[1]>>day[1];
cout<<"총 만난날은 "<<date.result(int year[2],int month[2],int day[2])<<"일입니다.\n";
}
*/
/*
//ID와 비밀번호 클래스로, 동적할당
//사용자는
#include <iostream.h>
class user
{
private:
char *ID;
char *p;
public:
void (char *c)
{
int
}
};
//몇명인지 물어본다.
void main()
{
int num;
cout<<"몇명을 입력합니까?";
cin>>num;
user *a=new int[num];
for(int i=0;i<num;i++)
{
cout<<"ID를 입력하세요.";
cin>>;
cout<<;
cin>>;
}
//동적할당으로 입력해서 클래스에서 동적할당
//입출력
}
*/
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
class U
{
private:
char *i;
char *p;
void input(char *ID,char *pass)
{
int a=strlen(ID);
int b=strlen(pass);
i=new char[a+1];
p=new char[b+1];
strcpy(i,ID);
}
void output(char *ID,char *pass)
{
}
~U()
{
delete[] i;
delete[] p;
}
};
void main()
{
int num;
U *p=new U[num];
char ID[128];
char pass[128];
for(int i=0;i<num;i++)
{
cin>>ID;
cin>>pass;
p[i].input(ID,pass);
}
for(int j=0;j<num;j++)
{
p[j].output(ID,pass);
}
delete[] p;
}