質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

1回答

740閲覧

時間を表示するプログラムを作りましたが改良したいです。全く変わってもいいので時間を表示するプログラムをお願いします

aidesu4

総合スコア0

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2021/12/28 13:46

前提・実現したいこと

時間を表示するプログラムを作りました
わかりやすいように色々書いてます
全く変わってもいいので時間を表示するプログラムを作ってもらいたいです

該当のソースコード

#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <libgg.h>
#include <math.h>

void hari( pGC gw , int a , COLORREF c);//針呼び出し
void hari_short( pGC gw , int a , COLORREF c);//短針呼び出し
void memori( pGC gw , COLORREF c);//時計の目盛り呼び出し

struct GG_FONT{
int h ; //文字の高さ
int wi ;//文字の幅
int we;//文字の太さ(0~1000まで400が標準)
int bs ;//文字の傾き 1/10度単位
int fo ;//文字ベースの傾き1/10度単位
DWORD it ;//文字を傾けるならTRUE 傾けないならFALSE
DWORD ul ;//アンダーラインいるならTRUE いらないならFALSE
DWORD so ;//取り消し線いるならTRUE いらないならFALSE
COLORREF color;//色指定
LPCTSTR fontface;};//フォントの指定(フォント名を入れる)
#define clock_size 150 //時計のサイズ設定
#define clock_X 400 //時計の中心位置X座標
#define clock_Y 300 //時計の中心位置Y座標
#define mojiban_X 10 //デジタル時計の左上位置X
#define mojiban_Y 10 //デジタル時計の左上位置Y

#pragma comment( lib , "libgg.lib" )

int main( void )
{
pGC gw;
GG_FONT ff;
time_t mytime;
struct tm *ltime;
double mon , d , h , m , s , pai;//mon=月 d=日 h=時間 m=分 s=秒 pai=円周率
char *a;

GGSTART( gw , "時計" , 800 , 600 , 20 , 20 );//libgg起動 a = "0"; ff = gg_getFontEXT( 30, //文字の高さ 30,//文字の幅 500,//文字の太さ(0~1000まで400が標準) 0,//文字の傾き 1/10度単位 0,//文字ベースの傾き1/10度単位 FALSE ,//文字を傾けるならTRUE 傾けないならFALSE FALSE ,//アンダーラインいるならTRUE いらないならFALSE FALSE ,//取り消し線いるならTRUE いらないならFALSE RGB(0,0,0) ,//色指定 "UD デジタル 教科書体 N-B");// while(1){ gg_DrawStart( gw ); gg_drawCircle( gw , clock_X , clock_Y , clock_size , RGB(0,0,0) ); memori(gw,RGB(0,0,0)); time( &mytime ); ltime = localtime( &mytime ); s = ltime->tm_sec; m = ltime->tm_min; h = ltime->tm_hour *5 + m/12; d = ltime->tm_mday; mon = ltime->tm_mon + 1; hari(gw,s,RGB(255,0,0)); hari(gw,m,RGB(0,255,0)); hari_short(gw,h,RGB(0,255,255)); sprintf(a,"%d月%d日%d時%d分%d秒",(int)mon,(int)d,ltime->tm_hour ,(int)m,(int)s); gg_putstr( gw, mojiban_X , mojiban_Y , a , ff); gg_DrawEnd(gw); gg_clrScr( gw ); Sleep(30); } }

void hari(pGC gw, int a , COLORREF c)
{
double pai;
pai=3.14159265359;
gg_moveto(gw,clock_X,clock_Y);
gg_lineto(gw, clock_size*-cos(pai/2+apai/30)+clock_X , clock_size-sin(pai/2+a*pai/30)+clock_Y,c);
}

void hari_short(pGC gw, int a , COLORREF c)
{
double pai;
pai=3.14159265359;
gg_moveto(gw,clock_X,clock_Y);
gg_lineto(gw, clock_size2/3-cos(pai/2+apai/30)+clock_X , clock_size2/3*-sin(pai/2+a*pai/30)+clock_Y,c);
}

void memori( pGC gw , COLORREF c)
{
double pai;
int i,a;
pai=3.14159265359;
i=0;
while(i<12){
a=i5;
gg_moveto(gw,clock_size
-cos(pai/2+apai/30)+clock_X , clock_size-sin(pai/2+apai/30)+clock_Y);
gg_lineto(gw, (clock_size-20)
-cos(pai/2+apai/30)+clock_X , (clock_size-20)-sin(pai/2+a*pai/30)+clock_Y,c);
i++;
}
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

episteme

2021/12/28 14:03

> 時間を表示するプログラムを作りました...時間を表示するプログラムを作ってもらいたいです わけがわからん。
luuguas

2021/12/28 16:27

コードは ```C++ (ここにコードを記述) ``` で囲んでください。
cx20

2021/12/28 21:57

以下の情報が無いと回答のしようが無いかと・・ ・表示したい時計の種類は?(アナログ時計 or デジタル時計) ・今、何が問題なのか?(エラーが出るのか描画がされないのか等) ・使用しているグラフィックスライブラリはどこで入手できるのか? こちらで使用されているライブラリと同じものでしょうか・・ https://teratail.com/questions/361723
dodox86

2021/12/29 03:27

> 全く変わってもいいので時間を表示するプログラムを作ってもらいたいです この丸投げ感はどうだ、と。
wagashi_157

2022/01/02 14:10

C++専門であり, C言語のことはあまり詳しくないため参考になるかは分かりませんが, 時計をどのように表示させたいのですか? また, 実装にあたっての条件は何ですか? どのコードにどのような工夫をしたのですか(あるいは試みたのですか)? それらを詳しく記述すると良いと思います。 ライブラリ関数がMarkdownで入力されているため, とても分かりづらいです。質問入力画面にMarkdownの正しい記法があるのでそれを参照してみてはいかがでしょうか。
guest

回答1

0

bat

1@REM clock.bat 2time

どうぞお納めください。

投稿2021/12/30 05:13

majiponi

総合スコア1720

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問