【C++プログラム】【初心者向け】目覚まし時計
10824 ワード
この目覚まし時計はタイミングで時間になったことを注意することができます.windowsシステムのタスク計画システムを採用しています.
[以下は古いバージョンですが、更新は↓を参照してください]
コードは次のとおりです.
clockを補うexeのコード:
[新バージョン]
CLOCK_ALARM.CPP
clock.cpp
[以下は古いバージョンですが、更新は↓を参照してください]
コードは次のとおりです.
#include "iostream"
using namespace std;
int leng(int number)
{
int flag=0;
while(number)
{
number/=10;
flag++;
}
return flag;
}
int main()
{
int hour;
int minute;
cout << " :";
cin >> hour;
cout << endl << " :";
cin >> minute;
if((hour<=24 && hour>=0) && (minute>=0 && minute<=60))
{
char temp_hour[3],temp_minute[3];
if (leng(minute)<2)
{
sprintf(temp_minute,"0%d",minute);
}
else
{
itoa(minute,temp_minute,10);
}
if (leng(hour)<2)
{
sprintf(temp_hour,"0%d",hour);
}
else
{
itoa(hour,temp_hour,10);
}
system("del clock.bat");
system("echo schtasks /Delete /tn clock_alarm >> clock.bat");
char temp[300];
sprintf(temp,"echo schtasks /Create /tn clock_alarm /tr \"D:\\Works\\C++\\clock.exe\" /sc once /st %s:%s >>clock.bat",temp_hour,temp_minute);
system(temp);
system("echo pause >> clock.bat");
system("echo exit >> clock.bat");
system("start clock.bat");
}
return 0;
}
clockを補うexeのコード:
#include
using namespace std;
int main()
{
cout << "Time's up!";
return 0;
}
[新バージョン]
CLOCK_ALARM.CPP
#include
#include
#include
using namespace std;
int leng(int number)
{
int flag=0;
while(number)
{
number/=10;
flag++;
}
return flag;
}
int main()
{
int hour;
int minute;
a:int choice;
cout << " :1) 2) " << endl;
cin >> choice;
if (choice > 2 && choice < 1)
{
cin.clear();
cin.sync();
goto a;
}
switch (choice)
{
case 1: cout << " :";
cin >> hour;
cout << endl << " :";
cin >> minute;
break;
case 2: int minute_plus;
cout << " :";
cin >> minute_plus;
system("erase /q C:\\time.txt");
system("time /t >> c:\\time.txt");
char timenow[5];
ifstream infile;
infile.open("c://time.txt");
if(infile.is_open())
{
for(int i = 0;infile.good() && !infile.eof();i++)
{
infile >> timenow[i];
}
infile.close();
}
char* address[4];
address[0] = &timenow[0];
address[1] = &timenow[1];
address[2] = &timenow[3];
address[3] = &timenow[4];
hour = atoi(address[0]);
minute = atoi(address[2]);
minute = minute_plus + minute;
while (minute >= 60)
{
++hour;
minute = minute - 60;
}
break;
}
if((hour<=24 && hour>=0) && (minute>=0 && minute<=60))
{
char temp_hour[3],temp_minute[3];
if (leng(minute)<2)
{
sprintf(temp_minute,"0%d",minute);
}
else
{
_itoa_s(minute,temp_minute,10);
}
if (leng(hour)<2)
{
sprintf(temp_hour,"0%d",hour);
}
else
{
_itoa_s(hour,temp_hour,10);
}
system("del clock.bat");
system("echo schtasks /Delete /tn clock_alarm >> clock.bat");
char temp[300];
sprintf(temp,"echo schtasks /Create /tn clock_alarm /tr \"D:\\Works\\C++\\clock.exe\" /sc once /st %s:%s >>clock.bat",temp_hour,temp_minute);
system(temp);
system("echo pause >> clock.bat");
system("echo exit >> clock.bat");
system("start clock.bat");
}
return 0;
}
clock.cpp
#include
#include
#include
#pragma comment(lib,"winmm.lib")
using namespace std;
int main()
{
PlaySound(TEXT("D:\\Works\\C++\\clock\\7557.wav"), NULL, SND_FILENAME | SND_ASYNC);
cout << "Time's up!" << endl;
system("pause");
return 0;
}