hnu计算机与人工智能概论答案3.15

这篇具有很好参考价值的文章主要介绍了hnu计算机与人工智能概论答案3.15。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 终于肝完了!有一说一,这一次难度肉眼可见的提升,终于明白程序员为什么会秃顶了(头发真的禁不住薅啊),祝大家好运!

第1关:循环结构-while与for循环

第1题 编程计算如下公式的值1^2+3^2+5^2+...+995^2+997^2+999^2并输出结果

第2题 用while语句完成程序逻辑,求如下算法可以求根号x的近似值。(例如,x3时,算法输出约为1.7320508)。

算法如下:

  1. 输入x,若x为负数,则输出“无实数解”,算法结束;

  2. g=x/2

  3. 通过如下公式计算误差值,如果 ∣x−g∗g∣<10−6,输出g,算法结束;

  4. 否则,将(g+x/g)/2作为新的猜测值,仍记为g

  5. 重复步骤3和4

第3题:

用for循环完成下列程序,计算3位数的水仙花数 水仙花数是三位整数,且各位数字的立方之和等于该数,比如,因为

hnu计算机与人工智能概论答案3.15,python

所以153是水仙花数。

 第一关还是简单的热热身,熟悉for与while的基本用法,下一关!

from math import *
########## 第1题 ##############
i = 1 # 当前计算的值
s = 0 # 计算出来的和
# 第1题
########### begin ##########
while i<1000:
    s += i**2
    i=i+2
######### end     ####
print(s)

########## 第2题 ##############
x = int(input())

if x<0:
    print('无实数解')
else:
    g = x/2
    #######begin##############
    # 请输入while循环控制语句
    while abs(x-g*g)>pow(10,-6):
        g=(g+x/g)/2
    #######end#################   
    print("%.4f" %g)


########## 第3题 ##############
#计算并输出三位数内的水仙花数
#判断一个三位数是否是水仙花数,如果是输出1,否则输出0
def isflower(x):
    # 函数说明:
    #参数 x为一个3位数
    #返回值为1或0
####### Begin #########
    a,b,c=x//100,x//10%10,x%10
    t=(a**3)+(b**3)+(c**3)
    if t==x:
        return 1
    else:
        return 0
####### End ########

#函数调用求三位数内的水仙花数并输出    
####### Begin #########
# 请在此输入for循环表达式
for i in range(100,1000):
    if isflower(i)==1:
        print(i)
####### End ########

第2关:循环嵌套-特殊图形的输出

第1题:从键盘输入m行n列,在屏幕上输出m行n列的*行图案 例如输入6,7 输出为:

hnu计算机与人工智能概论答案3.15,python

第2题:从键盘输入m行,在屏幕上输出m行的直角图案

例如输入:8 输出为:

hnu计算机与人工智能概论答案3.15,python

第3题:从键盘输入m行,在屏幕上输出m行的等腰三角形图案

例如输入9 输出为:

hnu计算机与人工智能概论答案3.15,python

第二关已经稍微有一点难度了,常规做法是从头到尾双重循环,当然,也可逃课:

例如,第一题也可以这么写:

m,n = eval(input())
print(('*'*n+'\n')*m)

第二题也可以这么写:

n = eval(input())
for i in range(n):
    print('*'*(2*i-1))

接下来是双重循环的所有代码:

#第一题:从键盘输入m行n列,在屏幕上输出m行n列的*行图案
m,n= eval(input())
#请在下面编写代码
# ********** Begin ********** #
for i in range (0,m):
    for j in range (0,n):
        print('*',end='')
    print('',end="\n")

# ********** End ********** #
    
#第二题:从键盘输入m行,在屏幕上输出m行的直角图案
m=eval(input())
#请在下面编写代码
# ********** Begin ********** #
for i in range (0,m):
    for j in range (0,2*i+1):
        print('*',end='')
    print('',end="\n")

# ********** End ********** #

#第三题:从键盘输入m行,在屏幕上输出m行的等腰三角形图案,试着用函数的方式来实现图形的绘制
def drawPic(n):
    #函数说明
    #参数n代表图案的行数
    #函数无返回值
#请在下面编写代码完成
# ********** Begin ********** #
    for i in range (0,m):
        for j in range (0,m-i-1):
            print(' ',end='')
        for j in range (0,2*i+1):
            print('*',end='')
        print('',end="\n")


# ********** End *********** #
m=eval(input())
drawPic(m)

第3关:循环综合-特殊数问题

第1题-斐波那契数列

在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)斐波那契 请完成求第n项斐波那契数的程序并输出结果 输入输出格式如下: 输入:5 输出:5

第2题-条件数的显示

