24小时热门版块排行榜    

CyRhmU.jpeg
查看: 717  |  回复: 13
【奖励】 本帖被评价4次,作者烂熊邓增加金币 3
当前主题已经存档。

烂熊邓

金虫 (小有名气)


[资源] 【分享】日期的加整数运算符的重载

下面是日期加整数的重载
分两个文件:一个头文件,一个源文件
//1.h
#include
using namespace std;
class Date
{int year,month,day;
public:
        Date(int a=0,int b=0,int c=0)
        {year=a;
        month=b;
        day=c;
        }

        void out();
Date operator +(int j);
};

void Date:ut()
{cout<<"the Date is :"< }


Date Date:perator +(int j)
{int m,i,n;

int d[12]={31,28,31,30,31,30,31,31,30,31,30,31};
cout<<"请输入要相加的天数m:"< cin>>m;
cout<<"要相加的天数是:"< n=day+m;
if(n<=d[month-1])
        day=day+m;
else
        for(i=0;i<=11;i++)
        {i=month-1;
        n=n-d;
        if(i<11)   month++;
        else
        {year++;
                month=1;}

        if(d[month-1]>n)
        {
                day=n;
                break;}
       
        else continue;
        i++;
        }
return ;
}

//1.cpp
#include"1.h"
void main()
{int y,m,d,n;
while(1)
        {cout<<"请输入年份,月份,号数,追加天数:";
        cin>>y>>m>>d>>n;
        Date d(y,m,d);
        Date D;
        cout<<"原始日期:";
        d.out();
        D=d+n;
        cout<<"追加天使之后的日期:";
        d.out();}


}

大家一起分享一下,可以的话还可以优化一下;
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunxiao

荣誉版主 (著名写手)


★★★★★ 五星级,优秀推荐

支持一个
2楼2009-07-09 08:22:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

★★★★★ 五星级,优秀推荐

sunxiao 来的比我早啊,哈哈
3楼2009-07-09 08:35:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)


★★★ 三星级,支持鼓励

貌似VB和C#本来就有Date,C++不熟
4楼2009-07-09 09:20:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

烂熊邓

金虫 (小有名气)


回复magic7004

{貌似VB和C#本来就有Date,C++不熟 },我就对那两种不熟悉了,你就给烂熊说下那两种的一些信息;
5楼2009-07-09 10:01:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hxz

木虫 (正式写手)



wangen994(金币+1,VIP+0):感谢参与讨论 7-9 20:41
关于历法的有个公式 北大初等数论有详细说明 lz找下就明白了
6楼2009-07-09 10:14:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

烂熊邓

金虫 (小有名气)


t o hxz

大哥,你说的是历法算法啊么?北大初等数论。
我对你说的这些都不知道啊?
我想问个题外话:你自己是不是自己看了很多书啊?
我怎么感觉自己知道的好少ha !!
7楼2009-07-09 10:17:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hxz

木虫 (正式写手)


我是数学专业的啊 不过那些具体的早忘了
8楼2009-07-09 10:31:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98



wangen994(金币+1,VIP+0):感谢参与讨论 7-9 20:41
编程到后来很多都要靠数学,所以刚开始就一味编程,不看其它基础知识的,以后发展很受限制。
我们一个同事,他女儿教育就是“将来发展是经济学,不过本科专业先选数学”。我觉得他看得很远啊。
9楼2009-07-09 15:11:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98


★★★ 三星级,支持鼓励

★ ★
wangen994(金币+2,VIP+0):感谢参与讨论 7-9 20:40
哈哈,才看到lz原来和我硕士一个专业。生物医学专业出国比较好出呢。
其实很多问题我们常规解法在实际中很少用,用的都是数学上比较优化的方法。比如说求素数,根本就不是书中间那种对2~n除,一般做法直接查表,很大的素数求法在数论中间有讲到。
感觉lz很热爱编程么,慢慢来,很快就会进步了。我支持一下!
btw:程序没考虑闰年?
10楼2009-07-09 15:19:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fwz

木虫 (正式写手)


,C++ 运算符重载。发这个做什么??
11楼2009-07-10 20:55:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98


估计是lz自己练手吧。鼓励为主。虽然运算符重载里出现了cin、cout...
12楼2009-07-10 23:42:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

烂熊邓

金虫 (小有名气)


ms98

wangen994(金币+0,VIP+0):欢迎常来啊,lz就楼主的简称 7-16 09:08
ms98:
你为什么叫我lz?
还有为什么 运算符重载里出现cin,cout为很惊奇?难道你们都不用这些吗?
还有大哥,你们学数 学的,到底是学那些哦?我们就是学了高等数学上下册,线性代数,概率与统计,复变函数,就是这几本,而且我还是到最后好像是越学越差了;
我觉得我要补起来,是不是哦,现在需要像大哥这样不嘲笑我的人的极大鼓励!
13楼2009-07-14 22:59:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98


★ ★
wangen994(金币+2,VIP+0):感谢参与讨论 7-16 09:08
晕,我刚回了邮件...
Date Date:perator +(int j)
这个参数j呢,就是你要求用户输入的m,所以根本没必要输入一个m,直接用j,而且运算符的重载要求和默认的操作一致。+号是不会产生输入输出的,所以只要返回一个结果就好了。当然你可以说加入输入输出编译器也不报错,但是这个和标准不符,自己写一下可以,拿出去用就不好了。
14楼2009-07-15 13:19:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 烂熊邓 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复(可上传附件)
信息提示
请填处理意见