还不够好 发表于 2020-10-27 22:48:47

报错:显示int对象不可调用

year = int(input())
m = int(input())
q = int(input())

if m == 1:
    m = 13
    year -= 1
elif m == 2:
    m = 14
    year -= 1
   
j = year / 100
k = year % 100

h =( q + 26(m + 1)+ k + 0.25 *( k + j) + 5 * j) % 7
if h == 0:
    result = "星期六"
elif h == 1:
    result = "星期天"
elif h == 2:
    result = "星期一"
elif h == 3:
    result = "星期二"
elif h == 4:
    result = "星期三"
elif h == 5:
    result = "星期四"
elif h == 6:
    result = "星期五"
print (year,"年",m,"月",q,"日是",result)

还不够好 发表于 2020-10-27 22:50:10

本帖最后由 还不够好 于 2020-10-27 22:53 编辑

用以下公式可以求出一周的第几天

公式h =( q + (26(m + 1))/10+ k + 0.25 *( k + j) + 5 * j) % 7
h:一周的星期几(0:星期六,1:星期天,2:星期一,3:星期二,4:星期三,5:星期四,6:星期五)
q:是一个月的哪一天
m:是月份(3:三月,4:十月,…,12:十二月),一月和二月都是按照前一年的13月和14月来计数的。
j:是世纪数,即year/100
k:是一个世纪的某一年,即year%100

编写程序,输入一个日期的年、月、日,显示它是一周的星期几。
输入格式:

输入年、月、日
输出格式:

输出是星期几
输入样例:

在这里给出一组输入。例如:

2020
10
27

输出样例:

在这里给出相应的输出。例如:

2020 年 10 月 27 日是 星期二

还不够好 发表于 2020-10-27 22:51:39

本帖最后由 还不够好 于 2020-10-27 22:53 编辑

公式h =( q + (26(m + 1))/10+ k + 0.25 *( k + j) + 5 * j) % 7

kogawananari 发表于 2020-10-27 22:53:48

第15行 26(m + 1) 乘号掉了

昨非 发表于 2020-10-27 23:15:26

本帖最后由 昨非 于 2020-10-27 23:18 编辑

input少参数吧
year = int(input("请输入year:"))
这样就没问题

永恒的蓝色梦想 发表于 2020-10-28 00:04:10

year = int(input())
m = int(input())
q = int(input())

if m == 1:
    m = 13
    year -= 1
elif m == 2:
    m = 14
    year -= 1
   
j = year / 100
k = year % 100

h =(q + 26 * (m + 1) + k + 0.25 * (k + j) + 5 * j) % 7

if h == 0:
    result = "星期六"
elif h == 1:
    result = "星期天"
elif h == 2:
    result = "星期一"
elif h == 3:
    result = "星期二"
elif h == 4:
    result = "星期三"
elif h == 5:
    result = "星期四"
elif h == 6:
    result = "星期五"

print(year,"年",m,"月",q,"日是",result)
页: [1]
查看完整版本: 报错:显示int对象不可调用