while语句完成程序,输出0N之间的所有同时为235的倍数的数。 输入输出格式如下:用空格作为分隔符 输入:100 输出:0 30 60 90

第3题-素数问题

完成程序,输出输出0N之间的素数。 输入输出格式如下:用空格作为分隔符

输入:10 输出:2 3 5 7

第4题-最大公约数与最小公倍数

完成程序,求最大公约数计算。从键盘接收两个整数,编写程序求出这两个整数的最大公约数和最小公倍数。(最大公约数可用辗转相除法求,最小公倍数则用两数的乘积除以最大公约数) 输入输出格式如下: 输入:12,18 输出: 最大公约数:6 最小公倍数:36

第三关对我们的数学提出了要求。第一题斐波那契数列,如果用F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)来直观表达,我们可以用列表递归的方式表达:

#用递归的方法,加上for循环,把每次循环产生的新项增加到数列最后,最后一次性输出list
def fubonacci3(n):
    list = []
    for i in range(n):
        if i == 0 or i == 1:
            list.append(1)
        else:
            list.append(list[i-2] + list[i-1])
    return list

而最简单的方式就是不断的两个变量同时赋值,形成斐波那契数列。

第五题就是从小到大不断的寻找公约数,然后不断的赋值给它,当它不再被赋值时就是最大公约数

#第一题 
#定义一个求第n项斐波那契数的函数 
def fibNumber(n) :
    #函数说明
    #参数n为第n项斐波那契数,第1,2项为1,1
    #返回第n项值 
    #********** Begin ********** #
    a,b = 0,1
    for i in range (n):
        a,b = b,a+b
    return a
    #********** End ********** #
#请不要修改下面的代码
m = int(input())
print(fibNumber(m)) 
print(20*'*'+'\n',end='') 
 
#第二题:可试着用非函数的方式写程序,注意输出数据格式  
n =eval(input())      
# 请在下面编写代码
# ********** Begin ********** #
i=0
while i<=n:
    if i%5==0 and i%3==0 and i%2==0:
        print (i,end=' ')
    i=i+10

# ********** End ********** #
print('\n'+20*'*'+'\n',end='') 
  
#第三题 
#定义一个判断x是否是素数的程序
def isPrime(x):
    #函数说明:
    #参数x为>=2的整数
    #返回值为1或0    
    # ********** Begin ********** #
    for i in range(2,x):
        if x%i ==0:
            return 0
    return 1
    # ********** End ********** #
    
# 请不要修改下面的代码
N = int(input())
#求0-N之间的素数并输出,注意数据的输出格式
# ********** Begin ********** #
for i in range (2,N+1):
    if isPrime(i)==1:
        print(i,end=' ')
# ********** End ********** #
print('\n'+20*'*'+'\n',end ='') 
           
#第四题 
#定义一个求两个数的最大公约数的函数
def gcd(a,b):
    #函数说明
    #参数a,b为两个整数,并且a>b
    #返回两个数的最大公约数
    # ********** Begin ********** #    
    for i in range(1,max(a,b)+1):
        if a%i==0 and b%i==0:
            j = i
    return j
    # ********** End ********** #
    # 请不要修改下面的代码  
m,n = eval(input())
#函数调用求最大公约数保存在gcdnum中
# ********** Begin ********** #
gcdnum = gcd (m,n)
# ********** End ********** #
print("最大公约数:%d"% gcdnum)
print("最小公倍数:%d"%((m*n)/gcdnum))   
print(20*'*',end='')   

第4关:循环综合-数列问题

第1题----求π/4

用循环的方式求π/4≈ 1-1/3+1/5-1/7+......直到最后一项绝对值小于le−6(即10−6)为止,结果保留小数点后10位

第2题----数列和

完成程序,求:1-3!+5!-7!......(-1)n-1(2n-1)!,求前n的项的和。 输出格式如下: 输入:4 输出:数列前4项的和为-4925

第3题----求sin(X)

完成程序,从键盘输入x的值,求

hnu计算机与人工智能概论答案3.15,python

直到最后一项绝对值小于le−7(即10−7)为止(注:x为弧度值),结果保留小数点后10位。 说明:输入角度值,再转换成弧度值 输出格式如下: 输入:30 输出:output=0.4999999919

 第四关 个人感觉第四关的难点在于初值的赋值以及while语句中的前后顺序,弄清楚了就如同砍瓜切菜。

#第1题:用循环的方式求π/4≈ 1-1/3+1/5-1/7+......直到最后一项绝对值小于1e−6(即10−6)为止,保留小数点后10位
import math
# ********** Begin ********** #
S=0
i=1
t=1
flag=1
while abs(i)>pow(10,-6):
    S+=i
    t+=2
    flag=-flag
    i=(1/t)*(flag)
