项目三-????将输入时间各增加1小时,1分钟,1秒.

/*
 *Copyright(c)2014,烟台大学计算机学院
 *All rights reserved.
 *文件名称:test.cpp
 *作者:杨汉宁
 *完成日期:2015年 3月 18日
 *版本号:v1.0
 *问题描述:将原时间增加一小时,一分钟,一秒。
 *输入描述:输入小时:分钟:秒。
 *程序输出:变化后的时间
*/

#include <iostream>
using namespace std;
class Time
{
public:
    void set_time( );
    void show_time( );
    void add_a_sec(int n);              //增加1秒钟
    void add_a_minute(int n);           //增加1分钟
    void add_an_hour(int n);            //增加1小时
private:
    bool is_time(int, int, int);    //这个成员函数设置为私有的,是合适的,请品味
    int hour;
    int minute;
    int sec;
};
void Time::set_time( )
{
    char c1,c2;
    cout<<"请输入时间(格式hh:mm:ss)";
    while(1)
    {    cin>>hour>>c1>>minute>>c2>>sec;
        if(c1!=':'||c2!=':')
            cout<<"格式不正确,请重新输入"<<endl;
        else if (!is_time(hour,minute,sec))
            cout<<"时间非法,请重新输入"<<endl;
        else
            break;
    }
}
void Time::show_time( )
{
    if (hour >24)
        hour=hour-24;                 //避免早成25 26小时情况
    cout<<hour<<":"<<minute<<":"<<sec<<endl;
}
bool Time::is_time(int h,int m, int s)
{
    if (h<0 ||h>24 || m<0 ||m>60 || s<0 ||s>60)
        return false;
    return true;
}

void Time::add_a_sec(int n)
{
    sec=sec+n;
    if (sec>=60)
    {
        minute+=(sec/60);
        sec=sec%60;
    }
    if (minute>=60)
    {
        hour+=(minute/60);
        minute=minute%60;
    }

}

void Time::add_a_minute(int n)
{

    minute+=n;
     if (minute>=60)
    {
        hour+=(minute/60);
        minute=minute%60;
    }

}

void Time::add_an_hour(int n)
{
    hour+=n;
}

int main( )
{
    Time t1;
    t1.set_time( );
    t1.show_time( );
    t1.add_a_sec(1);
    t1.show_time();
    t1.add_a_minute(1);
    t1.show_time();
    t1.add_an_hour(1);
    t1.show_time();
    return 0;
}

时间: 2024-10-01 02:37:16

项目三-????将输入时间各增加1小时,1分钟,1秒.的相关文章

使用joda-time工具类 计算时间相差多少 天,小时,分钟,秒

下面程序使用了两种方法计算两个时间相差 天,小时,分钟,秒 1 package jodotest; 2 3 import java.text.ParseException; 4 import java.text.SimpleDateFormat; 5 import java.util.Date; 6 7 import org.joda.time.DateTime; 8 import org.joda.time.Days; 9 import org.joda.time.Hours; 10 impo

提示用户输入一个时间的秒数,比如500秒就输入500,然后输出对应的分钟和秒,比如500s就是8分钟20秒

#include <stdio.h> /* */ int main() { /* // 将c的值固定在10以内 int a = 96546546; int c = a % 10; */ // 1.提示用户输入时间 printf("请输入一个时间值(秒):\n"); // 2.接收用户输入的时间 int time; scanf("%d", &time); // 3.转换成对应的分钟和秒 int minute = time / 60; // 分钟 i

asp.net(C#)时间相减 得到天数、小时、分钟、秒差

asp.net(C#)时间相减 得到天数.小时.分钟.秒差 DateTime dtone = Convert.ToDateTime("2007-1-1 05:00:00"); DateTime dtwo = Convert.ToDateTime("2007-1-5 08:00:00"); TimeSpan span = dtone.Subtract(dtwo); //算法是dtone 减去 dtwo tss.Text = span.Days + "天&qu

C#-和时间有关的计算代码、时间相减 得到天数、小时、分钟、秒差

asp.net(C#)时间相减 得到天数.小时.分钟.秒差 asp.net(C#)时间相减 得到天数.小时.分钟.秒差 DateTime dtone = Convert.ToDateTime("2007-1-1 05:00:00");         DateTime dtwo = Convert.ToDateTime("2007-1-5 08:00:00");         TimeSpan span = dtone.Subtract(dtwo); //算法是d

计算两个时间的时间差(天、小时、分钟、秒数)

例子:计算某个时间距离当前时间相差的天数 1.获取当前时间 Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "H+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": thi

java计算两个时间相差(天、小时、分钟、秒)

public static Long dateDiff(String startTime, String endTime, String format, String str) { // 按照传入的格式生成一个simpledateformate对象 SimpleDateFormat sd = new SimpleDateFormat(format); long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数 long nh = 1000 * 60 * 60;// 一小时的毫

返回指定时间的年、月、日、小时、 分钟、 秒 毫秒

1.获取年 public static int getYear(Date date){ Calendar c = Calendar.getInstance(); c.setTime(date); return c.get(Calendar.YEAR); } 2.获取月 public static int getMonth(Date date){ Calendar c = Calendar.getInstance(); c.setTime(date); return c.get(Calendar.

第二周项目三——时间类

阅读.运行程序后,按要求扩充类的功能. #include <iostream> using namespace std; class Time { public: void set_time( ); void show_time( ); private: bool is_time(int, int, int); //这个成员函数设置为私有的,是合适的,请品味 int hour; int minute; int sec; }; void Time::set_time( ) { char c1,c

项目三. 基于图像压缩的视频监控系统

项目三. 基于图像压缩的视频监控系统 Sprint0-产品设计与规划 基于图像压缩的视频监控系统 1. 产品功能演示 在linux系统上运行程序,弹出登录界面,输入地址.端口信息,弹出视频监控界面,实时传出视频信息. 2. 功能模块分析 采集端: 图像采集子系统 图像编码子系统 传输子系统 主程序 监控端: 传输子系统 图像编码子系统 传输子系统 主程序 Sprint1-基于Epoll架构的采集端程序框架设计 第1课-Epoll机制精通 大纲: v  为什么用Epoll? 阻塞型IO与多路复用