首页
社区
课程
招聘
[旧帖] [原创]c++ 程序代码! 0.00雪花
发表于: 2009-4-23 11:55 1628
申请推荐此帖 编辑 删除

[旧帖] [原创]c++ 程序代码! 0.00雪花

2009-4-23 11:55
1628
大家好,我是yaoxiang,,小弟看到科锐培训软件逆向工程师;可惜人不在一个地方,就按照他们的课程表学习下!!最近想要进看雪学院!看雪须要一篇精华文章才可进!可惜自己没什么本事!只能写个小程序!希望能通过。。。
请大家别见笑!有机会的话指点一下,谢谢大家!

#include<math.h>
#include<stdlib.h>
#include<iostream.h>
class Calculator
{
    double a,b;
public:
    Calculator(){a=0;b=0;}; //could be omitted
    void newa()
    {
        double num;
        cout<<"Input the number:";
        cin>>num;
        a=num;
    }
    void newab()
    {
        double num1,num2;
        cout<<"Input the numbers.the first number:";
        cin>>num1;
        cout<<"Input the senond number:";        
        cin>>num2;
        a=num1;
        b=num2;
    }
    double Geta(){return a;}
    double Getb(){return b;}
    double Add(Calculator &A);
    double Sub(Calculator *A);
    double Mul(Calculator &A);
    double Div(Calculator &A);
    double Sin(Calculator &A);
    double Cos(Calculator &A);
    double Tan(Calculator &A);
    double Exp(Calculator &A);
    double Fabs(Calculator &A);
    double LogE(Calculator &A);
    double Log10(Calculator &A);
    double Pow(double x,double y);
    double Sqrt(double x);
};
double Calculator::Add(Calculator &A)
{
    return A.a+A.b;
}
double Calculator::Sub(Calculator *A)
{
    return A->a-A->b;
}
double Calculator::Mul(Calculator &A)
{
    return A.a*A.b;
}
double Calculator::Div(Calculator &A)
{
    if(A.b==0)
    {cout<<"Error! The program will be terminated!"<<endl;exit(0);}
    return A.a/A.b;
}
double Calculator::Sin(Calculator &A)
{
    return sin(A.a);
}
double Calculator::Cos(Calculator &A)
{
    return cos(A.a);
}
double Calculator::Tan(Calculator &A)
{
    return tan(A.a);
}
double Calculator::Exp(Calculator &A)
{
    return exp(A.a);
}
double Calculator::Fabs(Calculator &A)
{
    return fabs(A.a);
}
double Calculator::LogE(Calculator &A)
{
    return log(A.a);
}
double Calculator::Log10(Calculator &A)
{
    return log10(A.a);
}
double Calculator::Pow(double x,double y)
{
    return pow(x,y);
}
double Calculator::Sqrt(double x)
{
    if(x<0)
    {cout<<"Error! The program will be terminated!"<<endl;exit(0);}
    return sqrt(x);
}

void main()
{
    int sel;
    Calculator cal;
    cout<<"Welcome to use the calculator!please select."<<endl;
    cout<<"1:\'+\'    2:\'-\'     3:\'*\'      4:\'/\'     5:\'sin\'   6:\'cos\'  7:\'tan\'"<<endl;
    cout<<"8:\'exp\'  9:\'fabs\'  10:\'logE\'  11:\'log10\' 12:\'pow\'  13:\'sqrt\'"<<endl;
    do
    {
    cout<<"Please select:(0--exit)";
    cin>>sel;
    switch (sel)
    {
    case 0: break;
    case 1: cal.newab();
            cout<<"The result is:"<<cal.Add(cal)<<endl;
            break;
    case 2: cal.newab();
            cout<<"The result is:"<<cal.Sub(&cal)<<endl;
            break;
    case 3: cal.newab();
            cout<<"The result is:"<<cal.Mul(cal)<<endl;
            break;
    case 4: cal.newab();
            cout<<"The result is:"<<cal.Div(cal)<<endl;
            break;
    case 5: cal.newa();
            cout<<"The result is:"<<cal.Sin(cal)<<endl;
            break;
    case 6: cal.newa();
            cout<<"The result is:"<<cal.Cos(cal)<<endl;
            break;
    case 7: cal.newa();
            cout<<"The result is:"<<cal.Tan(cal)<<endl;
            break;
    case 8: cal.newa();
            cout<<"The result is:"<<cal.Exp(cal)<<endl;
            break;
    case 9: cal.newa();
            cout<<"The result is:"<<cal.Fabs(cal)<<endl;
            break;
    case 10: cal.newa();
            cout<<"The result is:"<<cal.LogE(cal)<<endl;
            break;
    case 11: cal.newa();
            cout<<"The result is:"<<cal.Log10(cal)<<endl;
            break;
    case 12: cal.newab();
            cout<<"The result is:"<<cal.Pow(cal.Geta(),cal.Getb())<<endl;
            break;
    case 13: cal.newa();
            cout<<"The result is:"<<cal.Sqrt(cal.Geta())<<endl;
            break;
    default: cout<<"Your selection is ERROR! Select again!"<<endl;
    }
    }while(sel!=0);
}
本人水平有限!有错误请指正!谢谢
live_pediy@yahoo.com.cn

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
呵呵,调理蛮清晰的,希望你能通过了哦,大家以后可以一起共同探讨和学习哦!
2012-3-16 10:36
0
雪    币: 182
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
win+r输入CALC,没必要把这么优秀的语言当成是计算器用
2012-3-20 22:34
0
雪    币: 25
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
貌似比较简单了,没有涉及到算法,如果能通过就很好了。
2012-3-21 10:44
0
雪    币: 7971
活跃值: (3650)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
这代码写得?感觉写得好? 不是我吐槽啊,你买本<<大话设计模式>>看看 他教的 计算器的 写法呀,明显差异哦,那里面也提到了你这种写法,也分析了这种写法的坏处.
2012-3-21 10:52
0
游客
登录 | 注册 方可回帖
返回
//