# ********** End ********** #
# 请不要修改下面的代码    
print("数列和为:%.10f" % S )    
#0.7853986634

#第2题求:1-3!+5!-7!......(-1)n-1(2n-1)!,求前n的项的和 
#函数定义求前n项数列和
def sumSequ(n):
    #函数说明
    #参数n为数列前n项
    #返回前n项的和
    # 请在下面编写代码
    # ********** Begin ********** #
    i=1;
    t=1;
    Sum=0;
    flag=1;
    while i<=n :
        Sum=Sum+t*flag
        i+=1
        t=t*(2*i-2)*(2*i-1)
        flag=-flag
    return Sum
    # ********** End ********** #
# 请不要修改下面的代码
m =int(input()) #从键盘输入 m值
s = sumSequ(m)  #函数调用求数列和
print("数列前%d项的和为%d"%(m,s))
 
#第3题
from math import * 
def calSinx(x):
    #函数说明:
    #参数x为弧度值
    #返回数列和的结果,保留小数点后10位
    #请在下面编写代码
    # ********** Begin ********** #   
    S=0
    i=x
    t=1
    while abs(i)>pow(10,-7):
        S += i
        t+=2
        i=-(i*x*x)/((t-1)*t)
    return S
    # ********** End ********** #
# 请不要修改下面的代码
theta= eval(input()) #输入角度值
x =radians(theta)
Sx = calSinx(x)
print("output=%.10f"%(Sx)) 

第5关:循环综合-天天向上的力量

任务一:俗语“三天打鱼两天晒网”,一年下来能力值又会是多少呢?请补全代码完成程序编写 #三天打鱼两天晒网 dayup, dayfactor = 1.0, 0.01

任务二:如果按工作日5天学习,周末2天休息每天相比前一天下降1%,工作日要努力到什么程度,一年后的水平才能与每天努力1%取得的效果一样呢?请补全代码完成程序编写。以0.001为dayfactor的增量值。

任务三:尽管每天坚持,但人的能力发展并不是无限的,它符合特定模型,假设能力增长符合以下模型:以7天为一周期,连续学习3天能力值不变,但从第4天开始至第7天每天能力增长为前一天的1%,如果7天中有一天间断学习,则周期从头计算,请编写程序,如果初始能力为1,固定每10天休息一天, 365天后能力值是多少,请补全代码完成程序编写。

第五关 终于来到了最后一关,这一关绝对是我目前遇到的最难一关。先不说绕来绕去的逻辑,光是这大段的文字已经能让人头痛一会了,这题光是题干我都读了半个小时。我来帮大家梳理一下:

任务一:做三休二,效率固定,较为简单

任务二:做五休二,这里注意工作日的工作效率为变量,而休息日的遗忘效率为不变量,注意区别。变量范围记得一定是小于等于而非直接等于,可能有微小误差导致循环停不下来。

hnu计算机与人工智能概论答案3.15,python

 上面是错误示范!!!双重循环+等于才停止的双重buff直接给CPU干烧了!

任务三:做九休一,又遇到每七天一个轮回,通俗的来说遇到七的倍数与十的倍数都要避让,虽然这题这样做做对了,但是我还是有一个疑问,休息的时候不会遗忘吗?hnu计算机与人工智能概论答案3.15,python文章来源地址https://www.toymoban.com/news/detail-715145.html

from math import *

#任务一:三天打鱼两天晒网
dayup, dayfactor = 1.0, 0.01
  #请在下面编写代码
  # ********** begin ********** #         
i=0
while i<365:
    dayup = dayup*pow((1+dayfactor),3)*pow((1-dayfactor),2)
    i+=5
  # ********** End ********** # 
   # 请不要修改下面的代码   
print("{:.2f}.".format(dayup)) 


#任务二:天天向上的力量
import math
dayup, dayfactor = 1.0, 0.01
ddup= math.pow((dayup+dayfactor),365)
#print("天天向上的力量: {:.2f}.".format(ddup)) 
    #请在下面编写代码
# ********** Begin ********** #
def dayup(df):
    dayup = 1
    for i in range(365):
        if i % 7 in [6, 0]:
            dayup = dayup * (1 - 0.01)
        else:
            dayup = dayup * (1 + df)
    return dayup
dayfactor = 0.01
while dayup(dayfactor) <= ddup:
    dayfactor += 0.001
# ********** End ********** #        
    # 请不要修改下面的代码   
print("{:.4f}.".format(dayfactor))


#任务三:天天向上续
from math import *
Restday = 10 #休息10天, 
dayup, dayfactor = 1.0, 0.01 #初始值
 #请在下面编写代码
