
ツェラーの公式を使い、年、月、日にちから曜日を表示するプログラムを作りました。
#include<stdio.h>
main()
{
int y,m,d,x,z;
printf("年、月、日にちの順に入力してください→");
scanf("%d%d%d",&y,&m,&d);
if(m<2){
m=m+12;
y=y-1;
}
x=y+y/4-y/100+y/400+(13*m+8)/5+d;
z=x%7;
switch(z){
case 0:
printf("日曜日\n");
break;
case 1:
printf("月曜日\n");
break;
case 2:
printf("火曜日\n");
break;
case 3:
printf("水曜日\n");
break;
case 4:
printf("木曜日\n");
break;
case 5:
printf("金曜日\n");
break;
case 6:
printf("土曜日\n");
break;
}
}
これを基本に、1582年10月5日以前の入力があったとき「エラー」と表示するにはどうすればいいですか?
解答お願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>これを基本に、1582年10月5日以前の入力があったとき「エラー」と表示するにはどうすればいいですか?
以前「だけ」のチェックでしたら、
if( ( y * 10000 + m * 100 + d ) <= 15821005 ){
printf( "エラー\n" );
return( 255 );
}
これでよろしいのでは・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
10個出力で改行したいのですが...
-
c言語でAからZまでを表示する...
-
(C言語)めちゃくちゃな値にな...
-
printf( " %2d", p * q );
-
教えて!数字から年月に変換し...
-
(C言語)西暦年月日を入力して...
-
C言語習いはじめです
-
scanfに文字が入力されたときに...
-
%P と %X の違い
-
カレンダーのプログラムについて
-
Visual Sutdio 2017 でのC言語...
-
現在時刻の表示について
-
printf で二進表示を行いたい。
-
5×5の転置行列を求めるC言語の...
-
4の倍数を論理演算で表す。。
-
LU分解法のピボット選択機能実...
-
C言語での、年複利の計算方法...
-
文字を動かしたい
-
プログラミング C言語 課題でプ...
-
Cでオセロゲームプログラム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
c言語でAからZまでを表示する...
-
(C言語)めちゃくちゃな値にな...
-
コマンドラインに出力した文字...
-
コンパイルエラーについて
-
コマンドプロンプトがすぐ消える
-
勝率をプログラムに
-
テキストカーソル位置の取得
-
三角形の判別
-
【C言語教えてください】sin波...
-
4の倍数を論理演算で表す。。
-
C言語で、「自然数nを入力し、n...
-
入力したお金の金額からお札の...
-
cshの文字列操作(0埋め)
-
switch分のケースを範囲数?に...
-
scanfに文字が入力されたときに...
-
プログラミングについての質問です
-
unsigned int型について
-
ダブルポインタで2次元配列を作成
-
円の面積を求めるプログラミン...
おすすめ情報