2017-10-26 8 views
0

月に対応する番号を入力すると、その月の曜日を表示するプログラムを作成しようとしています。 Ex。 1 = 1月、 "31"と印刷されます これは私の持っているものです。私はこの1ヶ月をちょっと過ぎていますが、私は何をしているのか分かりません。静的番号を使用して月を表示するプログラムを作成しようとしています

def calcDaysInMonth(): 
(list,(range,(1, 12))) 

a = raw_input() 
int(a) 

jan = 1

feb = 2 

mar = 3 

apr = 4 

may = 5 

june = 6 

july = 7 

aug = 8 

sept = 9 

octo = 10 

nov = 11 

dec = 12 

if jan is True: 
print("31") 
+0

それは、少なくとも –

答えて

0

ありがとうございます。 私のクラスには、今行っていたことに対する回答があります。何が欲しかった:

month = int(raw_input()) 
day = 0 

def calcDays(month): 
    if month ==1: 


days = 31 
     print 31 
    if month==2: 
     days = 28 
     print 28 
    if month == 3: 
     days = 31 
     print 31 
    if month == 4: 
     days = 30 
     print 30 
    if month==5: 
     days = 31 
     print 31 
    if month ==6: 
     days = 30 
     print 30 
    if month==7: 
     days = 31 
     print 31 
    if month ==8: 
     days = 31 
     print 31 
    if month==9: 
     days = 30 
     print 30 
1

文句を言わないあなたは正しい結果を得るのを助けます。 2月の閏年は通常と異なるためです。そう、あなたがしている(

$Year = 2017 
$month = 08` 

echo cal_days_in_month(CAL_GREGORIAN, (int)$month, $Year); 
+0

構文的に正しいことを確認して、インデントを適切にコードブロックをフォーマットしてください。この元の質問で使用される言語に適合しない(パイソン) – Simon

0
あなたは aへの入力を割り当てているが、あなたは決して aの値をチェックしていないしていると、印刷すべきかを決定するためにそれを使用しているので、あなたのコードが動作しない理由がある

を使用あなたはこのような何かを探している

単に)janと呼ばれる変数に整数、febなどを割り当てる:

a = int(raw_input()) 

if a == 1: 
    print("31 days") 
elif a == 2: 
    print("28 days") 

# just repeat with elif until december/12 

あなたはに辞書でそれを巧妙な取得しようとすることができ月から日まで何かをマップしていますが、実際にはもっと賢明な解決策は次のようなものになります。

2月にはうるう年の猶予日数が異なるため、calendar.monthrangeを使用して任意の年の月の日数:

from calendar import monthrange 

year = 2017 

a = int(raw_input()) 

num_days = monthrange(year, a)[1] 

print("{} days".format(num_days)) 
関連する問題