# ********** Begin ********** #
for i in range(365):
    if 0<i%10<=3 or 0<i%7<=3:
        dayup=dayup
    else:
        dayup=1.01*dayup

# ********** End ********** #        
    # 请不要修改下面的代码  
    
print("{:.2f}".format(dayup))#

到了这里,关于hnu计算机与人工智能概论答案3.15的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 探索人工智能 | 计算机视觉 让计算机打开新灵之窗

    计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。 计算机视觉既是工程领域,也是科学领域中的一个富

    2024年02月14日
    浏览(53)
  • 深入探索人工智能与计算机视觉

    在当今数字化时代,人工智能(AI)和计算机视觉(CV)作为两大前沿技术,正以惊人的速度改变着我们的生活。本文将深入探讨人工智能与计算机视觉的关系、应用以及未来发展方向。 1. 人工智能与计算机视觉的关系 人工智能是一门涵盖众多技术领域的学科,旨在使计算机

    2024年04月14日
    浏览(60)
  • 【人工智能课程】计算机科学博士作业一

    模型拟合:用深度神经网络拟合一个回归模型。从各种角度对其改进,评价指标为MSE。 掌握技巧: 熟悉并掌握深度学习模型训练的基本技巧。 提高PyTorch的使用熟练度。 掌握改进深度学习的方法。 数据集下载: Kaggle下载数据: https://www.kaggle.com/competitions/ml2022spring-hw1 百度云

    2024年01月23日
    浏览(60)
  • 【人工智能课程】计算机科学博士作业三

    来源:李宏毅2022课程第10课的作业 图片攻击是指故意对数字图像进行修改,以使机器学习模型产生错误的输出或者产生预期之外的结果。这种攻击是通过将微小的、通常对人类难以察觉的扰动应用于输入图像来实现的。图片攻击是对深度学习系统中的鲁棒性和安全性的一种测

    2024年03月16日
    浏览(75)
  • 人工智能与计算机辅助决策的技术融合

    人工智能(Artificial Intelligence, AI)和计算机辅助决策(Computer-Aided Decision, CAD)是两个不同的领域,但它们之间存在密切的联系和相互作用。人工智能主要关注于模拟和创造人类智能的机器,包括学习、理解自然语言、视觉识别、推理和决策等方面。而计算机辅助决策则关注于利用

    2024年02月22日
    浏览(61)
  • 探索人工智能 | 智能推荐系统 未来没有人比计算机更懂你

    智能推荐系统(Recommendation Systems)利用机器学习和数据挖掘技术,根据用户的兴趣和行为,提供个性化推荐的产品、内容或服务。 智能推荐系统是一种利用机器学习和数据分析技术的应用程序,旨在根据用户的兴趣、偏好和行为模式,向其推荐个性化的产品、服务或内容。

    2024年02月13日
    浏览(51)
  • 人工智能在计算机视觉中的应用与挑战

    引言 计算机视觉是人工智能领域的一个重要分支,旨在让计算机能够像人一样理解和解释视觉信息,实现图像和视频的自动识别、理解和分析。计算机视觉技术已经在许多领域产生了深远的影响,如人脸识别、自动驾驶、医学影像分析等。本篇博客将深入探讨人工智能在计算

    2024年02月14日
    浏览(62)
  • 阶段五:深度学习和人工智能(学习人工智能的应用领域,如自然语言处理,计算机视觉等)

    Python是人工智能领域最流行的编程语言之一,它具有简单易学、功能强大、库丰富等优点,因此在自然语言处理、计算机视觉等领域得到了广泛应用。 自然语言处理 自然语言处理是人工智能领域的一个重要分支,它主要研究如何让计算机理解和处理人类语言。Python在自然语

    2024年02月04日
    浏览(80)
  • 读十堂极简人工智能课笔记04_计算机视觉

    3.2.3.1. 应该发现真正的边缘,而尽量避免错报 3.2.4.1. 应该正确地找出边缘的确切位置 3.2.5.1. 每条实际的边缘应该检测为一条边缘,而不是多条边缘 4.7.5.1. 有数以百万计的几乎任何种类的图像例子 4.7.7.1. 神经网络自己就能完成这一切

    2024年02月19日
    浏览(50)
  • 吉大计算机、软件、人工智能学院导师研究方向和招生信息整理

    本人为吉大计算机学院在校研究生,初复试期间大家需要了解导师研究方向和联系导师,所以我整理了吉大计算机、软件、人工智能学院的导师们的信息,供大家参考。以下招生信息主要为计算机、软件学院的导师们,人工智能学院的导师可以在人工智能学院官方找:http:/

    2024年02月13日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包