当前位置:首页 » 《我的小黑屋》 » 正文

学校头歌作业3_1中国古代数学问题(头歌作业[Python])

12 人参与  2024年04月03日 13:01  分类 : 《我的小黑屋》  评论

点击全文阅读


在CSDN上补充前几期的内容

第1关:鸡兔同笼

"""在同一行内输入用空格分隔的两个整数,代表头和脚的数量,计算并输出笼中各有多少只鸡和兔,如无解则输出“Data Error!”,函数无返回值。输入:35 94输出:有23 只鸡,12 只兔输入:100 5输出:Data Error!"""head,feet = map(int, input().split()) #读入以空格分隔的两个整数,表示头和脚的数量##############Begin#####################m = (4*head - feet)/2n = (feet - 2 * head)/2if (round(m-int(m),4)) > 0 and  (round(m-int(n),4)) >0:    print("Data Error!")elif m < 0 or n < 0 :    print("Data Error!")else:    m = int(m)    n = int(n)    print(f"有{m}只鸡,{n}只兔")##############End#####################

第2关:物不知数

"""一些物品,不知道有多少个,3个3个数的话,还多出2个;5个5个数则多出3个;7个7个数也会多出2个。输入一个正整数,从小到大依次输出所有不超过输入数字且满足条件的物品数量,有多个答案时每行输出一个。例如输入:200输出:23128"""n = int(input())##############Begin#####################z = 0for i in range (n+1):    if i % 3 == 2 and i % 5 == 3 and i % 7 == 2 :        z += 1        print(i)if z == 0:    print("No solution!")##############End#####################

第3关:二鼠打洞

"""有一堵十尺厚的墙,两只老鼠从两边向中间打洞。大老鼠第一天打洞一尺,小老鼠也是打洞一尺。大老鼠每天的打洞进度是前一天的一倍,小老鼠每天的进度是前一天的一半。计算并输出它们几天可以相逢,相逢时各打了多少尺。输入格式:输入1 个整数,代表墙的厚度,单位为尺输出格式:第一行输出1 个整数,表示相遇时所需的天数第二行输出2 个浮点数,分别为小鼠和大鼠打洞的距离,单位为尺,保留小数点后1 位数字。"""wall = int(input()) #墙壁的厚度rat, mouse, day, time = 1, 1, 0, 1 #大鼠速度、小鼠速度、天数、当天工作时长(1表示工作一整天)distance_of_rat, distance_of_mouse = 0, 0 #大鼠路程、小鼠的路程while wall > 0:################Begin#######################        wall = wall - rat - mouse       if wall  <=0:           wall = wall + rat + mouse        x = wall /(rat + mouse)        distance_of_rat +=   rat * x        distance_of_mouse +=  mouse * x        wall = wall - rat - mouse        day += 1             else:        distance_of_rat +=   rat        distance_of_mouse +=  mouse        day += 1         rat = 2 * rat        mouse = 1/2 * mouse################End#######################print(day)print(round(distance_of_mouse, 1), round(distance_of_rat, 1)) #使用round函数来保留小数点后一位

第4关:宝塔上的琉璃灯

"""有一座八层宝塔,每一层都有一些琉璃灯,每一层的灯数都是上一层的二倍,已知共有765 盏琉璃灯,计算并输出每层各有多少盏琉璃灯。输出为8行,每行都是一个正整数,从上往下数字依次增大,每个数字代表本层宝塔上的琉璃灯数目。"""    #################Begin#############################from itertools import countfor first in count(1,1):    floors = [first*(2**i) for i in range(8)]    if sum(floors) == 765:        for index,value in enumerate(floors,start=1):            print(value)        break    #################End#############################

第5关:李白买酒

"""大诗人李白,提着酒壶,从家里出来,酒壶中有酒若干。他边走边唱:无事街上走,提壶去买酒,遇店加一倍,见花喝一斗,五遇店和花,喝光壶中酒,计算并输出壶中原有酒几斗?"""#解题思路:让李白按路线逆向走一遍wine =0  #最后酒壶空了################Begin#################for i in range(5):    #遇到鲜花    wine = wine +1    #遇到酒店    wine = wine / 2################End#################print(wine) #原来有多少斗酒


点击全文阅读


本文链接:http://zhangshiyu.com/post/90012.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1